InterfacesBlock< INTERFACES > Struct Template Reference

#include <objectbase.h>

Inheritance diagram for InterfacesBlock< INTERFACES >:

Static Public Attributes

static const InterfaceReference *const value [sizeof...(INTERFACES)]
 
- Static Public Attributes inherited from Block< const InterfaceReference *const >
static const Bool GENERIC
 
- Static Public Attributes inherited from ArrayBase0< Block< const InterfaceReference *const, STRIDED, MOVE >, const InterfaceReference *const, BlockBase< const InterfaceReference *const, STRIDED >, DefaultCompare >
static const COLLECTION_KIND KIND
 

Additional Inherited Members

- Public Types inherited from Block< const InterfaceReference *const >
using Super = ArrayBase< Block< const InterfaceReference *const, STRIDED, MOVE >, const InterfaceReference *const, BlockBase< const InterfaceReference *const, STRIDED >, DefaultCompare >
 
using StrideType = typename std::conditional< GENERIC, Char, const InterfaceReference *const >::type
 
using IsBlock = std::true_type
 
using Iterator = BaseIterator< Block, STRIDED >
 
using ConstIterator = BaseIterator< const Block, STRIDED >
 
- Public Types inherited from Collection< Block< const InterfaceReference *const, STRIDED, MOVE >, const InterfaceReference *const, BlockBase< const InterfaceReference *const, STRIDED > >
using Super = BaseCollection< Block< const InterfaceReference *const, STRIDED, MOVE >, BlockBase< const InterfaceReference *const, STRIDED > >
 
using ValueType = const InterfaceReference *const
 
- Public Types inherited from BaseCollection< Block< const InterfaceReference *const, STRIDED, MOVE >, BlockBase< const InterfaceReference *const, STRIDED > >
using IsCollection = std::true_type
 
- Public Member Functions inherited from Block< const InterfaceReference *const >
 Block ()
 
 Block (const InterfaceReference *const *ptr, Int size, Int stride=(STRIDED &&GENERIC) ? -1 :SIZEOF(StrideType))
 
 Block (Iterator start, Int size, Int stride=(STRIDED &&GENERIC) ? -1 :SIZEOF(StrideType))
 
 Block (ConstIterator start, Int size, Int stride=(STRIDED &&GENERIC) ? -1 :SIZEOF(StrideType))
 
MAXON_IMPLICIT Block (const InterfaceReference *const(&array)[N])
 
MAXON_IMPLICIT Block (const std::initializer_list< typename std::remove_const< const InterfaceReference *const >::type > &list)
 
 Block (const Block &src)=default
 
Blockoperator= (const Block &src)=default
 
Result< void > CopyFrom (const Block &src)=delete
 
 operator ArrayImpl< Block & > ()=delete
 
 operator ArrayImpl< const Block & > () const=delete
 
Int GetStride () const
 
Bool IsStrided () const
 
void Set (const InterfaceReference *const *ptr, Int size, Int stride=(STRIDED &&GENERIC) ? -1 :SIZEOF(StrideType))
 
void Reset ()
 
 operator typename std::conditional< STRIDED, DummyReturnType, Block< const InterfaceReference *const, true, MOVE >>::type () const
 
 operator typename std::conditional< STRIDED||std::is_const< const InterfaceReference *const >::value, const DummyReturnType, Block< const const InterfaceReference *const, true, MOVE >>::type () const
 
 operator typename std::conditional< std::is_const< const InterfaceReference *const >::value, volatile DummyReturnType, const Block< const const InterfaceReference *const, STRIDED, MOVE > & >::type () const
 
 operator typename std::conditional< STRIDED||!MOVE, DummyReturnType &, Block< const InterfaceReference *const, true, false >>::type () const
 
 operator typename std::conditional< STRIDED||!MOVE||std::is_const< const InterfaceReference *const >::value, const DummyReturnType &, Block< const const InterfaceReference *const, true, false >>::type () const
 
 operator typename std::conditional<!MOVE||std::is_const< const InterfaceReference *const >::value, volatile DummyReturnType &, const Block< const const InterfaceReference *const, STRIDED, false > & >::type () const
 
 operator typename std::conditional<!MOVE, const volatile DummyReturnType &, const Block< const InterfaceReference *const, STRIDED, false > & >::type () const
 
 operator typename std::conditional< GENERIC, const volatile DummyReturnType, const Block< typename InheritConst< Generic, const InterfaceReference *const >::type, STRIDED > & >::type () const
 
const InterfaceReference *const * GetFirst () const
 
void SetFirst (const InterfaceReference *const *value)
 
const InterfaceReference *const * GetLast () const
 
const InterfaceReference *const & operator[] (Int index) const
 
Block Slice (Int start) const
 
Block Slice (Int start, Int end) const
 
Bool StartsWith (const Block &prefix) const
 
Iterator Begin () const
 
Iterator End () const
 
Int GetCapacityCount () const
 
Result< void > CopyValuesFrom (const Block< T2, S2 > &other)
 
Result< void > CopyValuesFrom (const COLLECTION &other)
 
Int GetMemorySize () const
 
Int GetBlock (Int index, Block< const const InterfaceReference *const, false > &block) const
 
Int GetBlock (Int index, Block< const InterfaceReference *const, false > &block)
 
Int GetBlock (Int index, StridedBlock< const InterfaceReference *const > &block)
 
Int GetBlock (Int index, StridedBlock< const const InterfaceReference *const > &block) const
 
- Public Member Functions inherited from ArrayBase< Block< const InterfaceReference *const, STRIDED, MOVE >, const InterfaceReference *const, BlockBase< const InterfaceReference *const, STRIDED >, DefaultCompare >
MAXON_ATTRIBUTE_FORCE_INLINE ArrayBase (ARGS &&... args)
 
ArrayImpl< Block< const InterfaceReference *const, STRIDED, MOVE > & > ToArray ()
 
ArrayImpl< const Block< const InterfaceReference *const, STRIDED, MOVE > & > ToArray () const
 
MAXON_ATTRIBUTE_FORCE_INLINE operator ArrayImpl< Block< const InterfaceReference *const, STRIDED, MOVE > & > ()
 
MAXON_ATTRIBUTE_FORCE_INLINE operator ArrayImpl< const Block< const InterfaceReference *const, STRIDED, MOVE > & > () const
 
- Public Member Functions inherited from ArrayBase0< Block< const InterfaceReference *const, STRIDED, MOVE >, const InterfaceReference *const, BlockBase< const InterfaceReference *const, STRIDED >, DefaultCompare >
MAXON_ATTRIBUTE_FORCE_INLINE ArrayBase0 (ARGS &&... args)
 
Bool IsValidIndex (Int index) const
 
Result< void > CheckValidIndex (Int index) const
 
Int FindIndex (typename ByValueParam< const InterfaceReference *const >::type v, Int start) const
 
Int FindLastIndex (typename ByValueParam< const InterfaceReference *const >::type v) const
 
Int FindLastIndex (typename ByValueParam< const InterfaceReference *const >::type v, Int start) const
 
Bool EraseFirst (typename ByValueParam< const InterfaceReference *const >::type v)
 
Int EraseAll (typename ByValueParam< const InterfaceReference *const >::type v)
 
Result< void > AppendAllImpl (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags, Bool overwrite, OverloadRank0)
 
Result< void > InsertAll (Int index, COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags=COLLECTION_RESIZE_FLAGS::ON_GROW_RESERVE_CAPACITY)
 
Result< void > Add (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags=COLLECTION_RESIZE_FLAGS::ON_GROW_RESERVE_CAPACITY)
 
Result< void > SubtractImpl (COLLECTION2 &&other, OverloadRank0)
 
Bool IsEqualImpl (const COLLECTION2 &other, COMPARE &&cmp, OverloadRank0) const
 
UInt GetHashCode () const
 
MAXON_ATTRIBUTE_FORCE_INLINE AutoIterator< Block< const InterfaceReference *const, STRIDED, MOVE > > Slice (Int start)
 
MAXON_ATTRIBUTE_FORCE_INLINE AutoIterator< const Block< const InterfaceReference *const, STRIDED, MOVE > > Slice (Int start) const
 
MAXON_ATTRIBUTE_FORCE_INLINE AutoIterator< Block< const InterfaceReference *const, STRIDED, MOVE > > Slice (Int start, Int end)
 
MAXON_ATTRIBUTE_FORCE_INLINE AutoIterator< const Block< const InterfaceReference *const, STRIDED, MOVE > > Slice (Int start, Int end) const
 
BlockIterator< Block< const InterfaceReference *const, STRIDED, MOVE >, const InterfaceReference *const, false, false > GetBlocks ()
 
BlockIterator< Block< const InterfaceReference *const, STRIDED, MOVE >, const InterfaceReference *const, true, false > GetBlocks () const
 
BlockIterator< Block< const InterfaceReference *const, STRIDED, MOVE >, const InterfaceReference *const, false, true > GetStridedBlocks ()
 
BlockIterator< Block< const InterfaceReference *const, STRIDED, MOVE >, const InterfaceReference *const, true, true > GetStridedBlocks () const
 
- Public Member Functions inherited from Collection< Block< const InterfaceReference *const, STRIDED, MOVE >, const InterfaceReference *const, BlockBase< const InterfaceReference *const, STRIDED > >
MAXON_ATTRIBUTE_FORCE_INLINE Collection (ARGS &&... args)
 
ResultOk< void > VariadicAppend ()
 
Result< void > VariadicAppend (V &&value, VALUES &&... rest)
 
 operator ValueReceiver< const const InterfaceReference *const & > ()
 
 operator ValueReceiver< const InterfaceReference *const && > ()
 
 operator ValueReceiver< typename std::conditional< std::is_scalar< const InterfaceReference *const >::value, const InterfaceReference *const, DummyParamType & >::type > ()
 
Result< BoolForEach (FN &&callback)
 
H::Iterator Find (typename ByValueParam< const InterfaceReference *const >::type v)
 
H::ConstIterator Find (typename ByValueParam< const InterfaceReference *const >::type v) const
 
Int FindIndex (typename ByValueParam< const InterfaceReference *const >::type v) const
 
MAXON_ATTRIBUTE_FORCE_INLINE Bool Contains (typename ByValueParam< const InterfaceReference *const >::type v) const
 
- Public Member Functions inherited from BaseCollection< Block< const InterfaceReference *const, STRIDED, MOVE >, BlockBase< const InterfaceReference *const, STRIDED > >
MAXON_ATTRIBUTE_FORCE_INLINE BaseCollection (ARGS &&... args)
 
MAXON_ATTRIBUTE_FORCE_INLINE std::enable_if< maxon::IsCollection< COLLECTION2 >::value, Bool >::type operator== (const COLLECTION2 &other) const
 
MAXON_ATTRIBUTE_FORCE_INLINE std::enable_if< maxon::IsCollection< COLLECTION2 >::value, Bool >::type operator!= (const COLLECTION2 &other) const
 
MAXON_ATTRIBUTE_FORCE_INLINE std::enable_if< maxon::IsCollection< COLLECTION2 >::value &&!std::is_same< typename std::decay< COMPARE >::type, EQUALITY >::value, Bool >::type IsEqual (const COLLECTION2 &other, COMPARE &&cmp=COMPARE()) const
 
MAXON_ATTRIBUTE_FORCE_INLINE Result< void > AppendAll (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags=COLLECTION_RESIZE_FLAGS::ON_GROW_RESERVE_CAPACITY)
 
MAXON_ATTRIBUTE_FORCE_INLINE Result< void > CopyFrom (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags=COLLECTION_RESIZE_FLAGS::FIT_TO_SIZE)
 
MAXON_ATTRIBUTE_FORCE_INLINE Result< void > Subtract (COLLECTION2 &&other)
 
MAXON_ATTRIBUTE_FORCE_INLINE Result< void > Intersect (const COLLECTION2 &other)
 
Bool Intersects (const COLLECTION2 &other) const
 
MAXON_ATTRIBUTE_FORCE_INLINE Result< void > CopyFromImpl (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags, OverloadRank0)
 
Result< void > AppendAllImpl (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags, Bool overwrite, OverloadRank0)
 
Result< void > IntersectImpl (COLLECTION2 &&other, OverloadRank0)
 
MAXON_ATTRIBUTE_FORCE_INLINE Bool IsEmpty () const
 
MAXON_ATTRIBUTE_FORCE_INLINE Bool IsPopulated () const
 
String ToString (const FormatStatement *formatStatement) const
 
MAXON_ATTRIBUTE_FORCE_INLINE Bool ContainsAll (COLLECTION2 &&other) const
 
Bool ContainsAllImpl (COLLECTION2 &&other, OverloadRank0) const
 
- Public Member Functions inherited from BlockBase< const InterfaceReference *const, STRIDED >
 BlockBase (const InterfaceReference *const *ptr, Int size, Int stride)
 
Int GetCount () const
 
void SetCount (Int cnt)
 
- Static Public Member Functions inherited from Block< const InterfaceReference *const >
static const BlockNullValueRef ()
 
- Static Public Member Functions inherited from Collection< Block< const InterfaceReference *const, STRIDED, MOVE >, const InterfaceReference *const, BlockBase< const InterfaceReference *const, STRIDED > >
static const const InterfaceReference *const & GetMapKey (const const InterfaceReference *const &key)
 
- Protected Member Functions inherited from BlockBase< const InterfaceReference *const, STRIDED >
Int PrivateGetStride () const
 
- Protected Attributes inherited from BlockBase< const InterfaceReference *const, STRIDED >
const InterfaceReference *const * _ptr
 
Int _size
 
Int _stride