Fixes#348
In issue #348 it is stated that the pattern fails to find the variable baseAddress in the parent of the parent of the attribute function. One parent is required to access the variables on the pattern that is using the attribute.
That pattern is used in the pattern that contains baseAddress as a pointer to an array of the children pattern and that seems to require an extra parent level to be added in order to access baseAddress without errors. The fix was tested on an xbe file extracted from an xbox cd rom and while it failed without the fix as stated in issue 348 with the fix it ran to completion without issues.
* repo-wide: trim trailing spaces
Note: This doesn't touch the .tbl files in encodings/ since they include
meaningful trailing spaces (`20= `)
* patterns: clean up duplicate semicolons
* ELF: add header magic check
* glTF: use type::Magic for magic value
* glTF: check that the file size in the header matches
* xgstexture: fix generics syntax for magic value
* JPEG: define hex enum with 0x00 instead of 0X00
* CI: update deprecated actions
---------
Co-authored-by: Nik <werwolv98@gmail.com>
* Add `current_bit_offset()` and `read_bits(...)` to `std::mem`
* Replace deprecated BitfieldOrder enum values with new clearer names
This adds new options named `MostToLeastSignificant` and `LeastToMostSignificant` to replace the old `LeftToRight` and `RightToLeft` names. These names should be much clearer about what they affect and how.
* Throw errors when `std::core::(get|set)_bitfield_order()` are called
* Update all patterns to work with the new bitfield behaviors