CNORXZ
Container with Native Operation Routines and Expressions
|
#include <yrange.h>
Public Types | |
typedef RangeBase | RB |
typedef YIndex | IndexType |
Public Types inherited from CNORXZ::RangeInterface< YRange > | |
typedef RangeBase | RB |
Public Types inherited from CNORXZ::RangeBase | |
typedef DIndex | IndexType |
Public Member Functions | |
virtual RangePtr | sub (SizeT i) const override final |
virtual MArray< RangePtr > | sub () const override final |
virtual SizeT | size () const override final |
virtual SizeT | dim () const override final |
virtual String | stringMeta (SizeT pos) const override final |
virtual const TypeInfo & | type () const override final |
virtual const TypeInfo & | metaType () const override final |
virtual RangePtr | extend (const RangePtr &r) const override final |
Public Member Functions inherited from CNORXZ::RangeInterface< YRange > | |
decltype(auto) | begin () const |
decltype(auto) | end () const |
virtual DIndex | index (SizeT pos) const override final |
Public Member Functions inherited from CNORXZ::RangeBase | |
virtual | ~RangeBase ()=default |
bool | operator== (const RangeBase &in) const |
bool | operator!= (const RangeBase &in) const |
Uuid | id () const |
DIndex | begin () const |
DIndex | end () const |
Public Attributes | |
friend | YRangeFactory |
Public Attributes inherited from CNORXZ::RangeBase | |
friend | RangeFactoryBase |
Additional Inherited Members | |
Protected Member Functions inherited from CNORXZ::RangeInterface< YRange > | |
RangeInterface ()=default | |
Protected Member Functions inherited from CNORXZ::RangeBase | |
RangeBase () | |
Protected Attributes inherited from CNORXZ::RangeBase | |
Uuid | mId = {0,0} |
Wptr< RangeBase > | mThis |
Dynamic multi-dimensional range
Dimension and sub-range types are determined at runtime The size of the range is given by the product of the sizes of all sub-ranges.
|
finaloverridevirtual |
Range dimension. Returns the range's dimension, which is equivalent to the number of sub-ranges. If a sub-range has non-zero dimension this is NOT taken into account!
Implements CNORXZ::RangeBase.
Create extended range. Creates a new range consisting of the meta data spaces of this range and the range r
r | shared pointer to range used for extension |
Implements CNORXZ::RangeBase.
The type of the range's meta data
Implements CNORXZ::RangeBase.
|
finaloverridevirtual |
Meta data in string format at lexicographic position pos.
pos | size type argument |
Implements CNORXZ::RangeBase.
Access sub-ranges. In the case the range is multi-dimensional this function returns an array of all sub-ranges (empty is one-dimensional)
Reimplemented from CNORXZ::RangeBase.
Access sub-ranges. In the case the range is multi-dimensional the num-th sub-range can be accessed through this function
num | size type argument |
Reimplemented from CNORXZ::RangeBase.