ZeroBuf  0.1.0
ZeroBuf is a replacement for FlatBuffers
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
zerobuf::Schema Struct Reference

A runtime and optimized representation of the schema file input, which describes the data layout of a ZeroBuf object. More...

#include <Schema.h>

+ Collaboration diagram for zerobuf::Schema:

Public Types

enum  FieldEnum {
  FIELD_NAME, FIELD_TYPE, FIELD_DATAOFFSET, FIELD_SIZE,
  FIELD_ISSTATIC
}
 Access enums for the field tuple in the object. More...
 
typedef std::tuple
< std::string, std::string,
size_t, size_t, bool > 
Field
 Contains the necessary information to describe one object field. More...
 

Public Attributes

const size_t staticSize
 The static size of the object. More...
 
const size_t numDynamic
 The number of dynamic fields in the object. More...
 
const servus::uint128_t type
 The type identifier of the object. More...
 
const std::vector< Fieldfields
 All the fields in object.
 

Detailed Description

A runtime and optimized representation of the schema file input, which describes the data layout of a ZeroBuf object.

Definition at line 21 of file Schema.h.

Member Typedef Documentation

typedef std::tuple< std::string, std::string, size_t, size_t, bool > zerobuf::Schema::Field

Contains the necessary information to describe one object field.

Definition at line 53 of file Schema.h.

Member Enumeration Documentation

Access enums for the field tuple in the object.

Enumerator
FIELD_NAME 

the name of the field

FIELD_TYPE 

the type of the field

FIELD_DATAOFFSET 

the data offset in the allocator

FIELD_SIZE 

size of static arrays, size offset in the allocator for dynamic arrays

FIELD_ISSTATIC 

bool if the field is static or not

Definition at line 42 of file Schema.h.

Member Data Documentation

const size_t zerobuf::Schema::numDynamic

The number of dynamic fields in the object.

See Also
NonMovingBaseAllocator

Definition at line 33 of file Schema.h.

const size_t zerobuf::Schema::staticSize

The static size of the object.

See Also
NonMovingBaseAllocator

Definition at line 27 of file Schema.h.

const servus::uint128_t zerobuf::Schema::type

The type identifier of the object.

See Also
ZeroBuf::getZerobufType()

Definition at line 39 of file Schema.h.


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