Commit Graph

176 Commits

Author SHA1 Message Date
Will Hawkins 99804e3053 Better Support For Keysets
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-27 01:36:38 -04:00
Will Hawkins fafc80553e Support Binary Math Operators
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-26 23:48:39 -04:00
Will Hawkins 12ec6a77ed Make Formatter Happy
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-23 12:48:52 -04:00
Will Hawkins c410c48b38 Update .gitignore
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-23 07:56:37 -04:00
Will Hawkins 0d1a0b11df Add Binary Operator and Grouping (in Expressions) Tests
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-23 07:55:37 -04:00
Will Hawkins 2861a82777 Implement Binary Operators and Grouping (in Expressions)
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-23 07:55:11 -04:00
Will Hawkins 7c35b2b6e5 Binary Operators (and Grouping in Expressions)
Add support for <, <=, >, >=, && and ||.

Also, add support for grouping (with ( and )) in expressions.

Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-23 07:53:41 -04:00
Will Hawkins 6ff7c5175d Make Formatter Happy
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-20 04:30:07 -04:00
Will Hawkins aac007f1f2 Allow Declaring Instances of Structs
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-20 04:29:44 -04:00
Will Hawkins f0d816b99f Refactor Names of Scope Types
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-20 04:29:44 -04:00
Will Hawkins 6a9a138afe Add Defaults For All Types
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-20 04:29:44 -04:00
Will Hawkins 0aef385afc Refactor Tests
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-20 04:29:44 -04:00
Will Hawkins 04627f20e2 Support Setting Arrays/Fields
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-20 04:29:37 -04:00
Will Hawkins d7696e822c Update README.md
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-16 08:37:17 -04:00
Will Hawkins 2fd5ecf8d6 Work On Derived Types
1. Add support for field access
2. Add support for proper type checking of array access
3. Add tests for nested field and array access

Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-16 08:31:16 -04:00
Will Hawkins 8ee20fcf9f Add Support For Parsing Struct Field Access
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-16 08:30:57 -04:00
Will Hawkins 75f9f68349 Make Formatter Happy
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-13 09:45:43 -04:00
Will Hawkins 0b4db34177 Initial Array Access Implementation
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-13 09:45:03 -04:00
Will Hawkins 1982fda677 Array Identifier Should Be Expression
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-13 09:40:45 -04:00
Will Hawkins 4c63e7f92a Make Formatter Happy
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-13 08:27:41 -04:00
Will Hawkins d323434787 Begin Implementation of Binary Operator Support
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-13 08:26:47 -04:00
Will Hawkins 4a3a6bdf56 Add Tree Sitter Tests For Expressions
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-13 08:26:47 -04:00
Will Hawkins 16692de7b2 Add Grammar Support for == And Array Access
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-13 08:26:47 -04:00
Will Hawkins 377f40447f Add update Methods for Compilation Context
update method will allow the creation of a new compilation context
based on the current one with new types/names.

Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-13 07:03:31 -04:00
Will Hawkins 636db140ce Untrack One-off Test File
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-13 06:27:29 -04:00
Will Hawkins 2f7d05a3fd Refactor Compilation Interface
Compilation interface(s) now contain a compilation context.
The change will make it easier to expand on what each step
of the compilation process needs to know to complete its task
without having to make major changes to the interface.

Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-13 06:25:30 -04:00
Will Hawkins df841a0a1b Update README.md
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-10 06:04:23 -04:00
Will Hawkins 271092359c Make Formatter Happy
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-10 05:53:11 -04:00
Will Hawkins 4e9927c601 Add Tree Sitter Tests for Annotations (And General Test Updates)
Update Tests

Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-10 05:52:04 -04:00
Will Hawkins 4269104379 Refactor Parser Interfaces
Do not pass around the MutableTree -- now that we are not
using queries for walking the AST, it is unnecessary.

Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-10 05:52:04 -04:00
Will Hawkins 829bfb6ac8 Refactor Program Compilation
Do not use query.

Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-10 05:52:04 -04:00
Will Hawkins f82c69e4f9 Add Tests For Unsupported Features
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-10 05:52:04 -04:00
Will Hawkins 3188b52965 Refactor Parsers and Parser States
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-10 03:56:18 -04:00
Will Hawkins 7c7416fa64 Make Formatter Happy
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-07 02:45:22 -05:00
Will Hawkins 0b84951f8b Fix String Interpolation Warning
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-07 01:14:13 -05:00
Will Hawkins 0e4262ea33 Remove Extraneous Experimental Flags
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-07 01:13:48 -05:00
Will Hawkins 570438b6ba Attempt To Enable Experimental Feature
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-07 00:58:47 -05:00
Will Hawkins 19b983653b Attempt To Enable Experimental Feature
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-07 00:39:26 -05:00
Will Hawkins cb6881e1a2 Attempt To Enable Experimental Feature
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-07 00:38:27 -05:00
Will Hawkins db520fe0a6 Attempt To Enable Experimental Feature
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-07 00:30:12 -05:00
Will Hawkins 61865e7cf9 Update CI/CD Workflow
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-06 23:56:26 -05:00
Will Hawkins 81b9345c7f Make Formatter Happy
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-06 21:40:37 -05:00
Will Hawkins eff19df968 Completely Refactor Execution
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-06 21:40:19 -05:00
Will Hawkins f96350f89d Make Formatter Happy
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-06 08:03:07 -05:00
Will Hawkins c3b3be77eb Update Compiler To Use Macros
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-06 08:02:35 -05:00
Will Hawkins 8ca03cdca5 Add booleanLiteralExpression To Make Compiling Easier
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-06 08:01:41 -05:00
Will Hawkins f778ee384e Add NodeType-Checking Macros
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-06 07:47:05 -05:00
Will Hawkins 991e20917c P4 Parser States Do Not Have Local Elements
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-02 08:32:09 -05:00
Will Hawkins 59d56e7b73 Make Formatter Happy
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-02 08:26:37 -05:00
Will Hawkins 6dba17c97a Refactor Parsing -> Compiling
Signed-off-by: Will Hawkins <hawkinsw@obs.cr>
2026-03-02 08:25:29 -05:00