Commit Graph

57 Commits

Author SHA1 Message Date
Devyn Cairns
f8297abf62 rework named args to also contain their short arg (it was there for a reason) 2024-07-09 04:41:36 -07:00
Devyn Cairns
41654e7656 handle Value::Error early in some places 2024-07-09 04:17:42 -07:00
Devyn Cairns
fc5faef126 fix a todo!() 2024-07-09 04:04:28 -07:00
Devyn Cairns
abbab2ef90 adjust comment 2024-07-09 03:40:04 -07:00
Devyn Cairns
323e2dbed9 fix handling short-only args. limitation: long args and short args now share the same namespace, effectively 2024-07-09 03:37:49 -07:00
Devyn Cairns
fab24f8e75 add typechecking to block decl call 2024-07-09 03:12:34 -07:00
Devyn Cairns
1ce2096b72 fix clippy. check pr: PASS 2024-07-08 21:10:41 -07:00
Devyn Cairns
0a399011e3 fix redirection, all tests passing 2024-07-08 20:57:02 -07:00
Devyn Cairns
6a8169e8ba add specific error for match guard bool 2024-07-08 20:13:50 -07:00
Devyn Cairns
4878d7250f fix let: glob cast from string 2024-07-08 19:54:40 -07:00
Devyn Cairns
ea3849da17 fix all of the error handling tests, mostly by making drain handle external exit codes properly 2024-07-08 19:48:25 -07:00
Devyn Cairns
5e04ab2f14 add check for a failed external call to try code 2024-07-08 17:48:14 -07:00
Devyn Cairns
5c5db1bd54 add check for error redirection for pipe error mode 2024-07-08 15:14:35 -07:00
Devyn Cairns
38884eec73 add explicit numbering for allocated files, fix some err redirection stuff 2024-07-08 13:58:41 -07:00
Devyn Cairns
2807717245 attempt to use a file stack for redirection, but realized that both out and err can be separate so need to be able to reference both 2024-07-07 23:08:16 -07:00
Devyn Cairns
689cc49663 support calling with the redirection mode of the caller 2024-07-07 20:17:55 -07:00
Devyn Cairns
6d199fd219
handle env var case insensitivity (should probably add these as utils elsewhere) 2024-07-06 03:20:59 -07:00
Devyn Cairns
716d016a28
throw error on redefined record key 2024-07-06 02:57:07 -07:00
Devyn Cairns
2304d71941
blocks and row conditions can contain captures, so gather them 2024-07-06 02:53:49 -07:00
Devyn Cairns
4c364519a0
fix env shorthand tests 2024-07-06 02:37:17 -07:00
Devyn Cairns
650cc95d94
fix handling of assignment of deep path env vars 2024-07-06 02:25:45 -07:00
Devyn Cairns
9498c06631
Move custom command call stack handling back to the eval side 2024-07-06 00:55:57 -07:00
Devyn Cairns
c249922e03
move recursion_count check to the top of eval_ir_block 2024-07-05 23:56:10 -07:00
Devyn Cairns
be8637d6cc
Remove RegisterBufCache since it didn't really measurably help at all 2024-07-05 20:44:05 -07:00
Devyn Cairns
250bcd3bc2 only limit callee stacks 2024-07-05 05:31:16 -07:00
Devyn Cairns
6e6cd00512 add recursion limit to ir eval 2024-07-05 05:24:08 -07:00
Devyn Cairns
4b56fba7d6 add datetime expression, remove todo compileerror 2024-07-05 05:17:49 -07:00
Devyn Cairns
c7a86cf75e make timeit and metadata work through hack that's ok for now 2024-07-05 05:08:52 -07:00
Devyn Cairns
c92de3a242
redirect_env 2024-07-04 17:16:58 -07:00
Devyn Cairns
49f93470a1
reuse RegisterBufCache? 2024-07-04 17:05:27 -07:00
Devyn Cairns
4ff41e5817 micro-optimizing a bit 2024-07-04 04:17:44 -07:00
Devyn Cairns
6398f0e31e
literal ValueWithUnit (filesize, duration) 2024-07-04 00:48:23 -07:00
Devyn Cairns
5c419a39e8
custom commands, fix let, fix bare $env var 2024-07-03 20:15:00 -07:00
Devyn Cairns
d33d21e1dc
row condition, fix table literal 2024-07-03 17:51:20 -07:00
Devyn Cairns
062821039a
match support 2024-07-03 17:36:26 -07:00
Devyn Cairns
52ec0c3b1d
fix parser info: actually add it to the call 2024-07-03 00:17:09 -07:00
Devyn Cairns
3c33a3f4eb
try/catch with catch as an expression rather than literal block 2024-07-03 00:04:46 -07:00
Devyn Cairns
7a055563a9
try/catch (wip) 2024-07-02 20:11:11 -07:00
Devyn Cairns
89d7b2237c
redirect test 2024-07-01 13:47:11 -07:00
Devyn Cairns
e2510d6c0d
fix redirection, more tests 2024-07-01 13:23:49 -07:00
Devyn Cairns
dca2798d4d
support parser info 2024-07-01 03:07:23 -07:00
Devyn Cairns
b63b0217bd
string, glob interpolation 2024-06-28 22:07:39 -07:00
Devyn Cairns
37255bef3c
implement for keyword, add iterate instruction 2024-06-28 21:03:57 -07:00
Devyn Cairns
69b2d00756
Support if/else, clear up drop/empty reg semantics 2024-06-26 18:47:08 -07:00
Devyn Cairns
73b092bfdc
instructions: list-spread, record-spread 2024-06-26 16:56:09 -07:00
Devyn Cairns
ed59f80b35
list, record, table expression support 2024-06-26 02:10:00 -07:00
Devyn Cairns
7890b3f27a
more efficient storage for string data in ir blocks 2024-06-26 01:23:46 -07:00
Devyn Cairns
0459b74613 knocking off some TODOs, closures work now 2024-06-22 16:18:30 -07:00
Devyn Cairns
3c4877b059 it does calls!!! 2024-06-18 22:16:21 -07:00
Devyn Cairns
6ebb245411
Revert "define an efficient-ish way to use args in place without an arg stack"
This reverts commit a563eb921d.
2024-06-17 18:08:12 -07:00