libstdc++
Numeric Arrays
Collaboration diagram for Numeric Arrays:

Classes

Defines

Functions


Detailed Description

Classes and functions for representing and manipulating arrays of elements.


Function Documentation

std::gslice::gslice ( ) [inline]

Construct an empty slice.

Definition at line 150 of file gslice.h.

std::gslice::gslice ( size_t  __o,
const valarray< size_t > &  __l,
const valarray< size_t > &  __s 
) [inline]

Construct a slice.

Constructs a slice with as many dimensions as the length of the l and s arrays.

Parameters:
__oOffset in array of first element.
__lArray of dimension lengths.
__sArray of dimension strides between array elements.

Definition at line 154 of file gslice.h.

std::gslice::gslice ( const gslice __g) [inline]

Copy constructor.

Definition at line 159 of file gslice.h.

template<typename _Tp >
std::gslice_array< _Tp >::gslice_array ( const gslice_array< _Tp > &  __a) [inline]

Copy constructor. Both slices refer to the same underlying array.

Definition at line 144 of file gslice_array.h.

template<typename _Tp >
std::indirect_array< _Tp >::indirect_array ( const indirect_array< _Tp > &  __a) [inline]

Copy constructor. Both slices refer to the same underlying array.

Definition at line 144 of file indirect_array.h.

template<typename _Tp >
std::mask_array< _Tp >::mask_array ( const mask_array< _Tp > &  a) [inline]

Copy constructor. Both slices refer to the same underlying array.

Definition at line 140 of file mask_array.h.

std::slice::slice ( ) [inline]

Construct an empty slice.

Definition at line 91 of file slice_array.h.

std::slice::slice ( size_t  __o,
size_t  __d,
size_t  __s 
) [inline]

Construct a slice.

Parameters:
__oOffset in array of first element.
__dNumber of elements in slice.
__sStride between array elements.

Definition at line 95 of file slice_array.h.

template<typename _Tp >
std::slice_array< _Tp >::slice_array ( const slice_array< _Tp > &  a) [inline]

Copy constructor. Both slices refer to the same underlying array.

Definition at line 208 of file slice_array.h.

template<typename _Tp >
std::valarray< _Tp >::valarray ( ) [inline]

Construct an empty array.

Definition at line 607 of file valarray.

template<typename _Tp >
std::valarray< _Tp >::valarray ( size_t  __n) [inline, explicit]

Construct an array with n elements.

Definition at line 611 of file valarray.

template<typename _Tp>
std::valarray< _Tp >::valarray ( const _Tp &  __t,
size_t  __n 
) [inline]

Construct an array with n elements initialized to t.

Definition at line 617 of file valarray.

template<typename _Tp>
std::valarray< _Tp >::valarray ( const valarray< _Tp > &  __v) [inline]

Copy constructor.

Definition at line 632 of file valarray.

template<typename _Tp>
std::valarray< _Tp >::valarray ( valarray< _Tp > &&  __v) [inline]

Move constructor.

Definition at line 640 of file valarray.

template<typename _Tp>
std::valarray< _Tp >::valarray ( const slice_array< _Tp > &  __sa) [inline]

Construct an array with the same size and values in sa.

Definition at line 650 of file valarray.

template<typename _Tp>
std::valarray< _Tp >::valarray ( const gslice_array< _Tp > &  __ga) [inline]

Construct an array with the same size and values in ga.

Definition at line 659 of file valarray.

template<typename _Tp>
std::valarray< _Tp >::valarray ( const mask_array< _Tp > &  __ma) [inline]

Construct an array with the same size and values in ma.

Definition at line 670 of file valarray.

template<typename _Tp>
std::valarray< _Tp >::valarray ( const indirect_array< _Tp > &  __ia) [inline]

Construct an array with the same size and values in ia.

Definition at line 679 of file valarray.

template<typename _Tp>
std::valarray< _Tp >::valarray ( initializer_list< _Tp >  __l) [inline]

Construct an array with an initializer_list of values.

Definition at line 689 of file valarray.

std::gslice::~gslice ( ) [inline]

Destructor.

Definition at line 164 of file gslice.h.

template<class _Tp>
_Expr< _ValFunClos< _ValArray, _Tp >, _Tp > std::valarray< _Tp >::apply ( _Tp   func_Tp) const [inline]

Apply a function to the array.

Returns a new valarray with elements assigned to the result of applying func to the corresponding element of this array. The new array has the same size as this one.

Parameters:
funcFunction of Tp returning Tp to apply.
Returns:
New valarray with transformed elements.

Definition at line 1038 of file valarray.

template<class _Tp>
_Expr< _RefFunClos< _ValArray, _Tp >, _Tp > std::valarray< _Tp >::apply ( _Tp   funcconst _Tp &) const [inline]

Apply a function to the array.

Returns a new valarray with elements assigned to the result of applying func to the corresponding element of this array. The new array has the same size as this one.

Parameters:
funcFunction of const Tp& returning Tp to apply.
Returns:
New valarray with transformed elements.

Definition at line 1046 of file valarray.

template<class _Tp >
_Tp* std::begin ( valarray< _Tp > &  __va) [inline]

Return an iterator pointing to the first element of the valarray.

Parameters:
__vavalarray.

Definition at line 1185 of file valarray.

References std::__addressof().

template<class _Tp >
const _Tp* std::begin ( const valarray< _Tp > &  __va) [inline]

Return an iterator pointing to the first element of the const valarray.

Parameters:
__vavalarray.

Definition at line 1195 of file valarray.

References std::__addressof().

template<class _Tp >
valarray< _Tp > std::valarray< _Tp >::cshift ( int  __n) const [inline]

Return a rotated array.

A new valarray is constructed as a copy of this array with elements in shifted positions. For an element with index i, the new position is (i - n) % size(). The new valarray has the same size as the current one. Elements that are shifted beyond the array bounds are shifted into the other end of the array. No elements are lost.

Positive arguments shift toward index 0, wrapping around the top. Negative arguments shift towards the top, wrapping around to 0.

Parameters:
__nNumber of element positions to rotate.
Returns:
New valarray with elements in shifted positions.

Definition at line 964 of file valarray.

template<class _Tp >
_Tp* std::end ( valarray< _Tp > &  __va) [inline]

Return an iterator pointing to one past the last element of the valarray.

Parameters:
__vavalarray.

Definition at line 1205 of file valarray.

References std::__addressof(), and std::valarray< _Tp >::size().

template<class _Tp >
const _Tp* std::end ( const valarray< _Tp > &  __va) [inline]

Return an iterator pointing to one past the last element of the const valarray.

Parameters:
__vavalarray.

Definition at line 1215 of file valarray.

References std::__addressof(), and std::valarray< _Tp >::size().

template<typename _Tp >
_Tp std::valarray< _Tp >::max ( ) const [inline]

Return the maximum element using operator<().

Definition at line 1030 of file valarray.

References std::max_element().

template<typename _Tp >
_Tp std::valarray< _Tp >::min ( ) const [inline]

Return the minimum element using operator<().

Definition at line 1022 of file valarray.

References std::min_element().

template<typename _Tp >
valarray< _Tp >::template _UnaryOp< __logical_not >::_Rt std::valarray< _Tp >::operator! ( ) const [inline]

Return a new valarray by applying unary ! to each element.

Definition at line 1065 of file valarray.

template<typename _Tp >
void std::gslice_array< _Tp >::operator%= ( const valarray< _Tp > &  __v) const [inline]

Modulo slice elements by corresponding elements of v.

Definition at line 203 of file gslice_array.h.

template<typename _Tp >
void std::mask_array< _Tp >::operator%= ( const valarray< _Tp > &  __v) const [inline]

Modulo slice elements by corresponding elements of v.

Definition at line 193 of file mask_array.h.

template<typename _Tp >
void std::indirect_array< _Tp >::operator%= ( const valarray< _Tp > &  __v) const [inline]

Modulo slice elements by corresponding elements of v.

Definition at line 197 of file indirect_array.h.

template<typename _Tp >
void std::slice_array< _Tp >::operator%= ( const valarray< _Tp > &  __v) const [inline]

Modulo slice elements by corresponding elements of v.

Definition at line 259 of file slice_array.h.

template<class _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator%= ( const _Tp &  __t) [inline]

Set each element e of array to e % t.

Definition at line 1092 of file valarray.

template<class _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator%= ( const valarray< _Tp > &  __v) [inline]

Modulo elements of array by corresponding elements of v.

Definition at line 1092 of file valarray.

template<typename _Tp >
void std::gslice_array< _Tp >::operator&= ( const valarray< _Tp > &  __v) const [inline]

Logical and slice elements with corresponding elements of v.

Definition at line 207 of file gslice_array.h.

template<typename _Tp >
void std::mask_array< _Tp >::operator&= ( const valarray< _Tp > &  __v) const [inline]

Logical and slice elements with corresponding elements of v.

Definition at line 197 of file mask_array.h.

template<typename _Tp >
void std::indirect_array< _Tp >::operator&= ( const valarray< _Tp > &  __v) const [inline]

Logical and slice elements with corresponding elements of v.

Definition at line 201 of file indirect_array.h.

template<typename _Tp >
void std::slice_array< _Tp >::operator&= ( const valarray< _Tp > &  __v) const [inline]

Logical and slice elements with corresponding elements of v.

Definition at line 263 of file slice_array.h.

template<class _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator&= ( const _Tp &  __t) [inline]

Set each element e of array to e & t.

Definition at line 1094 of file valarray.

template<class _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator&= ( const valarray< _Tp > &  __v) [inline]

Logical and corresponding elements of v with elements of array.

Definition at line 1094 of file valarray.

template<typename _Tp >
void std::gslice_array< _Tp >::operator*= ( const valarray< _Tp > &  __v) const [inline]

Multiply slice elements by corresponding elements of v.

Definition at line 201 of file gslice_array.h.

template<typename _Tp >
void std::mask_array< _Tp >::operator*= ( const valarray< _Tp > &  __v) const [inline]

Multiply slice elements by corresponding elements of v.

Definition at line 191 of file mask_array.h.

template<typename _Tp >
void std::indirect_array< _Tp >::operator*= ( const valarray< _Tp > &  __v) const [inline]

Multiply slice elements by corresponding elements of v.

Definition at line 195 of file indirect_array.h.

template<typename _Tp >
void std::slice_array< _Tp >::operator*= ( const valarray< _Tp > &  __v) const [inline]

Multiply slice elements by corresponding elements of v.

Definition at line 257 of file slice_array.h.

template<class _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator*= ( const _Tp &  __t) [inline]

Multiply each element of array by t.

Definition at line 1090 of file valarray.

template<class _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator*= ( const valarray< _Tp > &  __v) [inline]

Multiply elements of array by corresponding elements of v.

Definition at line 1090 of file valarray.

template<typename _Tp >
valarray< _Tp >::template _UnaryOp< __unary_plus >::_Rt std::valarray< _Tp >::operator+ ( ) const [inline]

Return a new valarray by applying unary + to each element.

Definition at line 1062 of file valarray.

template<typename _Tp >
void std::gslice_array< _Tp >::operator+= ( const valarray< _Tp > &  __v) const [inline]

Add corresponding elements of v to slice elements.

Definition at line 204 of file gslice_array.h.

template<typename _Tp >
void std::mask_array< _Tp >::operator+= ( const valarray< _Tp > &  __v) const [inline]

Add corresponding elements of v to slice elements.

Definition at line 194 of file mask_array.h.

template<typename _Tp >
void std::indirect_array< _Tp >::operator+= ( const valarray< _Tp > &  __v) const [inline]

Add corresponding elements of v to slice elements.

Definition at line 198 of file indirect_array.h.

template<typename _Tp >
void std::slice_array< _Tp >::operator+= ( const valarray< _Tp > &  __v) const [inline]

Add corresponding elements of v to slice elements.

Definition at line 260 of file slice_array.h.

template<class _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator+= ( const _Tp &  __t) [inline]

Add t to each element of array.

Definition at line 1088 of file valarray.

template<class _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator+= ( const valarray< _Tp > &  __v) [inline]

Add corresponding elements of v to elements of array.

Definition at line 1088 of file valarray.

template<typename _Tp >
valarray< _Tp >::template _UnaryOp< __negate >::_Rt std::valarray< _Tp >::operator- ( ) const [inline]

Return a new valarray by applying unary - to each element.

Definition at line 1063 of file valarray.

template<typename _Tp >
void std::gslice_array< _Tp >::operator-= ( const valarray< _Tp > &  __v) const [inline]

Subtract corresponding elements of v from slice elements.

Definition at line 205 of file gslice_array.h.

template<typename _Tp >
void std::mask_array< _Tp >::operator-= ( const valarray< _Tp > &  __v) const [inline]

Subtract corresponding elements of v from slice elements.

Definition at line 195 of file mask_array.h.

template<typename _Tp >
void std::indirect_array< _Tp >::operator-= ( const valarray< _Tp > &  __v) const [inline]

Subtract corresponding elements of v from slice elements.

Definition at line 199 of file indirect_array.h.

template<typename _Tp >
void std::slice_array< _Tp >::operator-= ( const valarray< _Tp > &  __v) const [inline]

Subtract corresponding elements of v from slice elements.

Definition at line 261 of file slice_array.h.

template<class _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator-= ( const _Tp &  __t) [inline]

Subtract t to each element of array.

Definition at line 1089 of file valarray.

template<class _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator-= ( const valarray< _Tp > &  __v) [inline]

Subtract corresponding elements of v from elements of array.

Definition at line 1089 of file valarray.

template<typename _Tp >
void std::gslice_array< _Tp >::operator/= ( const valarray< _Tp > &  __v) const [inline]

Divide slice elements by corresponding elements of v.

Definition at line 202 of file gslice_array.h.

template<typename _Tp >
void std::mask_array< _Tp >::operator/= ( const valarray< _Tp > &  __v) const [inline]

Divide slice elements by corresponding elements of v.

Definition at line 192 of file mask_array.h.

template<typename _Tp >
void std::indirect_array< _Tp >::operator/= ( const valarray< _Tp > &  __v) const [inline]

Divide slice elements by corresponding elements of v.

Definition at line 196 of file indirect_array.h.

template<typename _Tp >
void std::slice_array< _Tp >::operator/= ( const valarray< _Tp > &  __v) const [inline]

Divide slice elements by corresponding elements of v.

Definition at line 258 of file slice_array.h.

template<class _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator/= ( const _Tp &  __t) [inline]

Divide each element of array by t.

Definition at line 1091 of file valarray.

template<class _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator/= ( const valarray< _Tp > &  __v) [inline]

Divide elements of array by corresponding elements of v.

Definition at line 1091 of file valarray.

template<typename _Tp >
void std::gslice_array< _Tp >::operator<<= ( const valarray< _Tp > &  __v) const [inline]

Left shift slice elements by corresponding elements of v.

Definition at line 209 of file gslice_array.h.

template<typename _Tp >
void std::mask_array< _Tp >::operator<<= ( const valarray< _Tp > &  __v) const [inline]

Left shift slice elements by corresponding elements of v.

Definition at line 199 of file mask_array.h.

template<typename _Tp >
void std::indirect_array< _Tp >::operator<<= ( const valarray< _Tp > &  __v) const [inline]

Left shift slice elements by corresponding elements of v.

Definition at line 203 of file indirect_array.h.

template<typename _Tp >
void std::slice_array< _Tp >::operator<<= ( const valarray< _Tp > &  __v) const [inline]

Left shift slice elements by corresponding elements of v.

Definition at line 265 of file slice_array.h.

template<class _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator<<= ( const _Tp &  __t) [inline]

Left shift each element e of array by t bits.

Definition at line 1096 of file valarray.

template<class _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator<<= ( const valarray< _Tp > &  __v) [inline]

Left shift elements of array by corresponding elements of v.

Definition at line 1096 of file valarray.

template<typename _Tp >
gslice_array< _Tp > & std::gslice_array< _Tp >::operator= ( const gslice_array< _Tp > &  __a) [inline]

Assignment operator. Assigns slice elements to corresponding elements of a.

Definition at line 149 of file gslice_array.h.

template<typename _Tp >
indirect_array< _Tp > & std::indirect_array< _Tp >::operator= ( const indirect_array< _Tp > &  __a) [inline]

Assignment operator. Assigns elements to corresponding elements of a.

Definition at line 155 of file indirect_array.h.

template<typename _Tp >
mask_array< _Tp > & std::mask_array< _Tp >::operator= ( const mask_array< _Tp > &  __a) [inline]

Assignment operator. Assigns elements to corresponding elements of a.

Definition at line 150 of file mask_array.h.

template<typename _Tp >
void std::gslice_array< _Tp >::operator= ( const valarray< _Tp > &  __v) const [inline]

Assign slice elements to corresponding elements of v.

Definition at line 167 of file gslice_array.h.

References std::valarray< _Tp >::size().

template<typename _Tp >
void std::indirect_array< _Tp >::operator= ( const valarray< _Tp > &  __v) const [inline]

Assign slice elements to corresponding elements of v.

Definition at line 169 of file indirect_array.h.

gslice & std::gslice::operator= ( const gslice __g) [inline]

Assignment operator.

Definition at line 171 of file gslice.h.

template<typename _Tp >
void std::gslice_array< _Tp >::operator= ( const _Tp &  __t) const [inline]

Assign all slice elements to t.

Definition at line 159 of file gslice_array.h.

template<typename _Tp >
void std::mask_array< _Tp >::operator= ( const _Tp &  __t) const [inline]

Assign all slice elements to t.

Definition at line 159 of file mask_array.h.

template<typename _Tp >
void std::indirect_array< _Tp >::operator= ( const _Tp &  __t) const [inline]

Assign all slice elements to t.

Definition at line 164 of file indirect_array.h.

template<typename _Tp >
slice_array< _Tp > & std::slice_array< _Tp >::operator= ( const slice_array< _Tp > &  __a) [inline]

Assignment operator. Assigns slice elements to corresponding elements of a.

Definition at line 216 of file slice_array.h.

template<typename _Tp >
void std::slice_array< _Tp >::operator= ( const valarray< _Tp > &  __v) const [inline]

Assign slice elements to corresponding elements of v.

Definition at line 230 of file slice_array.h.

template<typename _Tp >
void std::slice_array< _Tp >::operator= ( const _Tp &  __t) const [inline]

Assign all slice elements to t.

Definition at line 225 of file slice_array.h.

template<typename _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator= ( const valarray< _Tp > &  __v) [inline]

Assign elements to an array.

Assign elements of array to values in v.

Parameters:
__vValarray to get values from.

Definition at line 710 of file valarray.

template<typename _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator= ( valarray< _Tp > &&  __v) [inline]

Move assign elements to an array.

Move assign elements of array to values in v.

Parameters:
__vValarray to get values from.

Definition at line 734 of file valarray.

template<typename _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator= ( const _Tp &  __t) [inline]

Assign elements to a value.

Assign all elements of array to t.

Parameters:
__tValue for elements.

Definition at line 774 of file valarray.

template<typename _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator= ( const slice_array< _Tp > &  __sa) [inline]

Assign elements to an array subset.

Assign elements of array to values in sa. Results are undefined if sa does not have the same size as this array.

Parameters:
__saArray slice to get values from.

Definition at line 782 of file valarray.

template<typename _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator= ( const gslice_array< _Tp > &  __ga) [inline]

Assign elements to an array subset.

Assign elements of array to values in ga. Results are undefined if ga does not have the same size as this array.

Parameters:
__gaArray slice to get values from.

Definition at line 792 of file valarray.

References std::valarray< _Tp >::size().

template<typename _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator= ( const mask_array< _Tp > &  __ma) [inline]

Assign elements to an array subset.

Assign elements of array to values in ma. Results are undefined if ma does not have the same size as this array.

Parameters:
__maArray slice to get values from.

Definition at line 802 of file valarray.

template<typename _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator= ( const indirect_array< _Tp > &  __ia) [inline]

Assign elements to an array subset.

Assign elements of array to values in ia. Results are undefined if ia does not have the same size as this array.

Parameters:
__iaArray slice to get values from.

Definition at line 812 of file valarray.

template<typename _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator= ( initializer_list< _Tp >  __l) [inline]

Assign elements to an initializer_list.

Assign elements of array to values in __l. Results are undefined if __l does not have the same size as this array.

Parameters:
__linitializer_list to get values from.

Definition at line 750 of file valarray.

template<typename _Tp >
void std::gslice_array< _Tp >::operator>>= ( const valarray< _Tp > &  __v) const [inline]

Right shift slice elements by corresponding elements of v.

Definition at line 210 of file gslice_array.h.

template<typename _Tp >
void std::mask_array< _Tp >::operator>>= ( const valarray< _Tp > &  __v) const [inline]

Right shift slice elements by corresponding elements of v.

Definition at line 200 of file mask_array.h.

template<typename _Tp >
void std::indirect_array< _Tp >::operator>>= ( const valarray< _Tp > &  __v) const [inline]

Right shift slice elements by corresponding elements of v.

Definition at line 204 of file indirect_array.h.

template<typename _Tp >
void std::slice_array< _Tp >::operator>>= ( const valarray< _Tp > &  __v) const [inline]

Right shift slice elements by corresponding elements of v.

Definition at line 266 of file slice_array.h.

template<class _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator>>= ( const _Tp &  __t) [inline]

Right shift each element e of array by t bits.

Definition at line 1097 of file valarray.

template<class _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator>>= ( const valarray< _Tp > &  __v) [inline]

Right shift elements of array by corresponding elements of v.

Definition at line 1097 of file valarray.

template<typename _Tp >
_Tp & std::valarray< _Tp >::operator[] ( size_t  __i) [inline]

Return a reference to the i'th array element.

Parameters:
__iIndex of element to return.
Returns:
Reference to the i'th element.

Definition at line 578 of file valarray.

template<typename _Tp >
_Expr< _SClos< _ValArray, _Tp >, _Tp > std::valarray< _Tp >::operator[] ( slice  __s) const [inline]

Return an array subset.

Returns a new valarray containing the elements of the array indicated by the slice argument. The new valarray has the same size as the input slice.

See also:
slice.
Parameters:
__sThe source slice.
Returns:
New valarray containing elements in __s.

Definition at line 831 of file valarray.

template<typename _Tp >
slice_array< _Tp > std::valarray< _Tp >::operator[] ( slice  __s) [inline]

Return a reference to an array subset.

Returns a new valarray containing the elements of the array indicated by the slice argument. The new valarray has the same size as the input slice.

See also:
slice.
Parameters:
__sThe source slice.
Returns:
New valarray containing elements in __s.

Definition at line 839 of file valarray.

template<typename _Tp >
_Expr< _GClos< _ValArray, _Tp >, _Tp > std::valarray< _Tp >::operator[] ( const gslice __s) const [inline]

Return an array subset.

Returns a slice_array referencing the elements of the array indicated by the slice argument.

See also:
gslice.
Parameters:
__sThe source slice.
Returns:
Slice_array referencing elements indicated by __s.

Definition at line 844 of file valarray.

template<typename _Tp >
gslice_array< _Tp > std::valarray< _Tp >::operator[] ( const gslice __s) [inline]

Return a reference to an array subset.

Returns a new valarray containing the elements of the array indicated by the gslice argument. The new valarray has the same size as the input gslice.

See also:
gslice.
Parameters:
__sThe source gslice.
Returns:
New valarray containing elements in __s.

Definition at line 853 of file valarray.

template<typename _Tp >
valarray< _Tp > std::valarray< _Tp >::operator[] ( const valarray< bool > &  __m) const [inline]

Return an array subset.

Returns a new valarray containing the elements of the array indicated by the argument. The input is a valarray of bool which represents a bitmask indicating which elements should be copied into the new valarray. Each element of the array is added to the return valarray if the corresponding element of the argument is true.

Parameters:
__mThe valarray bitmask.
Returns:
New valarray containing elements indicated by __m.

Definition at line 861 of file valarray.

References std::valarray< _Tp >::size().

template<typename _Tp >
mask_array< _Tp > std::valarray< _Tp >::operator[] ( const valarray< bool > &  __m) [inline]

Return a reference to an array subset.

Returns a new mask_array referencing the elements of the array indicated by the argument. The input is a valarray of bool which represents a bitmask indicating which elements are part of the subset. Elements of the array are part of the subset if the corresponding element of the argument is true.

Parameters:
__mThe valarray bitmask.
Returns:
New valarray containing elements indicated by __m.

Definition at line 873 of file valarray.

References std::valarray< _Tp >::size().

template<typename _Tp >
_Expr< _IClos< _ValArray, _Tp >, _Tp > std::valarray< _Tp >::operator[] ( const valarray< size_t > &  __i) const [inline]

Return an array subset.

Returns a new valarray containing the elements of the array indicated by the argument. The elements in the argument are interpreted as the indices of elements of this valarray to copy to the return valarray.

Parameters:
__iThe valarray element index list.
Returns:
New valarray containing elements in __s.

Definition at line 884 of file valarray.

template<typename _Tp >
indirect_array< _Tp > std::valarray< _Tp >::operator[] ( const valarray< size_t > &  __i) [inline]

Return a reference to an array subset.

Returns an indirect_array referencing the elements of the array indicated by the argument. The elements in the argument are interpreted as the indices of elements of this valarray to include in the subset. The returned indirect_array refers to these elements.

Parameters:
__iThe valarray element index list.
Returns:
Indirect_array referencing elements in __i.

Definition at line 892 of file valarray.

References std::valarray< _Tp >::size().

template<typename _Tp >
void std::gslice_array< _Tp >::operator^= ( const valarray< _Tp > &  __v) const [inline]

Logical xor slice elements with corresponding elements of v.

Definition at line 206 of file gslice_array.h.

template<typename _Tp >
void std::mask_array< _Tp >::operator^= ( const valarray< _Tp > &  __v) const [inline]

Logical xor slice elements with corresponding elements of v.

Definition at line 196 of file mask_array.h.

template<typename _Tp >
void std::indirect_array< _Tp >::operator^= ( const valarray< _Tp > &  __v) const [inline]

Logical xor slice elements with corresponding elements of v.

Definition at line 200 of file indirect_array.h.

template<typename _Tp >
void std::slice_array< _Tp >::operator^= ( const valarray< _Tp > &  __v) const [inline]

Logical xor slice elements with corresponding elements of v.

Definition at line 262 of file slice_array.h.

template<class _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator^= ( const _Tp &  __t) [inline]

Set each element e of array to e ^ t.

Definition at line 1093 of file valarray.

template<class _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator^= ( const valarray< _Tp > &  __v) [inline]

Logical xor corresponding elements of v with elements of array.

Definition at line 1093 of file valarray.

template<typename _Tp >
void std::gslice_array< _Tp >::operator|= ( const valarray< _Tp > &  __v) const [inline]

Logical or slice elements with corresponding elements of v.

Definition at line 208 of file gslice_array.h.

template<typename _Tp >
void std::mask_array< _Tp >::operator|= ( const valarray< _Tp > &  __v) const [inline]

Logical or slice elements with corresponding elements of v.

Definition at line 198 of file mask_array.h.

template<typename _Tp >
void std::indirect_array< _Tp >::operator|= ( const valarray< _Tp > &  __v) const [inline]

Logical or slice elements with corresponding elements of v.

Definition at line 202 of file indirect_array.h.

template<typename _Tp >
void std::slice_array< _Tp >::operator|= ( const valarray< _Tp > &  __v) const [inline]

Logical or slice elements with corresponding elements of v.

Definition at line 264 of file slice_array.h.

template<class _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator|= ( const _Tp &  __t) [inline]

Set each element e of array to e | t.

Definition at line 1095 of file valarray.

template<class _Tp>
valarray< _Tp > & std::valarray< _Tp >::operator|= ( const valarray< _Tp > &  __v) [inline]

Logical or corresponding elements of v with elements of array.

Definition at line 1095 of file valarray.

template<typename _Tp >
valarray< _Tp >::template _UnaryOp< __bitwise_not >::_Rt std::valarray< _Tp >::operator~ ( ) const [inline]

Return a new valarray by applying unary ~ to each element.

Definition at line 1064 of file valarray.

template<class _Tp>
void std::valarray< _Tp >::resize ( size_t  __size,
_Tp  __c = _Tp() 
) [inline]

Resize array.

Resize this array to size and set all elements to c. All references and iterators are invalidated.

Parameters:
__sizeNew array size.
__cNew value for all elements.

Definition at line 1005 of file valarray.

template<class _Tp >
valarray< _Tp > std::valarray< _Tp >::shift ( int  __n) const [inline]

Return a shifted array.

A new valarray is constructed as a copy of this array with elements in shifted positions. For an element with index i, the new position is i - n. The new valarray has the same size as the current one. New elements without a value are set to 0. Elements whose new position is outside the bounds of the array are discarded.

Positive arguments shift toward index 0, discarding elements [0, n). Negative arguments discard elements from the top of the array.

Parameters:
__nNumber of element positions to shift.
Returns:
New valarray with elements in shifted positions.

Definition at line 923 of file valarray.

size_t std::slice::size ( ) const [inline]

Return size of slice.

Definition at line 103 of file slice_array.h.

valarray< size_t > std::gslice::size ( ) const [inline]

Return array of sizes of slice dimensions.

Definition at line 140 of file gslice.h.

template<class _Tp >
size_t std::valarray< _Tp >::size ( ) const [inline]

Return the number of elements in array.

Definition at line 910 of file valarray.

Referenced by std::end(), std::gslice_array< _Tp >::operator=(), std::valarray< _Tp >::operator=(), and std::valarray< _Tp >::operator[]().

size_t std::slice::start ( ) const [inline]

Return array offset of first slice element.

Definition at line 99 of file slice_array.h.

size_t std::gslice::start ( ) const [inline]

Return array offset of first slice element.

Definition at line 136 of file gslice.h.

size_t std::slice::stride ( ) const [inline]

Return array stride of slice.

Definition at line 107 of file slice_array.h.

valarray< size_t > std::gslice::stride ( ) const [inline]

Return array of array strides for each dimension.

Definition at line 144 of file gslice.h.

template<class _Tp >
_Tp std::valarray< _Tp >::sum ( ) const [inline]

Return the sum of all elements in the array.

Accumulates the sum of all elements into a Tp using +=. The order of adding the elements is unspecified.

Definition at line 915 of file valarray.

template<class _Tp>
void std::valarray< _Tp >::swap ( valarray< _Tp > &  __v) [inline]

Swap.

Definition at line 901 of file valarray.