Skip to content

DataBody

class DataBody

Represents a body containing data. This is used for .data statements and encoded instructions.

DEFINITION
class DataBody;

constructor DataBody

DEFINITION
DataBody ( );

constructor DataBody

DEFINITION
DataBody ( std::vector< DataBodyElement >  data );
PARAMETERDESCRIPTION
data

method append_subvirtual

DEFINITION
virtual std::optional< Body >  append_sub ( const Body & body,
const Body & element );
PARAMETERDESCRIPTION
body
element
RETURNSDESCRIPTION
std::optional< Body >

method appending

DEFINITION
Body  appending ( const DataBody * body );
PARAMETERDESCRIPTION
body
RETURNSDESCRIPTION
Body

method appendingconst

DEFINITION
Body  appending ( const std::vector< DataBodyElement > & elements ) const;
PARAMETERDESCRIPTION
elements
RETURNSDESCRIPTION
Body

method cloneconstvirtual

DEFINITION
virtual std::shared_ptr< BodyElement >  clone ( ) const;
RETURNSDESCRIPTION
std::shared_ptr< BodyElement >

method collect_objectsconstvirtual

DEFINITION
virtual void  collect_objects ( std::unordered_set< Object * > & objects ) const;
PARAMETERDESCRIPTION
objects

method emptyconstvirtual

DEFINITION
virtual bool  empty ( ) const;
RETURNSDESCRIPTION
bool

method encodeconstvirtual

DEFINITION
virtual void  encode ( std::string & bytes,
const Memory * memory ) const;
PARAMETERDESCRIPTION
bytes
memory

method evaluatedconstvirtual

DEFINITION
virtual std::optional< Body >  evaluated ( const EvaluationContext & context ) const;
PARAMETERDESCRIPTION
context
RETURNSDESCRIPTION
std::optional< Body >

method serializeconstvirtual

DEFINITION
virtual void  serialize ( std::ostream & stream,
const std::string & prefix ) const;
PARAMETERDESCRIPTION
stream
prefix

member data

DEFINITION
std::vector< DataBodyElement >  data;

class DataBodyElement

DEFINITION
class DataBodyElement;

constructor DataBodyElement

DEFINITION
DataBodyElement ( Expression  expression,
std::optional< Encoder >  encoding );
PARAMETERDESCRIPTION
expression
encoding

method sizeconst

DEFINITION
std::optional< uint64_t >  size ( ) const;
RETURNSDESCRIPTION
std::optional< uint64_t >

method size_rangeconst

DEFINITION
SizeRange  size_range ( ) const;
RETURNSDESCRIPTION
SizeRange

member encoding

DEFINITION
std::optional< Encoder >  encoding;

member expression

DEFINITION
Expression  expression;