kaitai_struct_compiler
kaitai_struct_compiler copied to clipboard
Kaitai Struct: compiler to translate .ksy => .cpp / .cs / .dot / .go / .java / .js / .lua / .nim / .php / .pm / .py / .rb
Due to C++ it was not possible to call `doStringLiteral` in `BaseTranslator`, because in C++ this method returns `std::string` object instead of a `"..."` literal. Fixes the following KST tests:...
The actual fix contained in the first commit. The next commits just a minor style nits, which makes generated code looks better and gives more meaningful name to couple of...
Fixes the warnings: ``` [warn] D:\Projects\parsers\kaitai_struct\compiler\shared\src\main\scala\io\kaitai\struct\translators\CommonMethods.scala:150:3: Could not find any member to link for "T". [warn] /** [warn] ^ [warn] D:\Projects\parsers\kaitai_struct\compiler\shared\src\main\scala\io\kaitai\struct\translators\CommonMethods.scala:192:3: Could not find any member to link for "T"....
Its usage was removed in 3fcc700017d4add59724338230604977952dbaec As a next step need to delete method `ensureFixedContents` from runtime libraries as no longer used
Another piece of partially contributing to resolving https://github.com/kaitai-io/kaitai_struct/issues/69 — this one handles ternary operator: * Add common `doIfExp()` implementation (+add `extPrec` propagation into it) into CommonOps, which does a good...
Closes https://github.com/kaitai-io/kaitai_struct/issues/857. This PR started as support for the ability to use absolute paths (which is actually supported by type resolver) and ended as a bug fix for a known...
Some fields in data model filled by the compilation passes which is not obvious at all. To make this clear, I document properties which is filled by passes, document that...
The test ```yaml # expr_bad_id_inst_value.ksy: /instances/foo/value: # error: invalid ID: 'BAD', expected /^[a-z][a-z0-9_]*$/ # meta: id: expr_bad_id_inst_value instances: foo: value: BAD ``` Fixes test which instead of reporting error shows...
This PR improves text of errors and partially implements this TODO: > // TODO: get rid of MethodNotFoundError in favor of MethodNotFoundErrorWithArg, rename it back In all situations where MethodNotFoundErrorWithArg...
* Fixes https://github.com/kaitai-io/kaitai_struct/issues/786 * Fixes https://github.com/kaitai-io/kaitai_struct/issues/1028 * It seems that fixes unreported problem when opaque types are enabled and during enum resolution type cannot be found, it is threated as...