Classes | Enumerations | Functions
Typelib::MemLayout Namespace Reference

Classes

class  Visitor

Enumerations

enum  Operations {
  FLAG_MEMCPY, FLAG_ARRAY, FLAG_CONTAINER, FLAG_SKIP,
  FLAG_END
}

Functions

MemoryLayout::const_iterator skip_block (MemoryLayout::const_iterator begin, MemoryLayout::const_iterator end)

Detailed Description

Namespace used to define basic constants describing the memory layout of a type. The goal is to have a compact representation, in a buffer, of what is raw data, what is junk and what is Container objects.

This is used by most Value operations (init, ...)


Enumeration Type Documentation

Valid marshalling operations

FLAG_MEMCPY <byte count>=""> FLAG_SKIP <byte count>=""> FLAG_ARRAY <element count>=""> [marshalling ops for pointed-to type] FLAG_END FLAG_CONTAINER <pointer-to-Container-object> [marshalling ops for pointed-to type] FLAG_END

Enumerator:
FLAG_MEMCPY 
FLAG_ARRAY 
FLAG_CONTAINER 
FLAG_SKIP 
FLAG_END 

Definition at line 48 of file memory_layout.hh.


Function Documentation

MemoryLayout::const_iterator Typelib::MemLayout::skip_block ( MemoryLayout::const_iterator  begin,
MemoryLayout::const_iterator  end 
)

Skips the block starting at begin. end is the end of the complete layout (to avoid invalid memory accesses if the layout is incorrect)

It returns the position of the block's FLAG_END

Definition at line 170 of file memory_layout.cc.



typelib
Author(s): Sylvain Joyeux/sylvain.joyeux@m4x.org
autogenerated on Sat Jun 8 2019 18:49:23