Will Hawkins
5cfe5532a2
compiler, runtime: Refactor P4DataType to P4Type
...
Now that the old P4Type is a P4QualifiedType, it makes sense to
rename the data type back to just type.
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-05-04 07:37:48 -04:00
Will Hawkins
7c660b2b0c
compiler, runtime: Refactor P4Type to P4QualifiedType
...
Also, refer to the different pieces of the qualified type as
qualifiers and not attributes.
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-05-04 07:29:51 -04:00
Will Hawkins
8c0c16ed87
documentation: Update Note Protocol
...
Using /// rather than simply //.
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-04-27 09:03:59 -04:00
Will Hawkins
f2bd53ce5f
compiler, runtime, common: (Initial) Support For extern Declarations
...
Especially FFI
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-04-23 06:07:54 -04:00
Will Hawkins
94086c8e17
compiler, runtime, common, documentation: Refactor Type System
...
The type system (and the value system) now include attributes
for each type (things like direction, const-ness).
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-04-14 20:25:11 -04:00
Will Hawkins
b687454389
Refactor Expected Types During Compilation
...
By adding an expected type to the compilation context, it is
now possible for type checking to occur on keyset expressions
and return statements at the moment that they are being compiled.
Previously, it was necessary to tentatively compile them and then
typecheck afterward.
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-04-10 00:59:11 -04:00
Will Hawkins
ad7e5a6f6d
Make Formatter Happy
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-04-09 23:17:18 -04:00
Will Hawkins
d39127ac17
Support Function Calls
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-04-09 23:16:27 -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
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
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
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
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
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
271092359c
Make Formatter Happy
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-03-10 05:53:11 -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
64a0fe4255
Refactor Parsing/Runtime
...
Signed-off-by: Will Hawkins <hawkinsw@obs.cr >
2026-02-24 00:28:41 -05:00