Will Hawkins
d39127ac17
Support Function Calls
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-04-09 23:16:27 -04:00
Will Hawkins
708f65a0a9
Make Formatter Happy
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-04-06 08:50:20 -04:00
Will Hawkins
68ee5b1067
P4Lang/Program/InstancesWithTypes and TypesWithTypes
...
Add helper functions to fetch globally instantiated/declared
parser/controls (etc) and types in a user's P4 program.
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-04-06 08:49:35 -04:00
Will Hawkins
29dfa62472
Start Handling Control Blocks
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-04-06 08:49:28 -04:00
Will Hawkins
443b21b890
Initial Work on Compiling Function Declarations
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-04-02 02:49:04 -04:00
Will Hawkins
fc0276ad42
Support Parsing Function Declarations
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-04-02 02:48:43 -04:00
Will Hawkins
07f1943611
Fix Warnings In Tests
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-04-02 01:30:33 -04:00
Will Hawkins
d971aab1fe
Support Calling Parsers With Parameters
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-04-02 01:28:43 -04:00
Will Hawkins
7cdbee1999
Refactor Parser For Parameter Lists
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-04-02 01:28:27 -04:00
Will Hawkins
8962235aca
Support Parameters For Parsers
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-03-30 07:57:41 -04:00
Will Hawkins
744c375c5f
Add Select Expression Ordering Test
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-03-30 05:18:36 -04:00
Will Hawkins
8299d76285
Make Formatter Happy
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-03-30 05:18:11 -04:00
Will Hawkins
3b9c3a7076
Add Select Expression Tests
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-03-30 05:18:00 -04:00
Will Hawkins
7c9ecc2438
Refactor Parser States
...
Refactor the class hierarchy for parser states so that
there is a parser state that acts more like a type and
one that acts more like a value (the latter, then, serves
as the base class for the other instantiated parser states).
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-03-30 05:16:48 -04:00
Will Hawkins
fda9858680
Update README
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-03-27 03:57:36 -04:00
Will Hawkins
4d787394cd
Fix Bug In Struct Field Initialization
...
Fields were not given default values when a struct was declared
without initializers.
Also, cleanup code in the helper function for binary operations
on struct instances.
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-03-27 03:54:44 -04:00
Will Hawkins
cd26d1d22c
Parse Struct Declarations
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-03-27 03:33:15 -04:00
Will Hawkins
5abaac2816
Add Some Coding Style Guidelines
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-03-27 01:42:25 -04:00
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