83 Commits

Author SHA1 Message Date
Jan
57ef79692a ZoneCodeGenerator: Add precompiler support for ifdef so a namespace can be defined in the t6_assets header for compiling in ZoneCommon without display errors 2019-12-21 16:37:57 +01:00
Jan
f3c9e6053f ZoneCodeGenerator: Fix not finalizing DataTypes of typedefs when calculating sizes 2019-12-21 12:04:35 +01:00
Jan
295d9543f7 ZoneCodeGenerator: Take account of temp blocks when loading single pointers 2019-12-18 15:31:59 +01:00
Jan
be17ae6a48 ZoneCodeGenerator: Make pointer counts be able to differ by array index 2019-12-18 15:30:47 +01:00
Jan
a7936c9eaa ZoneCodeGenerator: Fix LoadTempPtr method doing insertpointer and allocating in the wrong order 2019-12-18 15:26:12 +01:00
Jan
92e84e69f9 ZoneCodeGenerator: Remove spaces between array indices 2019-12-18 15:22:16 +01:00
Jan
3e108c98b4 ZoneCodeGenerator: Fix TestReorder not being able to reorder members that came before a specified first entry 2019-12-07 13:39:30 +01:00
Jan
0f349e24c3 ZoneCodeGenerator: Improve toString debug output for memberinformation 2019-12-07 13:38:57 +01:00
Jan
739c2ff61d ZoneCodeGenerator: Fix PointerArrays not respecting that they might need to alloc space in the block 2019-12-07 03:48:49 +01:00
Jan
9253ac14fa ZoneCodeGenerator: Make unions work with conditions and only load one union member at a time consistently 2019-12-06 16:33:05 +01:00
Jan
f4a2639e30 ZoneCodeGenerator: Make members have a block they are being loaded into instead of structures 2019-12-06 16:31:20 +01:00
Jan
8a99a49486 ZoneCodeGenerator: Implement template code for pointer array methods 2019-12-06 16:14:27 +01:00
Jan
5853950888 ZoneCodeGenerator: Fixup templates and structs to be able to generate code for AddonMapEnts 2019-12-05 02:56:35 +01:00
Jan
42e571427b ZoneCodeGenerator: Fix forward declarations not being resolved for typedefs 2019-12-05 02:54:56 +01:00
Jan
ffda895f95 ZoneCodeGenerator: Fix being able to load strings for non const char pointers 2019-12-04 13:48:15 +01:00
Jan
a1546f3080 ZoneCodeGenerator: Fix generating code for arrays of scriptstrings 2019-12-04 13:47:24 +01:00
Jan
c05f04e28a ZoneCodeGenerator: Add expression to apply a certain fastfile block to a structure 2019-12-03 23:40:22 +01:00
Jan
799a999a66 ZoneCodeGenerator: Extend reorder test to be able to specify first member and skip any members before to start reordering from a certain point 2019-12-03 23:39:09 +01:00
Jan
ce9d0d37de ZoneCodeGenerator: Add "." to be recognized as a single token by the lexer 2019-12-03 23:26:56 +01:00
Jan
3276050e45 ZoneCodeGenerator: Remove test comment from template 2019-11-24 02:47:10 +01:00
Jan
b8bd20f693 ZoneCodeGenerator: Add support for scriptstring array pointers 2019-11-24 02:46:40 +01:00
Jan
5d3c13e833 ZoneCodeGenerator: Add computations for single references to be able to correctly handle arrays 2019-11-24 01:58:01 +01:00
Jan
6d1359c3d9 ZoneCodeGenerator: Extend count statement without being able to specify * to more precisely state which count should be set 2019-11-24 01:56:57 +01:00
Jan
032eb997ca ZoneCodeGenerator: Add renderer for DataType to be able to safely display typenames without spaces 2019-11-24 01:55:19 +01:00
Jan
377dc5c99b ZoneCodeGenerator: Set conditions on structs that make the build fail right now 2019-11-21 21:47:56 +01:00
Jan
27f92e6c33 ZoneCodeGenerator: Add Computations class for StructureInformation including IsUsed to check whether a structure has at least 1 usage 2019-11-21 21:46:03 +01:00
Jan
b79f237014 ZoneCodeGenerator: Make Usages PostProcessor only add usages when a member is used and not ignored 2019-11-21 21:42:07 +01:00
Jan
c547520ae8 ZoneCodeGenerator: Remove PostProcessor for asset names and instead add a statement for command files due to different member names for names 2019-11-21 13:35:38 +01:00
Jan
4f78570023 ZoneCodeGenerator: Add embedded reference handling to templates 2019-11-21 01:46:41 +01:00
Jan
b0780ca565 ZoneCodeGenerator: Add a preprocessor extracting a member chain to get the name of the asset in the template 2019-11-21 01:44:04 +01:00
Jan
5f0f73838f ZoneCodeGenerator: Make static operands able to have the value of an enum entry 2019-11-21 01:29:24 +01:00
Jan
31b279c1e6 ZoneCodeGenerator: Fix operationType tokens not being sorted by length so shorter tokens can be matched before longer ones 2019-11-19 12:55:04 +01:00
Jan
8d4e4c0025 ZoneCodeGenerator: Fix | not being a recognized token of the lexer 2019-11-19 12:54:13 +01:00
Jan
ee2653657e ZoneCodeGenerator: Add template code and separate into different template files for a better overview and less cluttered template code 2019-11-15 14:55:35 +01:00
Jan
3bf0334c59 ZoneCodeGenerator: Add and rename member computations to make more sense 2019-11-15 14:54:29 +01:00
Jan
b15ce90fbb ZoneCodeGenerator: Add reusable statement for commands to be able to tell the generator that a member can be a fastfile offset and not nessecarly a following pointer 2019-11-15 14:47:45 +01:00
Jan
dda9cc0700 ZoneCodeGenerator: Change code templates to support loading of simple assets like rawfile 2019-11-14 14:59:48 +01:00
Jan
f80d661c1b ZoneCodeGenerator: Add helper methods to Operation for the template engine to know whether parenthesis are required or not 2019-11-14 14:59:21 +01:00
Jan
8c303d394d ZoneCodeGenerator: Add all used membertypes to a list in context 2019-11-14 14:58:50 +01:00
Jan
63722e220d ZoneCodeGenerator: Move computed conditions to sub class for MemberInformation since the template engine does not support computations and there will be a decent amount probably. So they are now moved to a different class to not cludder the main class too much 2019-11-14 14:57:21 +01:00
Jan
b59ca3b261 ZoneCodeGenerator: Save whether a structure is anonymous and therefore a name has been generated or not. 2019-11-14 14:54:36 +01:00
Jan
f777c049c6 ZoneCodeGenerator: Add postprocessor to inspect whether a structure is a leaf (No complex tasks for loading/writing required, like pointers, strings, scriptstrings) 2019-11-14 14:53:12 +01:00
Jan
ef8a040db4 ZoneCodeGenerator: Add toString methods for Domain objects for better readability when debugging 2019-11-14 14:50:53 +01:00
Jan
73424c9bc1 ZoneCodeGenerator: Add tests for reordering, scriptstring, string 2019-11-10 22:14:01 +01:00
Jan
6ca7f18f9f ZoneCodeGenerator: Add arraysize test to explicitly override the size of an array with a dynamic one 2019-11-10 18:07:28 +01:00
Jan
76cae3a948 ZoneCodeGenerator: Fix LoadArray template to reference array elements correctly 2019-11-10 18:06:08 +01:00
Jan
f2cc95ee32 ZoneCodeGenerator: Make use of the parsed tokens in TestCount and TestCondition 2019-11-10 18:04:00 +01:00
Jan
2bcb776bbf ZoneCodeGenerator: Add toString methods for operands and operations for debugging purposes 2019-11-08 03:00:43 +01:00
Jan
6c1404116c ZoneCodeGenerator: When parsing Evaluation nest operations so the operator precendence is evaluated as specified 2019-11-08 03:00:20 +01:00
Jan
82604038c7 ZoneCodeGenerator: Fix recognizing but not doing anything with const tokens in variables 2019-11-06 18:41:21 +01:00