Commit graph

80 commits

Author SHA1 Message Date
Arseny Kapoulkine
cfc7aa9cf7 Forgot to fix the grammar comment 2022-08-23 11:34:37 -07:00
Arseny Kapoulkine
fcc5ca1cf1 Remove support for f arg for now, RFC update incoming 2022-08-23 11:32:35 -07:00
Arseny Kapoulkine
176e0add87
Update Ast/src/Lexer.cpp
Co-authored-by: Alexander McCord <11488393+alexmccord@users.noreply.github.com>
2022-08-23 11:06:53 -07:00
Kampfkarren
008952714e Only escape for interpolated strings 2022-08-22 21:55:26 -07:00
Kampfkarren
89f407a587 Test sane double brace lexing 2022-08-22 15:50:02 -07:00
Kampfkarren
adbe64fffc Support unicode escapes 2022-08-22 15:22:28 -07:00
Kampfkarren
1c172d2884 Merge remote-tracking branch 'upstream/master' into string-interpolation 2022-08-22 14:55:09 -07:00
Kampfkarren
486c9264f1 Optimization for brace stack with just '{' 2022-08-22 14:42:40 -07:00
Kampfkarren
cbe84bd5ea More tests 2022-08-22 14:41:27 -07:00
Arseny Kapoulkine
be2769ad14
Sync to upstream/release/541 (#644)
- Fix autocomplete not suggesting globals defined after the cursor (fixes #622)
- Improve type checker stability
- Reduce parser C stack consumption which fixes some stack overflow crashes on deeply nested sources
- Improve performance of bit32.extract/replace when width is implied (~3% faster chess)
- Improve performance of bit32.extract when field/width are constants (~10% faster base64)
- Heap dump now annotates thread stacks with local variable/function names
2022-08-18 14:32:08 -07:00
Kampfkarren
83dad7bdf3 Only get one error rather than two 2022-08-17 16:51:17 -07:00
Kampfkarren
3b26ab85a0 Better lexer tostring 2022-08-17 16:34:25 -07:00
Kampfkarren
09b5821768 enum class 2022-08-17 16:33:11 -07:00
Kampfkarren
8bb8f47325 New lexer method 2022-08-17 09:45:12 -07:00
Kampfkarren
cce6b98821 Merge remote-tracking branch 'upstream/master' into string-interpolation 2022-08-04 18:15:53 -07:00
Arseny Kapoulkine
1b20fcd43c
Sync to upstream/release/539 (#625) 2022-08-04 15:35:33 -07:00
Arseny Kapoulkine
d3b566c258
Sync to upstream/release/538 (#616) 2022-07-28 21:24:07 -07:00
Kampfkarren
08494dc57a Interpolated strings as args 2022-07-28 18:56:10 -07:00
Kampfkarren
acf5c78dcc LUA_ASSERT in readInterpolatedStringBegin 2022-07-28 17:49:41 -07:00
Kampfkarren
c8d7fd171f Escape interpolated strings better 2022-07-28 17:45:02 -07:00
Kampfkarren
bfca408753 Fix line endings on Parser.h 2022-07-28 17:27:07 -07:00
Kampfkarren
9246edd601 Fix lineendings on Parser 2022-07-28 17:26:43 -07:00
Kampfkarren
657fa854eb Remove unused variable 2022-07-28 00:10:31 -07:00
Kampfkarren
dbf5064449 Change nextInterpolatedString return value 2022-07-27 23:43:25 -07:00
Kampfkarren
54734826e7 Use TempVector 2022-07-27 23:36:45 -07:00
Kampfkarren
efe3b7ca36 Bespoke error for interpolated string fails 2022-07-27 22:42:37 -07:00
Kampfkarren
63654211c6 Allow interpolated strings without expressions, add TODO test for failing interp strings as types 2022-07-27 22:12:27 -07:00
Kampfkarren
6e97add1ee Support un-interpolated strings 2022-07-27 18:10:06 -07:00
Kampfkarren
9918529641 Documentation for strings 2022-07-27 17:41:52 -07:00
Kampfkarren
2a41dca9d4 Avoid extra allocations 2022-07-27 17:13:44 -07:00
Kampfkarren
dadbd4cd47 FFlag off 2022-07-27 16:47:20 -07:00
Kampfkarren
c770cac964 auto cleanup 2022-07-27 16:43:49 -07:00
Kampfkarren
310adedc90 Optional ergonomics 2022-07-27 16:40:43 -07:00
Kampfkarren
8dcbebaa70 Remove backslashes 2022-07-27 16:36:05 -07:00
Kampfkarren
11787e8336 Bespoke error for interpolated string after call 2022-07-27 02:25:12 -07:00
Kampfkarren
591192c3e5 Fix location, Transpiler 2022-07-26 23:06:56 -07:00
Kampfkarren
aa9f9c371f Check end brace parse errors 2022-07-26 22:14:28 -07:00
Kampfkarren
36b0037145 FFlag 2022-07-26 20:40:37 -07:00
Kampfkarren
beb7ecceb1 Remove unneeded lexer APIs 2022-07-26 20:25:20 -07:00
Kampfkarren
ea01fe3b34 Remove outdated TODO 2022-07-26 20:22:17 -07:00
Kampfkarren
d4642f78ef Include grammar 2022-07-26 20:20:44 -07:00
Kampfkarren
12ca7c5bb0 Better error for constant 2022-07-26 19:48:17 -07:00
Kampfkarren
8e409efde8 Use the same error 2022-07-26 19:45:01 -07:00
Kampfkarren
8d0d271cd3 Make interpolated string with no formatting a syntax error 2022-07-26 19:39:54 -07:00
Kampfkarren
f8be1070c3 Make {{ a parse error 2022-07-26 19:30:02 -07:00
Kampfkarren
6cb9054c07 Remove copy paste (though I'm not sure it's much better), start work on {{ parse failure 2022-07-26 19:20:33 -07:00
Kampfkarren
08a0f3015e Fix multiple string interps 2022-07-26 15:47:33 -07:00
Kampfkarren
24f61dfeb5 Basic string interpolation proof of concept 2022-07-26 01:48:22 -07:00
Arseny Kapoulkine
5b2e39c922
Sync to upstream/release/536 (#592) 2022-07-14 15:52:26 -07:00
Arseny Kapoulkine
506d971421
Sync to upstream/release/535 (#584) 2022-07-07 18:22:39 -07:00