Arion 1.0.2-alpha
A high-performance C++ framework for emulating executable binaries.
 
Loading...
Searching...
No Matches
arion_poly_struct::POLYMORPHIC_STRUCT_FIELD Struct Reference

Structure defining a field within a polymorphic struct, including its constraints and type metadata. More...

#include <struct_utils.hpp>

Public Member Functions

 POLYMORPHIC_STRUCT_FIELD (POLYMORPHIC_STRUCT_CONSTRAINT constraint, POLYMORPHIC_STRUCT_FIELD_TYPE type, std::shared_ptr< arion_type::KernelType > arion_type, std::string name, size_t sz)
 
 POLYMORPHIC_STRUCT_FIELD (POLYMORPHIC_STRUCT_CONSTRAINT constraint, POLYMORPHIC_STRUCT_FIELD_TYPE type, std::shared_ptr< arion_type::KernelType > arion_type, std::string name)
 
 POLYMORPHIC_STRUCT_FIELD (POLYMORPHIC_STRUCT_FIELD_TYPE type, std::shared_ptr< arion_type::KernelType > arion_type, std::string name, size_t sz)
 
 POLYMORPHIC_STRUCT_FIELD (POLYMORPHIC_STRUCT_FIELD_TYPE type, std::shared_ptr< arion_type::KernelType > arion_type, std::string name)
 

Public Attributes

POLYMORPHIC_STRUCT_CONSTRAINT constraint
 Constraints dictating when this field is active.
 
POLYMORPHIC_STRUCT_FIELD_TYPE type
 The type and size of the field.
 
std::shared_ptr< arion_type::KernelTypearion_type
 The Arion type object used for displaying/interpreting the field value.
 
std::string name
 The name of the field within the structure.
 
size_t sz
 Size of the array (if an array type, otherwise 0).
 

Detailed Description

Structure defining a field within a polymorphic struct, including its constraints and type metadata.

Constructor & Destructor Documentation

◆ POLYMORPHIC_STRUCT_FIELD() [1/4]

arion_poly_struct::POLYMORPHIC_STRUCT_FIELD::POLYMORPHIC_STRUCT_FIELD ( POLYMORPHIC_STRUCT_CONSTRAINT  constraint,
POLYMORPHIC_STRUCT_FIELD_TYPE  type,
std::shared_ptr< arion_type::KernelType arion_type,
std::string  name,
size_t  sz 
)
inline

Builder for POLYMORPHIC_STRUCT_FIELD instances with full parameters.

◆ POLYMORPHIC_STRUCT_FIELD() [2/4]

arion_poly_struct::POLYMORPHIC_STRUCT_FIELD::POLYMORPHIC_STRUCT_FIELD ( POLYMORPHIC_STRUCT_CONSTRAINT  constraint,
POLYMORPHIC_STRUCT_FIELD_TYPE  type,
std::shared_ptr< arion_type::KernelType arion_type,
std::string  name 
)
inline

Builder for non-array POLYMORPHIC_STRUCT_FIELD instances with constraints.

◆ POLYMORPHIC_STRUCT_FIELD() [3/4]

arion_poly_struct::POLYMORPHIC_STRUCT_FIELD::POLYMORPHIC_STRUCT_FIELD ( POLYMORPHIC_STRUCT_FIELD_TYPE  type,
std::shared_ptr< arion_type::KernelType arion_type,
std::string  name,
size_t  sz 
)
inline

Builder for POLYMORPHIC_STRUCT_FIELD instances with array size but no constraints.

◆ POLYMORPHIC_STRUCT_FIELD() [4/4]

arion_poly_struct::POLYMORPHIC_STRUCT_FIELD::POLYMORPHIC_STRUCT_FIELD ( POLYMORPHIC_STRUCT_FIELD_TYPE  type,
std::shared_ptr< arion_type::KernelType arion_type,
std::string  name 
)
inline

Builder for non-array POLYMORPHIC_STRUCT_FIELD instances with no constraints.

Member Data Documentation

◆ arion_type

std::shared_ptr<arion_type::KernelType> arion_poly_struct::POLYMORPHIC_STRUCT_FIELD::arion_type

The Arion type object used for displaying/interpreting the field value.

◆ constraint

POLYMORPHIC_STRUCT_CONSTRAINT arion_poly_struct::POLYMORPHIC_STRUCT_FIELD::constraint

Constraints dictating when this field is active.

◆ name

std::string arion_poly_struct::POLYMORPHIC_STRUCT_FIELD::name

The name of the field within the structure.

◆ sz

size_t arion_poly_struct::POLYMORPHIC_STRUCT_FIELD::sz

Size of the array (if an array type, otherwise 0).

◆ type

POLYMORPHIC_STRUCT_FIELD_TYPE arion_poly_struct::POLYMORPHIC_STRUCT_FIELD::type

The type and size of the field.


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