Ryan Chandler
ce4e1e1152
parser: support minimum yield expressions
2022-08-09 00:03:25 +01:00
Ryan Chandler
9ab82059a1
parser: support throw
expressions
...
It's worth noting that a `throw` will always be an expression in the Trunk parser.
PHP-Parser will convert standalone `throw` expressions into a dedicated `throw`
statement for backwards-compatibility reasons.
2022-08-09 00:00:14 +01:00
Ryan Chandler
06cbbeff40
parser: start supporting reserved non modifiers as method names
2022-08-08 23:53:32 +01:00
Ryan Chandler
a238ebd579
lexer: produce instanceof tokens
2022-08-06 04:40:32 +01:00
Ryan Chandler
431d449f10
parser+lexer: support switch statements
...
Closes #4 .
2022-08-04 10:53:41 +01:00
Ryan Chandler
65fa165ba8
parser+lexer: support try/catch/finally statements
...
Closes #17 .
2022-08-04 00:41:27 +01:00
Ryan Chandler
b254e59bde
parser+lexer: support match expressions
...
Closes #16 .
2022-08-04 00:21:10 +01:00
Ryan Chandler
38bf05f9f7
lexer: produce doc comments
2022-08-02 00:14:24 +01:00
Ryan Chandler
83aee4d171
phpc: compile conditionals, assignments and native fns
2022-08-01 14:13:53 +01:00
Ryan Chandler
212a46b2ac
lexer: produce increment tokens
2022-07-28 20:18:08 +01:00
Ryan Chandler
0322e3c805
parser: support normal for statements
2022-07-28 20:13:08 +01:00
Ryan Chandler
22d8cc332c
parser: support add assign operator
2022-07-28 20:07:40 +01:00
Ryan Chandler
67a26ae78f
parser: support clone expressions
2022-07-28 20:05:04 +01:00
Ryan Chandler
ad4f005511
parser: support null coalescing operator expressions (kinda)
2022-07-28 20:02:11 +01:00
Ryan Chandler
8f5a00b16d
lexer: fix fq identifiers and boolean or token
2022-07-28 17:53:05 +01:00
Ryan Chandler
d903fc5d79
parser&lexer: support for various things found in a Laravel app
2022-07-28 17:38:09 +01:00
Ryan Chandler
16283d1273
parser: support equals/identical and not variant expressions
2022-07-28 17:01:40 +01:00
Ryan Chandler
d5bef4e2ae
lexer: produce double colon tokens
2022-07-28 14:07:44 +01:00
Ryan Chandler
abd1559f31
parser: support foreach statements
2022-07-28 12:29:44 +01:00
Ryan Chandler
479b323cd9
parser: support variadic function params
...
Closes #9
2022-07-28 01:04:20 +01:00
Ryan Chandler
fbc48a5db5
parser: support empty / simplest switch statement
2022-07-28 00:30:32 +01:00
Ryan Chandler
e1eff91ee7
parser: support continue statements
2022-07-27 21:14:32 +01:00
Ryan Chandler
3ad45e6d1e
parser: support break statements
2022-07-27 20:59:20 +01:00
Ryan Chandler
f5c3143468
all: clippy
2022-07-26 17:56:10 +01:00
Ryan Chandler
d30e252c9d
all: remove let_chains feature
2022-07-26 14:07:08 +01:00
Ryan Chandler
e781ed186d
lexer: produce arrow tokens
2022-07-26 10:47:26 +01:00
Ryan Chandler
be40cd61c4
parser: support basic math ops
2022-07-25 20:16:18 +01:00
Ryan Chandler
b0ce1bdd30
lexer: produce new tokens
2022-07-25 19:06:53 +01:00
Ryan Chandler
5bba0f7269
parser: support long and short closures
2022-07-25 19:00:26 +01:00
Ryan Chandler
7cf833800e
lexer: produce trait tokens
2022-07-25 14:21:13 +01:00
Ryan Chandler
c5d89f8881
all: clippy
2022-07-25 01:17:17 +01:00
Ryan Chandler
67b4a086a1
lexer: produce interface tokens
2022-07-25 00:58:04 +01:00
Ryan Chandler
201a89fc4d
parser: support a fuller class parsing structure
2022-07-25 00:46:10 +01:00
Ryan Chandler
a8f06eb17c
lexer: rename BitAnd to Ampersand for consistency with Pipe
2022-07-23 16:04:11 +01:00
Ryan Chandler
9b82f360fa
lexer: produce pipe tokens
2022-07-23 15:53:15 +01:00
Ryan Chandler
8ebd8862ae
lexer: ensure multi-line comments get closed
2022-07-22 17:56:43 +01:00
Ryan Chandler
1150804fe7
parser: support use statements
2022-07-22 16:56:10 +01:00
Ryan Chandler
8042a6f33f
parser: support namespace statements with blocks or one-liners
2022-07-22 16:44:26 +01:00
Ryan Chandler
ab7b067e43
lexer: basic support for double-quoted strings
2022-07-22 15:13:32 +01:00
Ryan Chandler
2e298b2cec
lexer: recognise all tokens in laravel/framework
2022-07-22 13:55:29 +01:00
Ryan Chandler
8070a8dc71
lexer: produce const tokens
2022-07-22 13:16:34 +01:00
Ryan Chandler
86c74223fa
lexer: produce multi-line comments
2022-07-22 12:59:46 +01:00
Ryan Chandler
82d5a36836
lexer: ensure comments include the opening chars
2022-07-22 12:12:20 +01:00
Ryan Chandler
bc54a4cf85
lexer: produce qualified identifier tokens
2022-07-22 12:09:26 +01:00
Ryan Chandler
bd21dc2132
meta: output commands when running files
2022-07-21 21:17:25 +01:00
Ryan Chandler
6f80c051a4
lexer: support single line comments
2022-07-21 20:10:45 +01:00
Ryan Chandler
51dd813f43
lexer: produce single-quoted constant string tokens
2022-07-21 16:06:06 +01:00
Ryan Chandler
c3feeb0e3a
lexer: produce use tokens
2022-07-21 15:11:02 +01:00
Ryan Chandler
e657d27664
lexer: produce true and false tokens
2022-07-21 15:09:00 +01:00
Ryan Chandler
83c65a4251
lexer: produce capitalized null tokens
2022-07-21 15:07:55 +01:00