Commit Graph

155 Commits

Author SHA1 Message Date
Jesse Brault
9f3f3e0f0d Implement optionality for types. 2025-09-03 17:12:19 -05:00
Jesse Brault
3b07cef209 Basic function types. 2025-09-03 17:05:15 -05:00
Jesse Brault
a53388155a Add optional to ast schema and ast-gen. 2025-09-03 16:45:09 -05:00
Jesse Brault
4dcb5ee783 Pest and ast syntax changes. 2025-09-03 16:39:31 -05:00
Jesse Brault
e79c22db72 Using Boxed children and name fix. 2025-08-31 09:44:17 -05:00
Jesse Brault
3ca488b76d AST gen tweaks. 2025-08-30 09:43:11 -05:00
Jesse Brault
673a008e16 Add schema and function declaration. 2025-08-29 20:24:35 -05:00
Jesse Brault
8b310ad5d4 Refactor ast-generation. 2025-08-29 19:42:23 -05:00
Jesse Brault
fcca1b7aba More work on ast-generation. 2025-08-27 12:35:43 -05:00
Jesse Brault
206948efa1 Experimenting with build.rs, quote, and syn. 2025-08-26 15:39:36 -05:00
Jesse Brault
8c802f2a15 Sketching July 2025. 2025-08-01 07:47:56 -05:00
Jesse Brault
6f727e1cdf Refactor UseStatement to an enum type; remove UseStatementLast. 2025-05-29 21:37:07 -05:00
Jesse Brault
9f5e27b289 Add with-keyword sketching. 2025-05-26 16:24:51 -05:00
Jesse Brault
234f40ec58 Use ast walking to verify that identifiers have saved symbols and linking symbols are resolved. 2025-05-26 16:24:40 -05:00
Jesse Brault
d38b30b755 Add depth-first traversal (walk_depth_first) to walk.rs. 2025-05-26 12:53:07 -05:00
Jesse Brault
22deb90c3e Move ast nodes to new ast/node module. 2025-05-26 08:30:15 -05:00
Jesse Brault
cbf7921c95 Refactor name-analysis module to use new AST api. 2025-05-26 07:48:35 -05:00
Jesse Brault
20dcb4f6ce Major refactoring of AST module: private properties and accessors, building clearer, using Boxes. 2025-05-25 17:27:15 -05:00
Jesse Brault
c8ff1d0fa2 Add todos. 2025-05-22 15:02:29 -05:00
Jesse Brault
f5f247e636 Add class-member symbols to symbol table display. 2025-05-21 22:31:51 -05:00
Jesse Brault
41ab922f2c Add interface/class test case. 2025-05-21 12:25:23 -05:00
Jesse Brault
d8fe97b401 Miscellaneous gather work and related. 2025-05-21 08:54:21 -05:00
Jesse Brault
f614d00575 Add shadow import failing test. 2025-05-20 11:11:29 -05:00
Jesse Brault
4c68d0dc28 Flesh out gather and resolve, add todos, refactor a bit. 2025-05-20 11:09:06 -05:00
Jesse Brault
88270e0cdd Add basic name-analysis phase documentation. 2025-05-20 08:44:26 -05:00
Jesse Brault
02d6a16cf8 Refactor name-analysis tests. 2025-05-19 20:22:13 -05:00
Jesse Brault
0c2d9f8b2f Add primitive type uses and related. 2025-05-19 13:52:42 -05:00
Jesse Brault
abb7aab3a4 Refactoring of name-analysis. 2025-05-19 09:58:43 -05:00
Jesse Brault
c606432be2 Work to properly resolve imports. 2025-05-18 18:29:25 -05:00
Jesse Brault
6b6ba1d712 Major refactor of name analysis and related. 2025-05-18 18:05:03 -05:00
Jesse Brault
dcb261fd84 Remove useless DiagnosticsContainer struct; params_seen failing because unresolved types. 2025-05-18 16:26:05 -05:00
Jesse Brault
4f74136d97 Much work on use-statements and symbols. 2025-05-18 16:18:19 -05:00
Jesse Brault
8cd5e588a0 Add gathering and resolving for various constructs; two-file test still failing but fails correctly. 2025-05-18 10:26:38 -05:00
Jesse Brault
c54e005b62 Add build for platform function. 2025-05-18 09:02:35 -05:00
Jesse Brault
938391ae09 Add use statements. 2025-05-18 08:32:16 -05:00
Jesse Brault
0c18b976d7 Refactor name-analysis for multiple files; set up (failing) test case for multiple files. 2025-05-18 08:00:32 -05:00
Jesse Brault
3026d22750 Remove dbg in assert_builds. 2025-05-17 19:59:07 -05:00
Jesse Brault
e0f2810764 Fix pretty-print operator bug. 2025-05-17 19:53:16 -05:00
Jesse Brault
692411e232 Change grammar to properly allow if, while, and for loops (without confusing it with closures). 2025-05-17 17:30:55 -05:00
Jesse Brault
bf06407d16 Implement if/if-else statements in grammar, build, unparse, and pretty-print. 2025-05-17 12:36:29 -05:00
Jesse Brault
35d616a538 Implement closure in ast building, unparsing, and pretty printing. 2025-05-17 10:32:14 -05:00
Jesse Brault
2de45817d4 Add BacktickString building. 2025-05-17 08:44:39 -05:00
Jesse Brault
78e7271950 Add DString building. 2025-05-17 08:36:55 -05:00
Jesse Brault
bae2048aef Add number literal building to build.rs. 2025-05-16 19:38:53 -05:00
Jesse Brault
17285e84eb Add indexing to build.rs. 2025-05-16 19:29:39 -05:00
Jesse Brault
15abcc92d3 Add indoc and indexing to grammar. 2025-05-16 19:08:18 -05:00
Jesse Brault
f5a82c414c Much work to produce better errors during name analysis. 2025-05-16 15:58:42 -05:00
Jesse Brault
dda86f75e7 Begin name-analysis testing. 2025-05-16 11:21:44 -05:00
Jesse Brault
4224055860 Refactor name-analysis code into separate module/files. 2025-05-16 10:56:57 -05:00
Jesse Brault
6ab9efa8fd Add codespan-reporting to project for awesome error reporting. 2025-05-16 09:09:25 -05:00