ledger-core
Public Member Functions | List of all members
ledger::core::DynamicArray Class Reference
+ Inheritance diagram for ledger::core::DynamicArray:
+ Collaboration diagram for ledger::core::DynamicArray:

Public Member Functions

int64_t size () override
 
template<typename T >
optional< T > get (int64_t index)
 A generic indexed and type-safe getter.
 
optional< std::string > getString (int64_t index) override
 
optional< int32_t > getInt (int64_t index) override
 
optional< int64_t > getLong (int64_t index) override
 
optional< double > getDouble (int64_t index) override
 
optional< std::vector< uint8_t > > getData (int64_t index) override
 
optional< bool > getBoolean (int64_t index) override
 
std::shared_ptr< api::DynamicObjectgetObject (int64_t index) override
 
std::shared_ptr< api::DynamicArraygetArray (int64_t index) override
 
template<typename T >
std::shared_ptr< DynamicArraypush (T value)
 A generic and type-safe push.
 
std::shared_ptr< api::DynamicArraypushInt (int32_t value) override
 
std::shared_ptr< api::DynamicArraypushLong (int64_t value) override
 
std::shared_ptr< api::DynamicArraypushString (const std::string &value) override
 
std::shared_ptr< api::DynamicArraypushDouble (double value) override
 
std::shared_ptr< api::DynamicArraypushData (const std::vector< uint8_t > &value) override
 
std::shared_ptr< api::DynamicArraypushBoolean (bool value) override
 
std::shared_ptr< api::DynamicArraypushObject (const std::shared_ptr< api::DynamicObject > &value) override
 
std::shared_ptr< api::DynamicArraypushArray (const std::shared_ptr< api::DynamicArray > &value) override
 
std::shared_ptr< api::DynamicArrayconcat (const std::shared_ptr< api::DynamicArray > &array) override
 
bool isReadOnly () override
 
void setReadOnly (bool enable)
 
optional< api::DynamicTypegetType (int64_t index) override
 
bool remove (int64_t index) override
 
std::string dump () override
 
std::vector< uint8_t > serialize () override
 
std::ostream & dump (std::ostream &ss, int depth) const
 
template<class Archive >
void serialize (Archive &ar)
 
- Public Member Functions inherited from ledger::core::api::DynamicArray
virtual std::shared_ptr< DynamicArraypushObject (const std::shared_ptr< DynamicObject > &value)=0
 
virtual std::shared_ptr< DynamicArraypushArray (const std::shared_ptr< DynamicArray > &value)=0
 
virtual std::shared_ptr< DynamicArrayconcat (const std::shared_ptr< DynamicArray > &array)=0
 

Additional Inherited Members

- Static Public Member Functions inherited from ledger::core::api::DynamicArray
static std::shared_ptr< DynamicArraynewInstance ()
 
static std::shared_ptr< DynamicArrayload (const std::vector< uint8_t > &serialized)
 

Member Function Documentation

◆ dump()

std::string ledger::core::DynamicArray::dump ( )
overridevirtual

Dump whole object's content as string.

Returns
string, the string representation of the array

Implements ledger::core::api::DynamicArray.

◆ getArray()

std::shared_ptr< api::DynamicArray > ledger::core::DynamicArray::getArray ( int64_t  index)
overridevirtual

Get DynamicArray object at a given index.

Parameters
index,64-bitinteger
Returns
Optional DynamicArray

Implements ledger::core::api::DynamicArray.

◆ getBoolean()

optional< bool > ledger::core::DynamicArray::getBoolean ( int64_t  index)
overridevirtual

Get bool at a given index.

Parameters
index,64-bitinteger
Returns
Optional bool

Implements ledger::core::api::DynamicArray.

◆ getData()

optional< std::vector< uint8_t > > ledger::core::DynamicArray::getData ( int64_t  index)
overridevirtual

Get binary at a given index.

Parameters
index,64-bitinteger
Returns
Optional binary

Implements ledger::core::api::DynamicArray.

◆ getDouble()

optional< double > ledger::core::DynamicArray::getDouble ( int64_t  index)
overridevirtual

Get double at a given index.

Parameters
index,64-bitinteger
Returns
Optional double

Implements ledger::core::api::DynamicArray.

◆ getInt()

optional< int32_t > ledger::core::DynamicArray::getInt ( int64_t  index)
overridevirtual

Get 32-bit integer at a given index.

Parameters
index,64-bitinteger
Returns
Optional 32-bit integer

Implements ledger::core::api::DynamicArray.

◆ getLong()

optional< int64_t > ledger::core::DynamicArray::getLong ( int64_t  index)
overridevirtual

Get 64-bit integer at a given index.

Parameters
index,64-bitinteger
Returns
Optional 64-bit integer

Implements ledger::core::api::DynamicArray.

◆ getObject()

std::shared_ptr< api::DynamicObject > ledger::core::DynamicArray::getObject ( int64_t  index)
overridevirtual

Get DynamicObject object at a given index.

Parameters
index,64-bitinteger
Returns
Optional DynamicObject

Implements ledger::core::api::DynamicArray.

◆ getString()

optional< std::string > ledger::core::DynamicArray::getString ( int64_t  index)
overridevirtual

Get a string at a given index.

Parameters
index,64-bitinteger
Returns
Optional string

Implements ledger::core::api::DynamicArray.

◆ getType()

optional< api::DynamicType > ledger::core::DynamicArray::getType ( int64_t  index)
overridevirtual

Get type of value stored at a given index.

Parameters
index,64bits integer
Returns
Optional DynamicType enum entry

Implements ledger::core::api::DynamicArray.

◆ isReadOnly()

bool ledger::core::DynamicArray::isReadOnly ( )
overridevirtual

Get readonly status of object.

Returns
bool, whether the array is in read-only mode

Implements ledger::core::api::DynamicArray.

◆ pushBoolean()

std::shared_ptr< api::DynamicArray > ledger::core::DynamicArray::pushBoolean ( bool  value)
overridevirtual

Push a bool.

Parameters
value,bool
Returns
DynamicArray with value stored in it

Implements ledger::core::api::DynamicArray.

◆ pushData()

std::shared_ptr< api::DynamicArray > ledger::core::DynamicArray::pushData ( const std::vector< uint8_t > &  value)
overridevirtual

Push a binary.

Parameters
value,binary
Returns
DynamicArray with value stored in it

Implements ledger::core::api::DynamicArray.

◆ pushDouble()

std::shared_ptr< api::DynamicArray > ledger::core::DynamicArray::pushDouble ( double  value)
overridevirtual

Push a double.

Parameters
value,double
Returns
DynamicArray with value stored in it

Implements ledger::core::api::DynamicArray.

◆ pushInt()

std::shared_ptr< api::DynamicArray > ledger::core::DynamicArray::pushInt ( int32_t  value)
overridevirtual

Push a 32-bit integer.

Parameters
value,32-bitinteger
Returns
DynamicArray with value stored in it

Implements ledger::core::api::DynamicArray.

◆ pushLong()

std::shared_ptr< api::DynamicArray > ledger::core::DynamicArray::pushLong ( int64_t  value)
overridevirtual

Push a 64-bit integer.

Parameters
value,64-bitinteger
Returns
DynamicArray with value stored in it

Implements ledger::core::api::DynamicArray.

◆ pushString()

std::shared_ptr< api::DynamicArray > ledger::core::DynamicArray::pushString ( const std::string &  value)
overridevirtual

Push a string.

Parameters
value,string
Returns
DynamicArray with value stored in it

Implements ledger::core::api::DynamicArray.

◆ remove()

bool ledger::core::DynamicArray::remove ( int64_t  index)
overridevirtual

Delete value stored at given index.

Parameters
index,64bits integer
Returns
bool, true if deletion succeeded

Implements ledger::core::api::DynamicArray.

◆ serialize()

std::vector< uint8_t > ledger::core::DynamicArray::serialize ( )
overridevirtual

Serialize whole object to a binary.

Returns
binary, the serialized array

Implements ledger::core::api::DynamicArray.

◆ size()

int64_t ledger::core::DynamicArray::size ( )
overridevirtual

Get count of values.

Returns
64-bit integer

Implements ledger::core::api::DynamicArray.


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