ICG 2
Electric Boogaloo
Public Member Functions | List of all members
SpecifiedSequenceDataType< T > Class Template Reference

#include <SpecifiedSequenceDataType.hpp>

Inheritance diagram for SpecifiedSequenceDataType< T >:
SequenceDataType DataType

Public Member Functions

 SpecifiedSequenceDataType (std::string typeSpecifierName)
 
 ~SpecifiedSequenceDataType ()=default
 
 SpecifiedSequenceDataType (const SpecifiedSequenceDataType< T > &other)=delete
 
SpecifiedSequenceDataTypeoperator= (SpecifiedSequenceDataType< T > rhs)=delete
 
std::vector< void * > getElementAddresses (void *address) const override
 Given the address of a sequence of this type, get a list of all the addresses of the elements within. More...
 
bool resize (void *address, int n_elems) const
 resize the underlying container More...
 
int getNumElements (void *address) const override
 Given the address of a sequence of this type, get the number of elements in this sequence. More...
 
bool clear (void *address) const override
 clear the underlying container More...
 
- Public Member Functions inherited from SequenceDataType
 SequenceDataType (std::string typeSpecifierName, int typeSize, void *(*allocator)(int), void(*deAllocator)(void *))
 Construct an SequenceDataType. More...
 
 SequenceDataType (const SequenceDataType &original)=delete
 
 ~SequenceDataType ()
 
bool validate (DataTypeInator *dataTypeInator) override
 Verify that all of the types that are named by this DataType or subordinate DataTypes are resolvable to actual DataTypes in the TypeDictionary. More...
 
bool isValid () const override
 Determine whether this type has already been successfully validated. More...
 
size_t getSize () const override
 
void * createInstance (unsigned int num) const override
 Create one or more instances of this type. More...
 
void deleteInstance (void *address) const override
 Delete this instance. More...
 
std::string getTypeSpecName () const override
 Get the Type Spec Name object. More...
 
std::string makeDeclaration (std::string declarator) const override
 
bool accept (DataTypeVisitor *visitor) const override
 
std::shared_ptr< const DataTypegetSubType () const
 Get the type of the elements of this sequence. More...
 
- Public Member Functions inherited from DataType
virtual ~DataType ()
 
virtual std::string toString () const
 

Constructor & Destructor Documentation

◆ SpecifiedSequenceDataType() [1/2]

template<typename T >
SpecifiedSequenceDataType< T >::SpecifiedSequenceDataType ( std::string  typeSpecifierName)
inline

◆ ~SpecifiedSequenceDataType()

template<typename T >
SpecifiedSequenceDataType< T >::~SpecifiedSequenceDataType ( )
default

◆ SpecifiedSequenceDataType() [2/2]

template<typename T >
SpecifiedSequenceDataType< T >::SpecifiedSequenceDataType ( const SpecifiedSequenceDataType< T > &  other)
delete

Member Function Documentation

◆ clear()

template<typename T >
bool SpecifiedSequenceDataType< T >::clear ( void *  address) const
inlineoverridevirtual

clear the underlying container

Parameters
addressaddress of sequence object to clear
Returns
int num elements to resize to

Implements SequenceDataType.

◆ getElementAddresses()

template<typename T >
std::vector<void *> SpecifiedSequenceDataType< T >::getElementAddresses ( void *  address) const
inlineoverridevirtual

Given the address of a sequence of this type, get a list of all the addresses of the elements within.

Parameters
addresspointer to a sequence object
Returns
std::vector<void *> addresses of all elements

Implements SequenceDataType.

◆ getNumElements()

template<typename T >
int SpecifiedSequenceDataType< T >::getNumElements ( void *  address) const
inlineoverridevirtual

Given the address of a sequence of this type, get the number of elements in this sequence.

Parameters
addresspointer to a sequence object
Returns
int number of elements in this sequence

Implements SequenceDataType.

◆ operator=()

template<typename T >
SpecifiedSequenceDataType& SpecifiedSequenceDataType< T >::operator= ( SpecifiedSequenceDataType< T >  rhs)
delete

◆ resize()

template<typename T >
bool SpecifiedSequenceDataType< T >::resize ( void *  address,
int  n_elems 
) const
inlinevirtual

resize the underlying container

Parameters
addressaddress of sequence object to resize
n_elemsint num elements to resize to
Returns
bool whether the resize was successful

Implements SequenceDataType.


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