ReactOS 0.4.16-dev-329-g9223134
indirect_array< _Tp > Class Template Reference

#include <_valarray.h>

Collaboration diagram for indirect_array< _Tp >:

Public Types

typedef _Tp value_type
 

Public Member Functions

void operator= (const valarray< value_type > &__x) const
 
void operator*= (const valarray< value_type > &__x) const
 
void operator/= (const valarray< value_type > &__x) const
 
void operator%= (const valarray< value_type > &__x) const
 
void operator+= (const valarray< value_type > &__x) const
 
void operator-= (const valarray< value_type > &__x) const
 
void operator^= (const valarray< value_type > &__x) const
 
void operator&= (const valarray< value_type > &__x) const
 
void operator|= (const valarray< value_type > &__x) const
 
void operator<<= (const valarray< value_type > &__x) const
 
void operator>>= (const valarray< value_type > &__x) const
 
void operator= (const value_type &__c) const
 
 indirect_array (const indirect_array &__x)
 
 ~indirect_array ()
 

Private Member Functions

 indirect_array (const _Valarray_size_t &__addr, valarray< _Tp > &__array)
 
 indirect_array ()
 
void operator= (const indirect_array< _Tp > &)
 

Private Attributes

_Valarray_size_t _M_addr
 
valarray< _Tp > & _M_array
 

Friends

class valarray< _Tp >
 

Detailed Description

template<class _Tp>
class indirect_array< _Tp >

Definition at line 1570 of file _valarray.h.

Member Typedef Documentation

◆ value_type

template<class _Tp >
typedef _Tp indirect_array< _Tp >::value_type

Definition at line 1573 of file _valarray.h.

Constructor & Destructor Documentation

◆ indirect_array() [1/3]

template<class _Tp >
indirect_array< _Tp >::indirect_array ( const indirect_array< _Tp > &  __x)
inline

Definition at line 1636 of file _valarray.h.

1637 : _M_addr(__x._M_addr), _M_array(__x._M_array)
1638 {}
valarray< _Tp > & _M_array
Definition: _valarray.h:1648
_Valarray_size_t _M_addr
Definition: _valarray.h:1647

◆ ~indirect_array()

template<class _Tp >
indirect_array< _Tp >::~indirect_array ( )
inline

Definition at line 1640 of file _valarray.h.

1640{}

◆ indirect_array() [2/3]

template<class _Tp >
indirect_array< _Tp >::indirect_array ( const _Valarray_size_t __addr,
valarray< _Tp > &  __array 
)
inlineprivate

Definition at line 1643 of file _valarray.h.

1644 : _M_addr(__addr), _M_array(__array)
1645 {}

◆ indirect_array() [3/3]

template<class _Tp >
indirect_array< _Tp >::indirect_array ( )
private

Member Function Documentation

◆ operator%=()

template<class _Tp >
void indirect_array< _Tp >::operator%= ( const valarray< value_type > &  __x) const
inline

Definition at line 1590 of file _valarray.h.

1590 {
1591 for (size_t __i = 0; __i < _M_addr.size(); ++__i)
1592 _M_array[_M_addr[__i]] %= __x[__i];
1593 }
size_t size() const
Definition: _valarray.h:164

◆ operator&=()

template<class _Tp >
void indirect_array< _Tp >::operator&= ( const valarray< value_type > &  __x) const
inline

Definition at line 1610 of file _valarray.h.

1610 {
1611 for (size_t __i = 0; __i < _M_addr.size(); ++__i)
1612 _M_array[_M_addr[__i]] &= __x[__i];
1613 }

◆ operator*=()

template<class _Tp >
void indirect_array< _Tp >::operator*= ( const valarray< value_type > &  __x) const
inline

Definition at line 1580 of file _valarray.h.

1580 {
1581 for (size_t __i = 0; __i < _M_addr.size(); ++__i)
1582 _M_array[_M_addr[__i]] *= __x[__i];
1583 }

◆ operator+=()

template<class _Tp >
void indirect_array< _Tp >::operator+= ( const valarray< value_type > &  __x) const
inline

Definition at line 1595 of file _valarray.h.

1595 {
1596 for (size_t __i = 0; __i < _M_addr.size(); ++__i)
1597 _M_array[_M_addr[__i]] += __x[__i];
1598 }

◆ operator-=()

template<class _Tp >
void indirect_array< _Tp >::operator-= ( const valarray< value_type > &  __x) const
inline

Definition at line 1600 of file _valarray.h.

1600 {
1601 for (size_t __i = 0; __i < _M_addr.size(); ++__i)
1602 _M_array[_M_addr[__i]] -= __x[__i];
1603 }

◆ operator/=()

template<class _Tp >
void indirect_array< _Tp >::operator/= ( const valarray< value_type > &  __x) const
inline

Definition at line 1585 of file _valarray.h.

1585 {
1586 for (size_t __i = 0; __i < _M_addr.size(); ++__i)
1587 _M_array[_M_addr[__i]] /= __x[__i];
1588 }

◆ operator<<=()

template<class _Tp >
void indirect_array< _Tp >::operator<<= ( const valarray< value_type > &  __x) const
inline

Definition at line 1620 of file _valarray.h.

1620 {
1621 for (size_t __i = 0; __i < _M_addr.size(); ++__i)
1622 _M_array[_M_addr[__i]] <<= __x[__i];
1623 }

◆ operator=() [1/3]

template<class _Tp >
void indirect_array< _Tp >::operator= ( const indirect_array< _Tp > &  )
private

◆ operator=() [2/3]

template<class _Tp >
void indirect_array< _Tp >::operator= ( const valarray< value_type > &  __x) const
inline

Definition at line 1575 of file _valarray.h.

1575 {
1576 for (size_t __i = 0; __i < _M_addr.size(); ++__i)
1577 _M_array[_M_addr[__i]] = __x[__i];
1578 }

◆ operator=() [3/3]

template<class _Tp >
void indirect_array< _Tp >::operator= ( const value_type __c) const
inline

Definition at line 1630 of file _valarray.h.

1630 {
1631 for (size_t __i = 0; __i < _M_addr.size(); ++__i)
1632 _M_array[_M_addr[__i]] = __c;
1633 }
#define __c
Definition: schilyio.h:209

◆ operator>>=()

template<class _Tp >
void indirect_array< _Tp >::operator>>= ( const valarray< value_type > &  __x) const
inline

Definition at line 1625 of file _valarray.h.

1625 {
1626 for (size_t __i = 0; __i < _M_addr.size(); ++__i)
1627 _M_array[_M_addr[__i]] >>= __x[__i];
1628 }

◆ operator^=()

template<class _Tp >
void indirect_array< _Tp >::operator^= ( const valarray< value_type > &  __x) const
inline

Definition at line 1605 of file _valarray.h.

1605 {
1606 for (size_t __i = 0; __i < _M_addr.size(); ++__i)
1607 _M_array[_M_addr[__i]] ^= __x[__i];
1608 }

◆ operator|=()

template<class _Tp >
void indirect_array< _Tp >::operator|= ( const valarray< value_type > &  __x) const
inline

Definition at line 1615 of file _valarray.h.

1615 {
1616 for (size_t __i = 0; __i < _M_addr.size(); ++__i)
1617 _M_array[_M_addr[__i]] |= __x[__i];
1618 }

Friends And Related Function Documentation

◆ valarray< _Tp >

template<class _Tp >
friend class valarray< _Tp >
friend

Definition at line 1537 of file _valarray.h.

Member Data Documentation

◆ _M_addr

◆ _M_array


The documentation for this class was generated from the following file: