Commit Graph

354 Commits (bf6a724783904ae9a4d938c36c452fbc45391b5e)

Author SHA1 Message Date
Tristan B. Kildaire d8f82e17de Added plumbing for testing D (not final, we shall use LLVM) code generation 2021-06-01 15:18:21 +02:00
Tristan B. Kildaire 274ea767a2 Added plumbing for code generation 2021-06-01 15:18:09 +02:00
Tristan B. Kildaire d34dd5b689 Now properly generates a Struct object 2021-06-01 10:00:21 +02:00
Tristan B. Kildaire 814b29984c Refactored comment 2021-05-31 22:36:11 +02:00
Tristan B. Kildaire d1bd2fab2c Added TODO 2021-05-31 18:16:35 +02:00
Tristan B. Kildaire 9fc9b1cdfe Updated unit test for struct parsing 2021-05-31 18:16:06 +02:00
Tristan B. Kildaire 13645f6b6b Append Statement objects to build up struct's body 2021-05-31 18:14:15 +02:00
Tristan B. Kildaire bf48ee7b83 Added test case to test struct parsing 2021-05-31 18:06:15 +02:00
Tristan B. Kildaire cf66e8255d Fixed termination of struct parse loop 2021-05-31 18:06:09 +02:00
Tristan B. Kildaire b07c2fb2b5 Ensure that only assignment-less variable declarations and funciton definitions are present in the struct's body 2021-05-31 18:01:06 +02:00
Tristan B. Kildaire 6a18315f78 Re-enable chekc for item we are left on (exit if semi-colon)
Actually NO
2021-05-31 17:53:24 +02:00
Tristan B. Kildaire 46c135042b Struct parsing basic parsing completed, just simply call `parseAccessor()` 2021-05-31 17:52:15 +02:00
Tristan B. Kildaire 8c7c4d038c WIP: Actual struct support
Added TODO
2021-05-31 17:51:16 +02:00
Tristan B. V. Kildaire a1c6eb9c74 Typo fix 2021-05-31 09:07:22 +02:00
Tristan B. Kildaire c955b0bd6a Added TODO list for things to implement these holidays 2021-05-04 19:26:26 +02:00
Tristan B. Kildaire dcd513079d Updated other main unit test 2021-05-04 19:19:57 +02:00
Tristan B. Kildaire fd05ab1ef8 Fixed bug with `parseStruct`, now it doesn't return null 2021-05-04 19:18:30 +02:00
Tristan B. Kildaire 04c902a2c7 Added struct parsing support parseAccessor 2021-05-04 19:17:33 +02:00
Tristan B. Kildaire 5cee963957 Added struct parsing support to `parse` (for top-evel parsing) 2021-05-04 19:13:20 +02:00
Tristan B. Kildaire 017ef66d81 Works 2021-05-04 19:11:40 +02:00
Tristan B. Kildaire 931d136d74 Consume the closing curly brace in parseStruct 2021-05-04 19:11:25 +02:00
Tristan B. Kildaire 688fc34969 Added Struct parsing support to paarseBody
Added a test to test it (in basic1.t)
2021-05-04 19:10:59 +02:00
Tristan B. Kildaire ef3891530a Added SymbolType.STRUCT enum
Added support for SymbolType.STRUCT to getSymbolType
2021-05-04 19:08:55 +02:00
Tristan B. Kildaire 8661d2e264 Basic struct parsing added (not done and also not being called anywhere yet)
Updated unit test basic1.t to include a struct in it
2021-05-04 19:07:04 +02:00
Tristan B. Kildaire 139dcfd07c WIP: Adding support for structs 2021-05-04 18:58:07 +02:00
Tristan B. V. Kildaire 7642db1420 Undid, might wanna dependency check those 2021-04-29 17:59:36 +02:00
Tristan B. V. Kildaire c2f82f5577 Added comment 2021-04-29 17:58:45 +02:00
Tristan B. V. Kildaire 292407cbae Refactored 2021-04-29 17:57:15 +02:00
Tristan B. V. Kildaire 88e2dc03e1 Renamed `checkContainer` to `checkContainerCollision` 2021-04-29 17:54:26 +02:00
Tristan B. V. Kildaire eefb78158d Removed TODO 2021-04-28 01:38:00 +02:00
Tristan B. V. Kildaire d5dbaa7b8b Removed uneeded function 2021-04-26 10:07:16 +02:00
Tristan B. V. Kildaire 8c6eb6dbd0 Resolution of user-defined types is working 2021-04-26 10:05:20 +02:00
Tristan B. V. Kildaire bbb3d2f415 Added void type support 2021-04-26 10:04:24 +02:00
Tristan B. V. Kildaire 2fdb584c65 Removed incorrect type for built-in test `void.void` from both test cases 2021-04-26 10:02:46 +02:00
Tristan B. V. Kildaire 6185f8847c Fixed type resolution for built-in types 2021-04-26 10:01:53 +02:00
Tristan B. V. Kildaire c9c913eaae Call method 2021-04-26 10:00:32 +02:00
Tristan B. V. Kildaire bbef8c00f9 Added ubyte and byte type to builtins.d 2021-04-26 09:53:47 +02:00
Tristan B. V. Kildaire 8c3c14d412 Added ushort and shoprt type to builtins.d
Fixed branch
2021-04-26 09:53:15 +02:00
Tristan B. V. Kildaire 2bbdd50373 Added ulong and long type to builtins.d 2021-04-26 09:52:31 +02:00
Tristan B. V. Kildaire 170824be61 Added some return values for `getBuiltInType` 2021-04-24 13:16:48 +02:00
Tristan B. V. Kildaire cce89233eb Stub added for built-in types 2021-04-23 14:19:53 +02:00
Tristan B. V. Kildaire 3bc19fb3cb Refactored typing system 2021-04-23 14:19:46 +02:00
Tristan B. V. Kildaire 7476c1a3ce Refactored, functions and variables both checked for valid type names using one funciton that processes TypedEntities 2021-04-23 14:14:09 +02:00
Tristan B. V. Kildaire 5e296dd67c SHow error on invalid type being used for variable declarations 2021-04-23 14:09:05 +02:00
Tristan B. V. Kildaire 089d2b1584 Type resolution for variable declarations is working (WIP)
Added test case to test it
2021-04-23 14:07:19 +02:00
Tristan B. V. Kildaire d92fd13e14 Updated Pointer class 2021-04-23 09:15:03 +02:00
Tristan B. V. Kildaire e2280fbfa8 Added comment for Struct class 2021-04-22 10:40:44 +02:00
Tristan B. V. Kildaire c1f28bd80e Code cleanup 2021-04-21 23:29:14 +02:00
Tristan B. V. Kildaire cac568178d Moved field `width` from Integer to Number 2021-04-21 23:29:00 +02:00
Tristan B. V. Kildaire f67c9657b1 Added Struct Type 2021-04-21 23:27:55 +02:00