Commit graph

169 commits

Author SHA1 Message Date
Alexander Wang
15ba701576
d2oracle: glob null edges 2024-06-03 13:11:45 -06:00
Alexander Wang
26fd14455d
d2ir: fix substitutions in imports 2024-04-17 15:59:12 -07:00
Alexander Wang
2425838e04
fix nested spread substitutions compiler error 2024-04-17 11:26:30 -07:00
Alexander Wang
453c24388a
d2ir: fix glob applications on edges 2024-03-06 22:50:42 -08:00
Alexander Wang
3563b15933
no inheriting label 2024-02-14 18:01:31 -08:00
Alexander Wang
7045eb9b6e
amend 2023-12-24 22:40:35 -08:00
Alexander Wang
336789c93f
expose import stack 2023-12-24 22:04:26 -08:00
Alexander Wang
27ea8314e9
customize theme colors in vars-config 2023-12-14 11:35:49 -08:00
Alexander Wang
12b166b398
globs: fix imported case 2023-12-05 13:42:43 -08:00
Alexander Wang
7d36a57b04
globs: fix ampersand outside glob 2023-11-26 18:27:40 -08:00
Alexander Wang
cb001ad925
nit 2023-11-01 13:21:11 -07:00
Alexander Wang
ffe5a1fe86
compiler: fix vars crashing. Change scoping behavior 2023-11-01 12:26:17 -07:00
Alexander Wang
5c6a94a6ca
compiler: Fix compiler errors of keys in globs 2023-10-31 15:55:25 -07:00
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
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
a24716d1f1
d2ir: Fix infinite loop in triple globs 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
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
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
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
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
Alexander Wang
a54907e28a
remove overlayVars 2023-07-13 10:16:41 -07:00
Alexander Wang
eba41af47d
use scalarstring 2023-07-13 10:13:26 -07:00
Alexander Wang
780345beeb
fix double quote primary 2023-07-13 10:11:08 -07:00
Alexander Wang
ffdb5121f4
err msg 2023-07-13 08:37:22 -07:00
Alexander Wang
06ed41ecae
remove dead code 2023-07-13 08:36:28 -07:00
Alexander Wang
ef11d47fc8
null 2023-07-13 08:35:16 -07:00
Alexander Wang
98f79e2ba5
arrays 2023-07-12 22:20:55 -07:00
Alexander Wang
4b7b636657
spread 2023-07-12 14:53:28 -07:00
Alexander Wang
85bfad19a6
compile composites 2023-07-12 11:55:58 -07:00
Alexander Wang
d06e395e8d
overlayVars refactor 2023-07-12 10:27:32 -07:00
Alexander Wang
63dbaf0935
pr changes 2023-07-11 23:26:06 -07:00
Alexander Wang
67a06b6557
var-in-var 2023-07-11 18:05:03 -07:00
Alexander Wang
af69e6f626
edge cases 2023-07-11 17:33:01 -07:00
Alexander Wang
92d87b553f
new implementation 2023-07-11 17:19:34 -07:00
Alexander Wang
85cf491d74
quotes 2023-07-11 14:56:09 -07:00
Alexander Wang
a6125c46ec
cleanup 2023-07-11 14:01:35 -07:00
Alexander Wang
78e9e4565e
only coalesce if subbed 2023-07-11 13:52:29 -07:00
Alexander Wang
b193b9be8a
cleanup 2023-07-11 13:44:00 -07:00
Alexander Wang
741a9aa306
cleanup 2023-07-11 13:40:44 -07:00
Alexander Wang
090d10e9ca
handle interpolation 2023-07-11 13:32:07 -07:00
Alexander Wang
e7e2566564
save 2023-07-11 11:19:50 -07:00
Alexander Wang
08cc907f07
more test 2023-07-10 22:22:04 -07:00
Alexander Wang
fd70b5ef46
layers work 2023-07-10 21:32:30 -07:00
Alexander Wang
05802edb07
edge label working 2023-07-10 21:18:18 -07:00
Alexander Wang
c9793b9a87
label works 2023-07-10 19:24:21 -07:00
Alexander Wang
1acc3d685a
new implementation 2023-06-26 11:57:18 -07:00
Alexander Wang
5be1f6c187
cleanup 2023-06-26 10:39:38 -07:00
Alexander Wang
09d1ec6314
reimplement 2023-06-25 23:10:56 -07:00
Alexander Wang
6749115ce2
reappear works 2023-06-25 18:59:53 -07:00
Alexander Wang
9351a2e2cd
cleanup 2023-06-20 18:56:04 -07:00
Alexander Wang
21d2c44413
set wip 2023-06-20 18:56:03 -07:00
Alexander Wang
1ff119d803
baseAST 2023-06-20 18:56:02 -07:00
Anmol Sethi
986f069c18
d2ir: Fix link paths to be unquoted strings
Allows for simpler manipulation.
2023-06-06 22:37:56 -07:00
Anmol Sethi
7d9f8b6c08
d2ir: Update links after import 2023-06-06 22:13:49 -07:00
Anmol Sethi
7f0450121a
d2ir: Handle imported scenarios/steps/links 2023-06-06 16:49:12 -07:00
Anmol Sethi
2fcc9ed140
d2ir: Compile imports
Works as so:

index.d2:
```d2
x: @x
```

x.d2:
```d2
label: meow
shape: circle
```

TODO:

- [ ] Correctly import into fields by handling the scenarios/steps overlay.
      - And links.
- [ ] Test every kind of import.
2023-06-04 23:31:18 -07:00
Alexander Wang
305c72d239
implement classes 2023-04-07 09:57:51 -07:00
Alexander Wang
754e0ece80
use helpers 2023-04-06 21:02:12 -07:00
Alexander Wang
a2cffc9341
fix inheritence bug 2023-04-05 19:29:08 -07:00
Alexander Wang
60c912c605
compile reserved keys to lowercase in IR 2023-03-06 16:38:13 -08:00
Alexander Wang
81ce1f8209
pr feedback 2023-03-02 18:25:14 -08:00
Alexander Wang
d8b1e65386
disallow referring to root 2023-03-02 18:01:51 -08:00
Alexander Wang
78e6f3fc06
pr feedback 2023-03-02 17:56:32 -08:00
Alexander Wang
e504aca6d0
comment 2023-03-01 15:49:47 -08:00
Alexander Wang
85985bbaf5
ok 2023-03-01 15:38:02 -08:00
Alexander Wang
3a9745974c
save 2023-03-01 14:53:58 -08:00
Alexander Wang
a027564100
update 2023-02-22 16:21:16 -08:00
Alexander Wang
691b45733d
update 2023-02-22 14:59:05 -08:00
Alexander Wang
a0f8dbee22
fix steps panic 2023-02-22 13:43:24 -08:00
Anmol Sethi
8f58e4ca54
d2ir: Review fixes #714 2023-02-02 10:31:09 -08:00
Anmol Sethi
dce4385644
d2ir: Review fixes #714 2023-01-27 12:37:08 -08:00