Commit graph

165 commits

Author SHA1 Message Date
Alexander Wang
0c230f6eb5
Fix link paths in nested imports 2023-09-14 07:22:34 -07:00
Anmol Sethi
64c2c8467a
d2ir: Fixup lazy globs across imports 2023-09-04 15:28:55 -07:00
Anmol Sethi
b1f9083ba1
d2ir: Make globs work through imports 2023-09-03 23:18:05 -07:00
Anmol Sethi
d03082d84d
d2ir: Fix Alex's null glob problem 2023-08-30 05:23:35 -07:00
Anmol Sethi
4523b503a7
d2ir: Ensure new scenario map doesn't re overlay 2023-08-30 04:38:35 -07:00
Anmol Sethi
88b885a753
d2ir: Ensure filters pass before setting primary 2023-08-30 00:37:03 -07:00
Anmol Sethi
47d671209a
d2ir: More alex fixes 2023-08-30 00:37:03 -07:00
Anmol Sethi
eed3f7eb21
d2ir: Many more glob fixes 2023-08-30 00:37:03 -07:00
Anmol Sethi
57ffc8dbbd
d2ir: Filter glob creation of edges with edge index where appropriate
On query globs, filtering without the edge index overfilters as we only match
one of the edge instead all of them.
2023-08-30 00:37:03 -07:00
Anmol Sethi
2efd87f059
d2ir: Add label filter exception for edges too 2023-08-30 00:37:03 -07:00
Anmol Sethi
1800ae3448
d2ir: Add exception for &label filter 2023-08-30 00:37:03 -07:00
Anmol Sethi
976ec17476
d2ir: Prevent globs from overriding any fields set by non globs 2023-08-30 00:37:03 -07:00
Anmol Sethi
aba28d365a
d2ir: More alixander identified lazy glob bugs 2023-08-30 00:37:03 -07:00
Anmol Sethi
d90f8253df
d2ir: Fix lazy globs being applied in reverse 2023-08-30 00:37:03 -07:00
Anmol Sethi
8455a7da8d
d2ir: Fix another lazy glob bug found by Alex 2023-08-30 00:37:03 -07:00
Anmol Sethi
a24716d1f1
d2ir: Fix infinite loop in triple globs 2023-08-30 00:37:03 -07:00
Anmol Sethi
4090e780f8
d2ir: Prevent triple globs from applying at a board root 2023-08-30 00:37:03 -07:00
Anmol Sethi
89b400b8f1
d2ir: Alixander review lazy glob fixes 2023-08-30 00:37:03 -07:00
Anmol Sethi
507b2d622e
d2ir: Add IDA support for edges
Not perfectly robust but good enough for now without massive refactor.
2023-08-30 00:37:03 -07:00
Anmol Sethi
bb6b176dee
d2ir: Implement lazy globs and triple glob
This finishes up the globs implementation!

See tests for what I mean by lazy globs and what the triple glob does.
2023-08-30 00:37:03 -07:00
Alexander Wang
5afc712455
dont modify ast when modifying links 2023-08-13 10:15:13 -07:00
Anmol Sethi
203953723e
d2parser: Autodetect UTF-16 based on BOM
Turns out I was wrong this is safe.
2023-08-02 11:10:24 -07:00
Anmol Sethi
b81da1ee62
d2parser: Support reading utf16 files 2023-08-02 09:56:35 -07:00
Anmol Sethi
d0d3ebe17e
d2ir: Fix filters on nested fields
See test on edges
2023-07-30 13:16:56 -07:00
Anmol Sethi
7ae2d78834
d2ir: Add filtering on class arrays 2023-07-30 12:41:29 -07:00
Anmol Sethi
6b73a61bd2
d2ir: Add filter error tests 2023-07-30 12:41:29 -07:00
Anmol Sethi
43166110b8
d2ir: Add single field filtering
See test.
2023-07-30 12:41:29 -07:00
Anmol Sethi
0002817b0a
d2ir: Implement ampersand filters 2023-07-30 12:41:29 -07:00
Anmol Sethi
6ca36e6b0c
d2ir: Glob review fixes 2023-07-30 12:41:15 -07:00
Anmol Sethi
6fdf4b07a5
d2ir: Make double globs work sanely across boards
See test.
2023-07-30 03:15:33 -07:00
Anmol Sethi
9c37d6dcfb
d2ir: Make globs more ergonomic in two specific edge cases
Were identified from @alixander writing documentation.
2023-07-30 01:27:49 -07:00
Anmol Sethi
bd2c94f7a8
d2ir: Make suffix globs case insensitive too 2023-07-29 21:33:41 -07:00
Anmol Sethi
63efa12160
d2ir: Fix globs to not match reserved 2023-07-29 16:57:25 -07:00
Anmol Sethi
82663f0445
d2ir: Explain EnsureField misnomer 2023-07-29 16:57:25 -07:00
Anmol Sethi
ff47a00abf
d2ir: Make globs case insensitive to match the rest of the language
note: I personally wish to change the language and make it case sensitive.
2023-07-29 16:57:25 -07:00
Anmol Sethi
95667750e0
d2ir: Fix and add test for glob-edge-glob-index 2023-07-29 16:57:25 -07:00
Anmol Sethi
b119174a09
d2ir: Fix implementation of Map.createEdge 2023-07-29 16:57:25 -07:00
Anmol Sethi
0d2b0aa99c
d2ir: Implement edge index globs 2023-07-29 16:57:25 -07:00
Anmol Sethi
d9b4b952ee
d2ir: Implement double globs 2023-07-29 16:57:25 -07:00
Anmol Sethi
1217ff35a7
d2ir: Add single glob matching to edges and make it work fully recursively 2023-07-29 16:57:25 -07:00
Anmol Sethi
210816a42b
d2ir: Fix _ with null 2023-07-29 16:57:25 -07:00
Anmol Sethi
359976e5d4
d2ir: Add single level field glob patterns 2023-07-29 16:57:25 -07:00
Alexander Wang
64fcb02ae3
fix nested links imported 2023-07-26 23:10:41 -07:00
Alexander Wang
45b396c894
config vars 2023-07-20 16:08:08 -07:00
Anmol Sethi
a79e963f3e
d2ir: Fix variables to passthrough primary type
If the variable is a number it should be parsed as a number and not coerced into a string.
See test change.
2023-07-18 14:58:22 -07:00
Alexander Wang
d275a45033
allow edges in vars 2023-07-13 14:47:32 -07:00
Alexander Wang
e95f61985e
fix import test 2023-07-13 14:41:06 -07:00
Alexander Wang
f12f9ca69d
move edge check 2023-07-13 14:34:33 -07:00
Alexander Wang
29af92310b
fix no-primary-composite 2023-07-13 14:11:14 -07:00
Alexander Wang
fb0c0d20ed
nested null 2023-07-13 10:22:37 -07:00