A code generation utility for C++ and Python based on MLC configs.
- Serialization generation
- Handling constant data (
DataStorage) - Interface generation for unit testing
- Reference counters and
intrusive_ptrgeneration - Visitor pattern support (https://en.wikipedia.org/wiki/Visitor_pattern)
- ECS support: https://en.wikipedia.org/wiki/Entity_component_system
cd ci
./build_and_install.sh
cd ci
./tests.sh
class core/Request<RequestBase>
{
Action action
int int_data
float float_data = 0
fn void some_function(){}
}
class: keywordcore/: module. Used only to group classes into folders for C++ generationRequest: class nameRequestBase: base class. Multiple inheritance is not supported{ ... }: class or method bodyint int_data: integer field namedint_datafloat float_data = 0: float field namedfloat_datawith an initializerfn void some_function(){}: class method without a body