PrevUpHomeNext

Containers

Standard Containers
Optionals
Visitable Structures

Besides reading and writing primitive values like numbers and strings, primer is also able to intelligently move aggregate objects to and from lua as tables.

This is accomplished by a number of (opt-in) partial-specializations of the primer::traits::read and primer::traits::push traits for these container types.

Because of the overall design, this makes primer able to recognize such containers as function parameters in API callbacks, or to pass such containers as arguments to calls to bound_function function objects. (See design.)

Primer can also give nice semantics to optional types like boost::optional, or std::optional from C++17. In primer, these types can be used to specify that a table member or function parameter is permitted to be missing, and that it is not an error if it could not be read.


PrevUpHomeNext