comparison liboctave/array/Array.h @ 21229:a83e7a384ee0

create and install a subset of config.h in octave-config.h * mk-octave-config-h.sh: New file. * Makefile.am (EXTRA_DIST): Add mk-octave-config.h.sh to the list. (octinclude_HEADERS): Add octave-config.h to the list. (octave-config.h): New rule. * common.mk (do_subst_config_vals, do_subst_cross_config_vals): Don't substitute unused ENABLE options. * configure.ac: Note the reason for using oct-conf-post.in.h. Add OCTAVE_ prefix to ENABLE_BOUNDS_CHECK ENABLE_ATOMIC_REFCOUNT, ENABLE_64, ENABLE_OPENMP, and ENABLE_FLOAT_TRUNCATE in calls to AC_DEFINE. Change all uses. * oct-conf-post.in.h: Define HAVE_OCTAVE_DEPRECATED_ATTR instead of HAVE_ATTR_DEPRECATED. Likewise for HAVE_ATTR_NORETURN and HAVE_ATTR_UNUSED. Change all uses.
author John W. Eaton <jwe@octave.org>
date Mon, 08 Feb 2016 17:30:29 -0500
parents 538b57866b90
children 1473547f50f5
comparison
equal deleted inserted replaced
21228:77a622392714 21229:a83e7a384ee0
394 { return elem (i, dim2 ()*k+j); } 394 { return elem (i, dim2 ()*k+j); }
395 395
396 T& elem (const Array<octave_idx_type>& ra_idx) 396 T& elem (const Array<octave_idx_type>& ra_idx)
397 { return Array<T>::elem (compute_index_unchecked (ra_idx)); } 397 { return Array<T>::elem (compute_index_unchecked (ra_idx)); }
398 398
399 #if defined (ENABLE_BOUNDS_CHECK) 399 #if defined (OCTAVE_ENABLE_BOUNDS_CHECK)
400 T& operator () (octave_idx_type n) { return checkelem (n); } 400 T& operator () (octave_idx_type n) { return checkelem (n); }
401 T& operator () (octave_idx_type i, octave_idx_type j) 401 T& operator () (octave_idx_type i, octave_idx_type j)
402 { return checkelem (i, j); } 402 { return checkelem (i, j); }
403 T& operator () (octave_idx_type i, octave_idx_type j, octave_idx_type k) 403 T& operator () (octave_idx_type i, octave_idx_type j, octave_idx_type k)
404 { return checkelem (i, j, k); } 404 { return checkelem (i, j, k); }
428 { return xelem (i, j, k); } 428 { return xelem (i, j, k); }
429 429
430 crefT elem (const Array<octave_idx_type>& ra_idx) const 430 crefT elem (const Array<octave_idx_type>& ra_idx) const
431 { return Array<T>::xelem (compute_index_unchecked (ra_idx)); } 431 { return Array<T>::xelem (compute_index_unchecked (ra_idx)); }
432 432
433 #if defined (ENABLE_BOUNDS_CHECK) 433 #if defined (OCTAVE_ENABLE_BOUNDS_CHECK)
434 crefT operator () (octave_idx_type n) const { return checkelem (n); } 434 crefT operator () (octave_idx_type n) const { return checkelem (n); }
435 crefT operator () (octave_idx_type i, octave_idx_type j) const 435 crefT operator () (octave_idx_type i, octave_idx_type j) const
436 { return checkelem (i, j); } 436 { return checkelem (i, j); }
437 crefT operator () (octave_idx_type i, octave_idx_type j, 437 crefT operator () (octave_idx_type i, octave_idx_type j,
438 octave_idx_type k) const 438 octave_idx_type k) const
450 { return elem (ra_idx); } 450 { return elem (ra_idx); }
451 #endif 451 #endif
452 452
453 // Fast extractors. All of these produce shallow copies. 453 // Fast extractors. All of these produce shallow copies.
454 // Warning: none of these do check bounds, unless 454 // Warning: none of these do check bounds, unless
455 // ENABLE_BOUNDS_CHECK is defined! 455 // OCTAVE_ENABLE_BOUNDS_CHECK is defined!
456 456
457 //! Extract column: A(:,k+1). 457 //! Extract column: A(:,k+1).
458 Array<T> column (octave_idx_type k) const; 458 Array<T> column (octave_idx_type k) const;
459 //! Extract page: A(:,:,k+1). 459 //! Extract page: A(:,:,k+1).
460 Array<T> page (octave_idx_type k) const; 460 Array<T> page (octave_idx_type k) const;