Releases: Calcoph/hexpyt
Releases · Calcoph/hexpyt
Version 0.2.1
New Features
- New primitives: s24,s48,s96,u24,u48,u96
- New primitive: Array
- Optional parameter to select indentation character(s) when translating
- Will follow #include paths to search (but not translate) for additional definitions
else if
translates correctly toelif
- Try apply #define s.
- Try to translate namespaces (their usage, not definition)
- Use IntStructs (u8, s16, etc.) as if they were dollars (see README for exceptions)
Bug Fixes
- BitFields now work like ImHex
- Various fixes to operators with primitives
- Fixes to signed ints
Version 0.2.0
New features
- Constructors (
__init__
) are now more intuitive. - Added @ operator, which works like ImHex's.
- Added operators to integer primitive types, so if both a and b are u8,
a+b
works, instead of the oldint(a)+int(b)
ora.value+b.value
. - Primitives can now be initialized with a value, without a
Dollar
. - Names for primitives and auto-generated classes are now optional.
- Various bug fixes.
Breaking changes
Since the constructors are different, new generated files won't be compatible with old ones without changing them.
Old:
byts : bytes = b'\x58'
offset: Dollar = Dollar(0x00, byts)
my_int: u8 = u8("my_int", offset)
New:
byts : bytes = b'\x58'
offset: Dollar = Dollar(0x00, byts)
my_int: u8 = u8() @ offset
Version 0.1.1
Bug fixes
- Fixed type annotations which prevented it from working in newer python versions
New features
- Dollar and integer primitives don't have to be casted to int() before doing operations on them
- Float, double, char and Bool work as expected. char16 works like an array of 2 chars
Version 0.0.1
Convert simple structs and bitfields to python classes.