Commit Graph

621 Commits

Author SHA1 Message Date
azjezz
2db9d4641b
chore: add true, false, and null as reserved keywords
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-08 18:59:35 +01:00
Saif Eddin Gmati
b72751d3c7
chore: remove tokens test (#180)
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-08 18:47:54 +01:00
Saif Eddin Gmati
4d0cd75fa9
fix: fix parsing by_ref parameters (#179)
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-08 18:07:03 +01:00
azjezz
8af0c1e3a1
fix: invalid rust toolchain on ci
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-08 18:00:43 +01:00
azjezz
4854c36d25
chore: update ci
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-08 17:50:21 +01:00
Saif Eddin Gmati
2659fdbebb
chore: test against more third party frameworks (#178)
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-08 16:50:25 +01:00
Saif Eddin Gmati
e74d0ec18e
chore: refactor expression parser to avoid stack overflow issue (#177)
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-08 15:49:54 +01:00
azjezz
ede98233c5
chore: fix tests
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-07 23:14:28 +01:00
azjezz
ad0623ed20
chore: remove Parser structure
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-07 23:11:37 +01:00
azjezz
8de571f97f
fix: don't allow static, parent, and self as expressions
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-07 21:00:35 +01:00
Ryan Chandler
aaafc612de
parser: move array item logic into separate fn 2022-12-07 17:33:37 +00:00
Saif Eddin Gmati
ab55a334d5
chore: inline some functions (#176) 2022-12-07 17:15:40 +00:00
Saif Eddin Gmati
39f5821b08
chore: start moving toward using functions (#175) 2022-12-07 16:59:10 +00:00
Saif Eddin Gmati
a776f0a045
chore: split control flow statements, and array expressions parsers to their own functions (#174)
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-07 17:05:22 +01:00
Saif Eddin Gmati
52b60e11f8
chore: separate source from state (#173)
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-07 16:58:59 +01:00
azjezz
567532c84e
chore: remove just from CI
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-07 14:37:11 +01:00
azjezz
73fbc09114
ci: cache after installing deps
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-07 09:32:36 +01:00
azjezz
6d3be57cd9
chore: run third party tests in matrix
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-07 09:29:46 +01:00
azjezz
fc3230073e
chore: run integration tests for third party libraries one by one.
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-07 09:26:36 +01:00
azjezz
972fbfa046
chore: fix tests
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-07 09:01:54 +01:00
Ryan Chandler
3ae4555d81
chore: fmt 2022-12-07 01:02:04 +00:00
Ryan Chandler
054b10667b
parser: support bodyless while statements 2022-12-07 00:38:05 +00:00
Ryan Chandler
897a2a0131
parser: support one-liner if statements 2022-12-07 00:34:34 +00:00
Ryan Chandler
12c7c14c39
parser: support bodyless else statements 2022-12-07 00:28:30 +00:00
Ryan Chandler
385ff84e18
chore: add nikic/PHP-Parser to third party tests 2022-12-07 00:23:52 +00:00
Ryan Chandler
e7c83fe768
feature: allow opening / closing tags in middle of scripting code (#172) 2022-12-07 00:20:11 +00:00
Ryan Chandler
f17fd22cdb
fix: store integers and floats as ByteStrings with notation (#170) 2022-12-06 18:13:45 +00:00
Ryan Chandler
d85b682d4f
fix: allow self/parent as identifier 2022-12-06 16:55:34 +00:00
Ryan Chandler
72f2588509
chore: fmt 2022-12-06 15:41:24 +00:00
Ryan Chandler
7d153443f6
lexer&parser: make self and parent dedicated token kinds (#169) 2022-12-06 15:41:09 +00:00
Ryan Chandler
07b7cf9104
parser: disallow using positional arguments after named arguments (#168) 2022-12-06 15:40:58 +00:00
Saif Eddin Gmati
34b9f80e46
chore: avoid cloning tokens (#166)
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-06 14:05:20 +01:00
azjezz
c02b4db78d chore: add benchmark to github actions
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-06 13:48:04 +01:00
Saif Eddin Gmati
452592b8fe
chore: small perf improvements for the lexer (#165)
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-06 12:47:27 +01:00
Saif Eddin Gmati
a3e0614f30
chore: small changes regarding node span (#164) 2022-12-06 11:54:12 +01:00
Ryan Chandler
7750ed39e6
feature: add support for list expressions (#163) 2022-12-06 10:31:40 +00:00
azjezz
eed02aa4e2
chore: finish refactoring flags -> modifiers, and fix end span for functions and enums
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-06 09:51:13 +01:00
Saif Eddin Gmati
9a2a903fb9
chore: refactor ast (#162)
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-06 09:33:29 +01:00
Ryan Chandler
2020c66cd8
lexer: fix escape sequences creating separate idents 2022-12-05 19:40:33 +00:00
Ryan Chandler
737d5fadf2
chore: skip a file because of HEREDOCS 2022-12-05 19:30:13 +00:00
Ryan Chandler
010fe7be26
lexer: use Err type for unrecognised tokens instead of unimplemented 2022-12-05 19:28:19 +00:00
Ryan Chandler
ae2f617700
chore: skip some comments 2022-12-05 19:25:40 +00:00
azjezz
c25fe105f9
chore: fix readme code
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-05 20:17:21 +01:00
azjezz
59fc4af394
fix: allow static closures to use self/static/parent types if they are within class scope
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-05 19:59:50 +01:00
azjezz
3b303acc02
fix: clone third-party libs to target/third-party
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-05 19:55:40 +01:00
azjezz
f92b8c4c73
fix improve dnf types parser
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-05 19:46:21 +01:00
azjezz
e23c80a3a3
fix: fix test
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-05 18:41:04 +01:00
azjezz
479f51913c
chore: remove build script
Signed-off-by: azjezz <azjezz@protonmail.com>
2022-12-05 18:36:04 +01:00
Saif Eddin Gmati
b152b0e961
feat: keep track of variable and identifier positions (#160) 2022-12-05 17:53:41 +01:00
Ryan Chandler
26a856e8ec
parser: skip comments in param list 2022-12-05 14:50:19 +00:00