Sasha Koshka
fb95b935d6
Merge pull request 'remove-participle' ( #10 ) from remove-participle into main
...
Reviewed-on: sashakoshka/fspl#10
2024-02-08 18:34:18 +00:00
Sasha Koshka
483c87b3a3
Merge pull request 'remove-participle-refit-generator' ( #9 ) from remove-participle-refit-generator into remove-participle
...
Reviewed-on: sashakoshka/fspl#9
2024-02-08 18:33:37 +00:00
Sasha Koshka
e9b066d180
Fixed commaList
2024-02-08 13:32:15 -05:00
Sasha Koshka
74e84c7da4
Fixed all generator tests
2024-02-08 13:32:04 -05:00
Sasha Koshka
94a25f0aac
Generator compiles and runs
2024-02-08 13:14:21 -05:00
Sasha Koshka
c6424ea315
Go mod tidy. No more participle, officially!
2024-02-08 13:12:42 -05:00
Sasha Koshka
9a3532bd3e
Merge pull request 'remove-particple-refit-analyzer' ( #8 ) from remove-particple-refit-analyzer into remove-participle
...
Reviewed-on: sashakoshka/fspl#8
2024-02-08 18:08:31 +00:00
Sasha Koshka
2f9f3614d6
Parser now accepts multiplication operations
2024-02-08 13:05:47 -05:00
Sasha Koshka
b614dde503
Fix TestTypeInterfaceBehaviorUniqueErr
2024-02-08 12:57:20 -05:00
Sasha Koshka
ba4a455d2e
Signature positions are stored properly
2024-02-08 12:54:31 -05:00
Sasha Koshka
ed3d8e766c
Parser now includes positional information in toplevels
2024-02-08 12:52:47 -05:00
Sasha Koshka
04b4d71c64
Bring analyzer tests up to date as much as possible
2024-02-08 12:49:17 -05:00
Sasha Koshka
b6cc02fcb8
Change interface prefix from ? to ~
...
? will eventually be used in place of * to denote an optional
pointer, and ~ already means "approximation", which works well for
a polymorphic data structure.
2024-02-08 04:10:11 -05:00
Sasha Koshka
b3fc38e7c0
Remove rouge println in parser
2024-02-08 04:00:25 -05:00
Sasha Koshka
bb2d1966b9
Off by one error oh my god
2024-02-08 03:58:29 -05:00
Sasha Koshka
cf75245820
Updated analyzer's test-common.go
2024-02-08 03:56:09 -05:00
Sasha Koshka
d6a645f93b
Rework analyzer code to fit new parser
2024-02-08 03:51:21 -05:00
Sasha Koshka
17e3d1dfbe
Merge pull request 'parser-remove-participle' ( #7 ) from parser-remove-participle into remove-participle
...
Reviewed-on: sashakoshka/fspl#7
2024-02-08 08:29:23 +00:00
Sasha Koshka
8ec3649637
Parse namespaced function calls
2024-02-08 03:28:09 -05:00
Sasha Koshka
823cb44406
Bring most tests up to date
2024-02-08 03:13:40 -05:00
Sasha Koshka
1f3f94e24f
Parse member access, assignment, method calls
2024-02-08 03:10:02 -05:00
Sasha Koshka
fa252e59ab
Loll oops
2024-02-08 02:22:57 -05:00
Sasha Koshka
93c9f42aab
Unify entity.Statement and entity.Expression
2024-02-08 02:22:19 -05:00
Sasha Koshka
f04bf32ce2
Relaxed unneeded rules on AST
2024-02-08 02:19:00 -05:00
Sasha Koshka
50fc1d16de
Parse bit and value casts
2024-02-08 01:54:29 -05:00
Sasha Koshka
d724b16cdc
Parse reference operations
2024-02-08 01:37:36 -05:00
Sasha Koshka
abbc8e52bf
Parse length operations
2024-02-08 01:33:55 -05:00
Sasha Koshka
90a505540e
Parse slice operations
2024-02-08 01:29:16 -05:00
Sasha Koshka
92b15eef6c
Struct literals print correctly
2024-02-08 00:56:43 -05:00
Sasha Koshka
3d89ed08cc
Parse operations
2024-02-08 00:50:54 -05:00
Sasha Koshka
d7d2d90b20
Added string constructor for entity.Operator
2024-02-08 00:29:24 -05:00
Sasha Koshka
0bed97da02
Re-organize the position of parsing functions in expression.go
2024-02-08 00:16:39 -05:00
Sasha Koshka
c347add41c
Parse dereferences and subscripts
2024-02-08 00:14:52 -05:00
Sasha Koshka
7697bab51a
Lowercased entity descriptions
2024-02-07 22:58:58 -05:00
Sasha Koshka
333172d00b
Moved parser expression decision tree diagram to expression.go
...
Because having ASCII flowcharts in comments makes any code base at
least 20% cooler.
2024-02-07 22:53:10 -05:00
Sasha Koshka
5dede3434f
Parse function calls
2024-02-07 22:49:11 -05:00
Sasha Koshka
4087e12fb9
Parse break and return expressions
2024-02-07 22:33:33 -05:00
Sasha Koshka
8ad89623a9
Decision tree infrastructure for LBracket branch
2024-02-07 20:03:18 -05:00
Sasha Koshka
3cf6154e62
Parse struct literals
2024-02-07 19:48:01 -05:00
Sasha Koshka
dc64daa0e0
Parse blocks
2024-02-07 19:24:57 -05:00
Sasha Koshka
8a553beaa8
Update expression-decision-tree
2024-02-07 19:17:25 -05:00
Sasha Koshka
c90bb00241
Fix parsing integer 0
2024-02-07 19:16:05 -05:00
Sasha Koshka
8515bc7350
Parse array literals
2024-02-07 19:14:39 -05:00
Sasha Koshka
0fd38baf77
Update expression-decision-tree
2024-02-07 18:27:10 -05:00
Sasha Koshka
47ca7b98c6
Parse if/else expressions
2024-02-07 18:25:42 -05:00
Sasha Koshka
790f1ca6be
Parse loops
2024-02-07 18:11:12 -05:00
Sasha Koshka
78050694d6
Move literal parsing routines to a separate file
2024-02-07 18:01:14 -05:00
Sasha Koshka
cd8c65e232
Add stars in expression-decision-tree to mark what isn't done
2024-02-07 17:57:39 -05:00
Sasha Koshka
9cc015859e
Fix expression parsing control flow
2024-02-07 17:51:44 -05:00
Sasha Koshka
e32a3d997f
Add parsing boolean and nil literals
2024-02-07 17:25:00 -05:00