Will Hawkins
d22776b018
compiler: Refactor Language Element Tags
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-06-15 21:16:52 -04:00
Will Hawkins
6c23cf7458
Refactor P4Compiler to P4Parser
...
Continuous Integration / Grammar Tests (push) Successful in 36s
Continuous Integration / Library Format Tests (push) Successful in 1m46s
Continuous Integration / Library Tests (push) Successful in 4m23s
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-06-12 23:23:54 -04:00
Will Hawkins
b9ff228362
Start Rewrite
...
Continuous Integration / Grammar Tests (push) Successful in 3m54s
Continuous Integration / Library Format Tests (push) Failing after 4m49s
Continuous Integration / Library Tests (push) Successful in 7m40s
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-06-12 06:24:53 -04:00
Will Hawkins
d2797e1acc
compiler: Use Macro to Derive CompilableStatement Implementations
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-05-29 17:36:44 -04:00
Will Hawkins
44e93e4cda
compiler, runtime: Begin Runtime Refactor
...
Continuous Integration / Grammar Tests (push) Failing after 39s
Continuous Integration / Library Format Tests (push) Successful in 1m46s
Continuous Integration / Library Tests (push) Successful in 4m38s
Ultimately, the goal is to completely separate the compilation from
the runtime to make it possible to have the interpreter/evaluator
be "just another" entity that can perform meaningful work when
given a parsed GP4 program.
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-05-29 08:41:54 -04:00
Will Hawkins
16a798cc39
testing: Update to Latest ABI Protocol for Test Discovery
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-05-22 00:10:10 -04:00
Will Hawkins
017d5670c0
Make Formatter Happy
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-05-21 22:42:55 -04:00
Will Hawkins
d60465e669
testing: Update CliTest Support.
...
And add tests for Cli preprocessing.
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-05-21 22:41:00 -04:00
Will Hawkins
7a2c55cc51
testing: Implement Macros For Cli Testing
...
Continuous Integration / Grammar Tests (push) Successful in 4m5s
Continuous Integration / Library Tests (push) Failing after 8m19s
Continuous Integration / Cli Tests (push) Successful in 6m36s
Continuous Integration / Library Format Tests (push) Successful in 5m0s
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-05-20 17:53:31 -04:00
Will Hawkins
a7d8fd1304
grammar,compiler: Add Support For Fixed-Width Integers
...
Continuous Integration / Grammar Tests (push) Successful in 4m13s
Continuous Integration / Library Format Tests (push) Successful in 5m17s
Continuous Integration / Library Tests (push) Failing after 8m34s
Continuous Integration / Cli Tests (push) Failing after 4m40s
Distinguishing between signed and unsigned fixed-width integer
types must still be done.
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-05-18 06:53:22 -04:00
Will Hawkins
168d48fa7c
compiler, runtime: Refactor Errors
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-05-04 10:34:07 -04:00
Will Hawkins
0f0662709e
compiler, testing: Build System for Compilation
...
The compilation code was written as a precursor for implementation
with macros. The updates in this commit make the switch.
There is still plenty to do:
1. Comment Walker.
2. Comment Macros.
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-04-27 08:39:40 -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
f96350f89d
Make Formatter Happy
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-03-06 08:03:07 -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
59d56e7b73
Make Formatter Happy
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-03-02 08:26:37 -05:00
Will Hawkins
1495074459
Add UseErrorResult Macro
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-02-27 08:22:50 -05:00
Will Hawkins
5dbb8d3d60
Make Formatter Happy
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-02-24 00:44:04 -05:00
Will Hawkins
64a0fe4255
Refactor Parsing/Runtime
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-02-24 00:28:41 -05:00
Will Hawkins
d9c8c5aeb0
Refactor Runtime
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-02-19 22:50:19 -05:00
Will Hawkins
989c9b1212
Refactor
...
Refactor into four major components:
1. Common: Things shared among all other components.
2. Lang: P4-language-related components.
3. Runtime: Components required to run a P4 program.
4. Parser: Components for parsing a P4 program from source.
Other components:
1. Macros
2. Tests
3. TreeSitterExtensions: Extra tree sitter functionality
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-02-03 08:22:58 -05:00
Will Hawkins
78a1121a3c
Add Testing Macros
...
Don't build.
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-01-30 08:33:32 -05:00