The previous code was relying on the to_be and to_le functions from the
standard library. These now rely on macros that I wrote to handle the
bit packing and unpacking. These were macros and not functions because
it is really hard to define the types and capabilities needed to
turn them into general functions. As such, the macros should never be
published publically and the Converters should be used for conversions.
The Transmutable property should be used for serialization and internally
the primitive types, Elements, all use the Converter functions and any
other objects should use the Transmutable primitives to build their
binary forms.
This library is relatively stable and has been gone over pretty well.
As such, it is now at version 1.0.0 and is considered ready for
public release (Use in the public space, not giving the code away).
The Sigils library will now only be compiled in and able to convert
math structures if the convert_sigils feature is selected.
use_std would have also been set as a feature, but the library heavily
uses std::collections::vec::Vec. Until a non-std version of a collection
has been written, then this needs to be used.
This tests buffer overflow for the basic types. It does not currently
test the platform int and uint until the final function definitions
are determined.