Commit Graph

93 Commits

Author SHA1 Message Date
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
Ryan Chandler
b0b6e52ac4
lexer: produce null tokens 2022-07-21 15:07:35 +01:00
Ryan Chandler
dbf583c3e5
lexer: produce float tokens 2022-07-21 15:06:46 +01:00
Ryan Chandler
4810c2b009
lexer: alphabetic order 2022-07-20 21:35:21 +01:00
Ryan Chandler
4b24d9e5d5
lexer: start adding some more token types 2022-07-20 21:33:59 +01:00
Ryan Chandler
92b457c87a
lexer: support more flags 2022-07-19 22:17:18 +01:00
Ryan Chandler
97c148e099
lexer+parser: support basic assoc arrays 2022-07-19 16:39:55 +01:00
Ryan Chandler
3430522e52
lexer+parser: basic support for lists 2022-07-19 16:37:32 +01:00
Ryan Chandler
e1fe663fc2
all: clippy 2022-07-19 16:32:21 +01:00
Ryan Chandler
2b2ec2253f
parser: basic class prop support with var 2022-07-19 15:58:20 +01:00
Ryan Chandler
a8a29a0e7c
lexer: extends and implements keywords 2022-07-19 15:06:21 +01:00
Ryan Chandler
dce6245df8
lexer: support else and elseif tokens 2022-07-19 14:35:00 +01:00
Ryan Chandler
5186d4e138
lexer: track line number and columns 2022-07-19 14:13:02 +01:00
Ryan Chandler
5b97f54ad4
parser: refactor to use a borrow friendly structure 2022-07-19 13:50:14 +01:00
Ryan Chandler
88edf3f8f5
lexer: equals tokens 2022-07-19 12:56:13 +01:00
Ryan Chandler
cfa199e81e
parser: class methods with visibility 2022-07-19 12:04:40 +01:00
Ryan Chandler
248ed14672
lexer: support class and visibility modifiers 2022-07-19 11:32:11 +01:00
Ryan Chandler
ce70d1f550
all: clippy 2022-07-16 20:42:45 +01:00
Ryan Chandler
07f06db11d
parser: correctly parse a basic recursive fib function 2022-07-16 18:11:35 +01:00
Ryan Chandler
ab3b9f8187
parser: empty functions with params 2022-07-16 16:31:25 +01:00
Ryan Chandler
58d95204a7
lexer: return token 2022-07-16 14:55:08 +01:00
Ryan Chandler
b2f32fff7a
lexer: basic integer support 2022-07-16 14:53:51 +01:00
Ryan Chandler
3162e01bce
lexer: variables 2022-07-16 14:48:21 +01:00
Ryan Chandler
cdfff5210b
lexer: punctuation and math ops 2022-07-16 14:29:21 +01:00
Ryan Chandler
3178a53680
lexer: basic identifier tokens and keywords 2022-07-16 14:24:27 +01:00
Ryan Chandler
25bda5af6f
lexer: rough state machine for lexing inline and scripting tokens 2022-07-16 14:14:03 +01:00