ASN.1 C++ Compiler
Modern C++ code generation with the memory model and standard you choose.
The ASN.1 C++ Compiler produces idiomatic C++ classes that feel hand-written. Choose your C++ standard, your memory management strategy, and your type mappings β the compiler adapts to your codebase, not the other way around.
C++03 or C++17, your call. Target legacy codebases with C++03 unions, or enable C++17 for std::variant-based CHOICE types and modern language features. The generated code matches the standard you specify.
Memory management that fits your architecture. Use raw pointers for minimal overhead, unique_ptr for clear ownership semantics, or shared_ptr for shared lifetimes. OPTIONAL fields map to the pointer type you select β no compromises.
Smart defaults, full control. Out of the box, the compiler picks the smallest integer type that fits your constraints, wraps types in module-named namespaces, and generates clean destructors. Every mapping is configurable when you need precision.
Seven encoding rules, one API. BER, DER, UPER, APER, OER, XER, and JER are all available through a consistent encode/decode interface. Test with one rule, deploy with another.