1
0
mirror of synced 2024-12-12 07:51:05 +01:00
ImHex/plugins/libimhex/include/hex/pattern_language
WerWolv c051f5d3e7
patterns: Rewrite evaluation engine (#306)
* patterns: Rewrite most of the evaluator to mainly use polymorphism instead of just RTTI

* patterns: Fixed a couple of AST memory leaks

* patterns: Parse string operations correctly

* patterns: Various fixes and cleanup

* patterns: Implement primitive function definitions

Function parameters now need to provide their type in the definition

* patterns: Added function variable definition and assignment

* patterns: Added remaining function statements

* patterns: Added unsized and while-sized arrays

* patterns: Added multi variable declarations to functions

* patterns: Added std::format built-in function

* patterns: Allow passing custom types to functions

* patterns: Added attributes and new "format" attribute

* patterns: Use libfmt for std::print instead of custom version

* patterns: Remove unnecessary string compare function

* pattern: Fix preprocessor directives

* patterns: Fix unit tests

* patterns: Added cast expression

* patterns: Handle endianess in function parameters

* patterns: Added casting to different endian

* patterns: Added 'str' type for functions
2021-09-21 21:29:18 +02:00
..
ast_node_base.hpp patterns: Rewrite evaluation engine (#306) 2021-09-21 21:29:18 +02:00
ast_node.hpp patterns: Rewrite evaluation engine (#306) 2021-09-21 21:29:18 +02:00
evaluator.hpp patterns: Rewrite evaluation engine (#306) 2021-09-21 21:29:18 +02:00
lexer.hpp sys: Tons of long overdue cleanup 2021-09-08 15:18:24 +02:00
log_console.hpp patterns: Rewrite evaluation engine (#306) 2021-09-21 21:29:18 +02:00
parser.hpp patterns: Rewrite evaluation engine (#306) 2021-09-21 21:29:18 +02:00
pattern_data.hpp patterns: Rewrite evaluation engine (#306) 2021-09-21 21:29:18 +02:00
pattern_language.hpp patterns: Rewrite evaluation engine (#306) 2021-09-21 21:29:18 +02:00
preprocessor.hpp sys: Tons of long overdue cleanup 2021-09-08 15:18:24 +02:00
token.hpp patterns: Rewrite evaluation engine (#306) 2021-09-21 21:29:18 +02:00
validator.hpp sys: Tons of long overdue cleanup 2021-09-08 15:18:24 +02:00