Releases: Samuel-Tyler/fast_ber
v0.4
v0.4 Add Real, Conan Support and fast_ber_view
This release adds the Real type, Conan support and fast_ber_view
. Several performance and usability issues are also addressed.
- Add DefaultType
- Allow circular Choices
- Bug fixes and testing improvements
- Add conan
- Add fast_ber_view (Visualize arbitrary ber data)
- Reorganize test cases
- Add optimized BerContainers, use as a base for ber types
- Correct comment parsing issue
- Performance Improvements
v0.3
v0.3 Improve API
This release includes a number of improvements to unify interfaces and usability of the library.
- Tags are now template parameters to types
- TaggedType removed
- Populated all string types
- Added JSON printing (operator<<) for all types
- Add choice of storage policy for SequenceOf and Optional, allowing for circular refereneces
- Add encoded_length(type) function to pre-determine a type's encode length
- Support C++17 in GCC/Clang/VC++
v0.2
v0.2 Improve ASN.1 Parsing
This release includes a number of improvements to the parsing of ASN.1 files. Additional parsing tests are executed validating the usage of various ASN.1 features.
- Add tests testing validity of generated hpp files from many different ASN.1 schemas
- Split resolving of object classes into separate build stage
- Handle parameterized types at compile stage
- Fix issues with windows build
- Add parsing of ANY type
- Improve parsing of constrained types
- Add parsing of TypeIdentifier in DefinedObjectClass type
- Handle nested enumeration types
- Ignore unknown ASCII chars in ASN.1 schema
v0.1
Initial Release of fast_ber
fast_ber_compiler
This release introduces fast_ber_compiler, which produces C++ header files for decoding a specific .asn file. The following basic ASN.1 types are supported by fast_ber_compiler.
- String types
- Integer types
- GeneralizedTime
- Set / SetOf
- Sequence / SequenceOf
- Paramaterized types
- Optional types
- Enumerated
- Choice
- Null
- Boolean
- Object Identifier
BER encoding and decoding functionality is provided for all types.
fast_ber_compiler
The various ASN.1 types and the compiler's generated output are tested using unit tests within the Catch2 framework. The tests can by run with the command 'ctest' in the build directory. Builds and tests are run on Linux and Windows for each commit by Travis CI and App Veyor respectively.
fast_ber_benchmarks
Benchmarks demonstrate the performance of each of the components added in this release.