d2ir: Add single glob matching to edges and make it work fully recursively

This commit is contained in:
Anmol Sethi 2023-06-24 15:31:58 -07:00
parent 210816a42b
commit 1217ff35a7
No known key found for this signature in database
GPG key ID: 8CEF1878FF10ADEB
20 changed files with 9975 additions and 106 deletions

View file

@ -740,6 +740,13 @@ func (kp *KeyPath) IDA() (ida []string) {
return ida
}
func (kp *KeyPath) Copy() *KeyPath {
kp2 := *kp
kp2.Path = nil
kp2.Path = append(kp2.Path, kp.Path...)
return &kp2
}
type Edge struct {
Range Range `json:"range"`

View file

@ -396,27 +396,15 @@ func (c *compiler) compileKey(refctx *RefContext) {
}
func (c *compiler) compileField(dst *Map, kp *d2ast.KeyPath, refctx *RefContext) {
us, ok := kp.Path[0].Unbox().(*d2ast.UnquotedString)
if ok && us.Pattern != nil {
for _, f := range dst.Fields {
if matchPattern(f.Name, us.Pattern) {
if len(kp.Path) == 1 {
c._compileField(f, refctx)
} else {
// TODO: recurse
}
}
}
return
}
f, err := dst.EnsureField(kp, refctx)
fa, err := dst.EnsureField(kp, refctx)
if err != nil {
c.err.Errors = append(c.err.Errors, err.(d2ast.Error))
return
}
c._compileField(f, refctx)
for _, f := range fa {
c._compileField(f, refctx)
}
}
func (c *compiler) _compileField(f *Field, refctx *RefContext) {
@ -424,7 +412,7 @@ func (c *compiler) _compileField(f *Field, refctx *RefContext) {
// For vars, if we delete the field, it may just resolve to an outer scope var of the same name
// Instead we keep it around, so that resolveSubstitutions can find it
if !IsVar(ParentMap(f)) {
dst.DeleteField(f.Name)
ParentMap(f).DeleteField(f.Name)
return
}
}
@ -621,12 +609,17 @@ func (c *compiler) compileLink(refctx *RefContext) {
}
func (c *compiler) compileEdges(refctx *RefContext) {
if refctx.Key.Key != nil {
f, err := refctx.ScopeMap.EnsureField(refctx.Key.Key, refctx)
if err != nil {
c.err.Errors = append(c.err.Errors, err.(d2ast.Error))
return
}
if refctx.Key.Key == nil {
c._compileEdges(refctx)
return
}
fa, err := refctx.ScopeMap.EnsureField(refctx.Key.Key, refctx)
if err != nil {
c.err.Errors = append(c.err.Errors, err.(d2ast.Error))
return
}
for _, f := range fa {
if _, ok := f.Composite.(*Array); ok {
c.errorf(refctx.Key.Key, "cannot index into array")
return
@ -636,9 +629,13 @@ func (c *compiler) compileEdges(refctx *RefContext) {
parent: f,
}
}
refctx.ScopeMap = f.Map()
refctx2 := *refctx
refctx2.ScopeMap = f.Map()
c._compileEdges(&refctx2)
}
}
func (c *compiler) _compileEdges(refctx *RefContext) {
eida := NewEdgeIDs(refctx.Key)
for i, eid := range eida {
if refctx.Key != nil && refctx.Key.Value.Null != nil {
@ -649,19 +646,20 @@ func (c *compiler) compileEdges(refctx *RefContext) {
refctx = refctx.Copy()
refctx.Edge = refctx.Key.Edges[i]
var e *Edge
var ea []*Edge
if eid.Index != nil {
ea := refctx.ScopeMap.GetEdges(eid)
ea = refctx.ScopeMap.GetEdges(eid)
if len(ea) == 0 {
c.errorf(refctx.Edge, "indexed edge does not exist")
continue
}
e = ea[0]
e.References = append(e.References, &EdgeReference{
Context: refctx,
})
refctx.ScopeMap.appendFieldReferences(0, refctx.Edge.Src, refctx)
refctx.ScopeMap.appendFieldReferences(0, refctx.Edge.Dst, refctx)
for _, e := range ea {
e.References = append(e.References, &EdgeReference{
Context: refctx,
})
refctx.ScopeMap.appendFieldReferences(0, refctx.Edge.Src, refctx)
refctx.ScopeMap.appendFieldReferences(0, refctx.Edge.Dst, refctx)
}
} else {
_, err := refctx.ScopeMap.EnsureField(refctx.Edge.Src, refctx)
if err != nil {
@ -674,41 +672,43 @@ func (c *compiler) compileEdges(refctx *RefContext) {
continue
}
e, err = refctx.ScopeMap.CreateEdge(eid, refctx)
ea, err = refctx.ScopeMap.CreateEdge(eid, refctx)
if err != nil {
c.err.Errors = append(c.err.Errors, err.(d2ast.Error))
continue
}
}
if refctx.Key.EdgeKey != nil {
if e.Map_ == nil {
e.Map_ = &Map{
parent: e,
}
}
c.compileField(e.Map_, refctx.Key.EdgeKey, refctx)
} else {
if refctx.Key.Primary.Unbox() != nil {
e.Primary_ = &Scalar{
parent: e,
Value: refctx.Key.Primary.Unbox(),
}
}
if refctx.Key.Value.Array != nil {
c.errorf(refctx.Key.Value.Unbox(), "edges cannot be assigned arrays")
continue
} else if refctx.Key.Value.Map != nil {
for _, e := range ea {
if refctx.Key.EdgeKey != nil {
if e.Map_ == nil {
e.Map_ = &Map{
parent: e,
}
c.compileField(e.Map_, refctx.Key.EdgeKey, refctx)
}
c.compileMap(e.Map_, refctx.Key.Value.Map, refctx.ScopeAST)
} else if refctx.Key.Value.ScalarBox().Unbox() != nil {
e.Primary_ = &Scalar{
parent: e,
Value: refctx.Key.Value.ScalarBox().Unbox(),
} else {
if refctx.Key.Primary.Unbox() != nil {
e.Primary_ = &Scalar{
parent: e,
Value: refctx.Key.Primary.Unbox(),
}
}
if refctx.Key.Value.Array != nil {
c.errorf(refctx.Key.Value.Unbox(), "edges cannot be assigned arrays")
continue
} else if refctx.Key.Value.Map != nil {
if e.Map_ == nil {
e.Map_ = &Map{
parent: e,
}
}
c.compileMap(e.Map_, refctx.Key.Value.Map, refctx.ScopeAST)
} else if refctx.Key.Value.ScalarBox().Unbox() != nil {
e.Primary_ = &Scalar{
parent: e,
Value: refctx.Key.Value.ScalarBox().Unbox(),
}
}
}
}

View file

@ -651,7 +651,7 @@ func (m *Map) getField(ida []string) *Field {
return nil
}
func (m *Map) EnsureField(kp *d2ast.KeyPath, refctx *RefContext) (*Field, error) {
func (m *Map) EnsureField(kp *d2ast.KeyPath, refctx *RefContext) ([]*Field, error) {
i := 0
for kp.Path[i].Unbox().ScalarString() == "_" {
m = ParentMap(m)
@ -663,29 +663,46 @@ func (m *Map) EnsureField(kp *d2ast.KeyPath, refctx *RefContext) (*Field, error)
}
i++
}
return m.ensureField(i, kp, refctx)
var fa []*Field
err := m.ensureField(i, kp, refctx, &fa)
return fa, err
}
func (m *Map) ensureField(i int, kp *d2ast.KeyPath, refctx *RefContext) (*Field, error) {
func (m *Map) ensureField(i int, kp *d2ast.KeyPath, refctx *RefContext, fa *[]*Field) error {
us, ok := kp.Path[i].Unbox().(*d2ast.UnquotedString)
if ok && us.Pattern != nil {
for _, f := range m.Fields {
if matchPattern(f.Name, us.Pattern) {
if i == len(kp.Path)-1 {
*fa = append(*fa, f)
} else if f.Map() != nil {
f.Map().ensureField(i+1, kp, refctx, fa)
}
}
}
return nil
}
head := kp.Path[i].Unbox().ScalarString()
if _, ok := d2graph.ReservedKeywords[strings.ToLower(head)]; ok {
head = strings.ToLower(head)
if _, ok := d2graph.CompositeReservedKeywords[head]; !ok && i < len(kp.Path)-1 {
return nil, d2parser.Errorf(kp.Path[i].Unbox(), fmt.Sprintf(`"%s" must be the last part of the key`, head))
return d2parser.Errorf(kp.Path[i].Unbox(), fmt.Sprintf(`"%s" must be the last part of the key`, head))
}
}
if head == "_" {
return nil, d2parser.Errorf(kp.Path[i].Unbox(), `parent "_" can only be used in the beginning of paths, e.g. "_.x"`)
return d2parser.Errorf(kp.Path[i].Unbox(), `parent "_" can only be used in the beginning of paths, e.g. "_.x"`)
}
if head == "classes" && NodeBoardKind(m) == "" {
return nil, d2parser.Errorf(kp.Path[i].Unbox(), "%s is only allowed at a board root", head)
return d2parser.Errorf(kp.Path[i].Unbox(), "%s is only allowed at a board root", head)
}
if findBoardKeyword(head) != -1 && NodeBoardKind(m) == "" {
return nil, d2parser.Errorf(kp.Path[i].Unbox(), "%s is only allowed at a board root", head)
return d2parser.Errorf(kp.Path[i].Unbox(), "%s is only allowed at a board root", head)
}
for _, f := range m.Fields {
@ -703,17 +720,18 @@ func (m *Map) ensureField(i int, kp *d2ast.KeyPath, refctx *RefContext) (*Field,
}
if i+1 == len(kp.Path) {
return f, nil
*fa = append(*fa, f)
return nil
}
if _, ok := f.Composite.(*Array); ok {
return nil, d2parser.Errorf(kp.Path[i].Unbox(), "cannot index into array")
return d2parser.Errorf(kp.Path[i].Unbox(), "cannot index into array")
}
if f.Map() == nil {
f.Composite = &Map{
parent: f,
}
}
return f.Map().ensureField(i+1, kp, refctx)
return f.Map().ensureField(i+1, kp, refctx, fa)
}
f := &Field{
@ -730,12 +748,13 @@ func (m *Map) ensureField(i int, kp *d2ast.KeyPath, refctx *RefContext) (*Field,
}
m.Fields = append(m.Fields, f)
if i+1 == len(kp.Path) {
return f, nil
*fa = append(*fa, f)
return nil
}
f.Composite = &Map{
parent: f,
}
return f.Map().ensureField(i+1, kp, refctx)
return f.Map().ensureField(i+1, kp, refctx, fa)
}
func (m *Map) DeleteEdge(eid *EdgeID) *Edge {
@ -825,57 +844,128 @@ func (m *Map) GetEdges(eid *EdgeID) []*Edge {
return ea
}
func (m *Map) CreateEdge(eid *EdgeID, refctx *RefContext) (*Edge, error) {
func (m *Map) CreateEdge(eid *EdgeID, refctx *RefContext) ([]*Edge, error) {
var ea []*Edge
return ea, m.createEdge(eid, refctx, &ea)
}
func (m *Map) createEdge(eid *EdgeID, refctx *RefContext, ea *[]*Edge) error {
if ParentEdge(m) != nil {
return nil, d2parser.Errorf(refctx.Edge, "cannot create edge inside edge")
return d2parser.Errorf(refctx.Edge, "cannot create edge inside edge")
}
eid, m, common, err := eid.resolve(m)
if err != nil {
return nil, d2parser.Errorf(refctx.Edge, err.Error())
return d2parser.Errorf(refctx.Edge, err.Error())
}
if len(common) > 0 {
f, err := m.EnsureField(d2ast.MakeKeyPath(common), nil)
commonEnd := len(refctx.Edge.Src.Path) - len(eid.SrcPath)
commonStart := commonEnd - len(common)
commonKP := refctx.Edge.Src.Copy()
commonKP.Path = commonKP.Path[commonStart:commonEnd]
fa, err := m.EnsureField(commonKP, nil)
if err != nil {
return nil, err
return err
}
if _, ok := f.Composite.(*Array); ok {
return nil, d2parser.Errorf(refctx.Edge.Src, "cannot index into array")
}
if f.Map() == nil {
f.Composite = &Map{
parent: f,
for _, f := range fa {
if _, ok := f.Composite.(*Array); ok {
return d2parser.Errorf(refctx.Edge.Src, "cannot index into array")
}
if f.Map() == nil {
f.Composite = &Map{
parent: f,
}
}
err = f.Map().createEdge(eid, refctx, ea)
if err != nil {
return err
}
}
return f.Map().CreateEdge(eid, refctx)
return nil
}
ij := findProhibitedEdgeKeyword(eid.SrcPath...)
if ij != -1 {
return nil, d2parser.Errorf(refctx.Edge.Src.Path[ij].Unbox(), "reserved keywords are prohibited in edges")
return d2parser.Errorf(refctx.Edge.Src.Path[ij].Unbox(), "reserved keywords are prohibited in edges")
}
ij = findBoardKeyword(eid.SrcPath...)
if ij == len(eid.SrcPath)-1 {
return nil, d2parser.Errorf(refctx.Edge.Src.Path[ij].Unbox(), "edge with board keyword alone doesn't make sense")
return d2parser.Errorf(refctx.Edge.Src.Path[ij].Unbox(), "edge with board keyword alone doesn't make sense")
}
src := m.GetField(eid.SrcPath...)
if NodeBoardKind(src) != "" {
return nil, d2parser.Errorf(refctx.Edge.Src, "cannot create edges between boards")
srcStart := len(refctx.Edge.Src.Path) - len(eid.SrcPath)
if srcStart < 0 {
srcStart = 0
}
srcKP := refctx.Edge.Src.Copy()
srcKP.Path = srcKP.Path[srcStart:]
ij = findProhibitedEdgeKeyword(eid.DstPath...)
if ij != -1 {
return nil, d2parser.Errorf(refctx.Edge.Dst.Path[ij].Unbox(), "reserved keywords are prohibited in edges")
return d2parser.Errorf(refctx.Edge.Dst.Path[ij].Unbox(), "reserved keywords are prohibited in edges")
}
ij = findBoardKeyword(eid.DstPath...)
if ij == len(eid.DstPath)-1 {
return nil, d2parser.Errorf(refctx.Edge.Dst.Path[ij].Unbox(), "edge with board keyword alone doesn't make sense")
return d2parser.Errorf(refctx.Edge.Dst.Path[ij].Unbox(), "edge with board keyword alone doesn't make sense")
}
dstStart := len(refctx.Edge.Dst.Path) - len(eid.DstPath)
if dstStart < 0 {
dstStart = 0
}
dstKP := refctx.Edge.Dst.Copy()
dstKP.Path = dstKP.Path[dstStart:]
underscoresCountSrc := 0
underscoresCountDst := 0
for _, el := range refctx.Edge.Src.Path {
if el.ScalarString() == "_" {
underscoresCountSrc++
}
}
for _, el := range refctx.Edge.Dst.Path {
if el.ScalarString() == "_" {
underscoresCountDst++
}
}
for i := 0; i < underscoresCountDst; i++ {
srcKP.Path = append([]*d2ast.StringBox{d2ast.RawStringBox(eid.SrcPath[i], true)}, srcKP.Path...)
}
for i := 0; i < underscoresCountSrc; i++ {
dstKP.Path = append([]*d2ast.StringBox{d2ast.RawStringBox(eid.DstPath[i], true)}, dstKP.Path...)
}
srcFA, err := m.EnsureField(srcKP, refctx)
if err != nil {
return err
}
dstFA, err := m.EnsureField(dstKP, refctx)
if err != nil {
return err
}
for _, src := range srcFA {
for _, dst := range dstFA {
eid2 := eid.Copy()
eid2.SrcPath = RelIDA(m, src)
eid2.DstPath = RelIDA(m, dst)
e, err := m.createEdge2(eid2, refctx, src, dst)
if err != nil {
return err
}
*ea = append(*ea, e)
}
}
return nil
}
func (m *Map) createEdge2(eid *EdgeID, refctx *RefContext, src, dst *Field) (*Edge, error) {
if NodeBoardKind(src) != "" {
return nil, d2parser.Errorf(refctx.Edge.Src, "cannot create edges between boards")
}
dst := m.GetField(eid.DstPath...)
if NodeBoardKind(dst) != "" {
return nil, d2parser.Errorf(refctx.Edge.Dst, "cannot create edges between boards")
}
if ParentBoard(src) != ParentBoard(dst) {
return nil, d2parser.Errorf(refctx.Edge, "cannot create edges between boards")
}
@ -1159,6 +1249,26 @@ func IDA(n Node) (ida []string) {
}
}
// RelIDA returns the absolute path to n relative to p.
func RelIDA(p, n Node) (ida []string) {
for {
f, ok := n.(*Field)
if ok {
ida = append(ida, f.Name)
if f.Root() {
reverseIDA(ida)
return ida
}
}
f = ParentField(n)
if f == nil || f.Root() || f == p || f.Composite == p {
reverseIDA(ida)
return ida
}
n = f
}
}
func reverseIDA(ida []string) {
for i := 0; i < len(ida)/2; i++ {
tmp := ida[i]

View file

@ -10,6 +10,19 @@ func testCompilePatterns(t *testing.T) {
t.Parallel()
tca := []testCase{
{
name: "escaped",
run: func(t testing.TB) {
m, err := compile(t, `animal: meow
action: yes
a\*: globbed`)
assert.Success(t, err)
assertQuery(t, m, 3, 0, nil, "")
assertQuery(t, m, 0, 0, "meow", "animal")
assertQuery(t, m, 0, 0, "yes", "action")
assertQuery(t, m, 0, 0, "globbed", `a\*`)
},
},
{
name: "prefix",
run: func(t testing.TB) {
@ -71,16 +84,67 @@ t*ink*r*t*inke*: globbed`)
},
},
{
name: "escaped",
name: "nested/prefix-suffix/3",
run: func(t testing.TB) {
m, err := compile(t, `animal: meow
action: yes
a\*: globbed`)
m, err := compile(t, `animate.constant.tinkertinker: meow
astronaut.constant.thinkerthinker: yes
a*n*t*.constant.t*ink*r*t*inke*: globbed`)
assert.Success(t, err)
assertQuery(t, m, 3, 0, nil, "")
assertQuery(t, m, 0, 0, "meow", "animal")
assertQuery(t, m, 0, 0, "yes", "action")
assertQuery(t, m, 0, 0, "globbed", `a\*`)
assertQuery(t, m, 6, 0, nil, "")
assertQuery(t, m, 0, 0, "globbed", "animate.constant.tinkertinker")
assertQuery(t, m, 0, 0, "globbed", "astronaut.constant.thinkerthinker")
},
},
{
name: "edge/1",
run: func(t testing.TB) {
m, err := compile(t, `animate
animal
an* -> an*`)
assert.Success(t, err)
assertQuery(t, m, 2, 4, nil, "")
assertQuery(t, m, 0, 0, nil, "(animate -> animal)[0]")
assertQuery(t, m, 0, 0, nil, "(animal -> animal)[0]")
},
},
{
name: "edge/2",
run: func(t testing.TB) {
m, err := compile(t, `shared.animate
shared.animal
sh*.(an* -> an*)`)
assert.Success(t, err)
assertQuery(t, m, 3, 4, nil, "")
assertQuery(t, m, 2, 4, nil, "shared")
assertQuery(t, m, 0, 0, nil, "shared.(animate -> animal)[0]")
assertQuery(t, m, 0, 0, nil, "shared.(animal -> animal)[0]")
},
},
{
name: "edge/3",
run: func(t testing.TB) {
m, err := compile(t, `shared.animate
shared.animal
sh*.an* -> sh*.an*`)
assert.Success(t, err)
assertQuery(t, m, 3, 4, nil, "")
assertQuery(t, m, 2, 4, nil, "shared")
assertQuery(t, m, 0, 0, nil, "shared.(animate -> animal)[0]")
assertQuery(t, m, 0, 0, nil, "shared.(animal -> animal)[0]")
},
},
{
name: "double-glob",
run: func(t testing.TB) {
m, err := compile(t, `shared.animate
shared.animal
**.style.fill: red`)
assert.Success(t, err)
assertQuery(t, m, 9, 0, nil, "")
assertQuery(t, m, 8, 0, nil, "shared")
assertQuery(t, m, 2, 0, nil, "shared.style")
assertQuery(t, m, 2, 0, nil, "shared.animate")
assertQuery(t, m, 2, 0, nil, "shared.animal")
},
},
}

View file

@ -1030,9 +1030,15 @@ func (p *parser) parseUnquotedString(inKey bool) (s *d2ast.UnquotedString) {
var sb strings.Builder
var rawb strings.Builder
lastPatternIndex := 0
defer func() {
sv := strings.TrimRightFunc(sb.String(), unicode.IsSpace)
rawv := strings.TrimRightFunc(rawb.String(), unicode.IsSpace)
if s.Pattern != nil {
if lastPatternIndex < len(sv) {
s.Pattern = append(s.Pattern, sv[lastPatternIndex:])
}
}
if sv == "" {
if len(s.Value) > 0 {
return
@ -1046,15 +1052,6 @@ func (p *parser) parseUnquotedString(inKey bool) (s *d2ast.UnquotedString) {
s.Value = append(s.Value, d2ast.InterpolationBox{String: &sv, StringRaw: &rawv})
}()
lastPatternIndex := 0
defer func() {
if s.Pattern != nil {
if lastPatternIndex < sb.Len() {
s.Pattern = append(s.Pattern, sb.String()[lastPatternIndex:])
}
}
}()
_s, eof := p.peekn(4)
p.rewind()
if !eof {

File diff suppressed because it is too large Load diff

View file

@ -171,6 +171,171 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/edges/nested.d2,0:2:2-0:3:3",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
},
"key_path": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:3:3",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:2:2-0:3:3",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:10:10",
"src": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:3:3",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:2:2-0:3:3",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/edges/nested.d2,0:7:7-0:10:10",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:7:7-0:8:8",
"value": [
{
"string": "z",
"raw_string": "z"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:9:9-0:10:10",
"value": [
{
"string": "p",
"raw_string": "p"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:10:10",
"edges": [
{
"range": "TestCompile/edges/nested.d2,0:0:0-0:10:10",
"src": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:3:3",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:2:2-0:3:3",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/edges/nested.d2,0:7:7-0:10:10",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:7:7-0:8:8",
"value": [
{
"string": "z",
"raw_string": "z"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:9:9-0:10:10",
"value": [
{
"string": "p",
"raw_string": "p"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
}
@ -342,6 +507,171 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
},
"key_path": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:3:3",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:2:2-0:3:3",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:10:10",
"src": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:3:3",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:2:2-0:3:3",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/edges/nested.d2,0:7:7-0:10:10",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:7:7-0:8:8",
"value": [
{
"string": "z",
"raw_string": "z"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:9:9-0:10:10",
"value": [
{
"string": "p",
"raw_string": "p"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:10:10",
"edges": [
{
"range": "TestCompile/edges/nested.d2,0:0:0-0:10:10",
"src": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:3:3",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:2:2-0:3:3",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/edges/nested.d2,0:7:7-0:10:10",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:7:7-0:8:8",
"value": [
{
"string": "z",
"raw_string": "z"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:9:9-0:10:10",
"value": [
{
"string": "p",
"raw_string": "p"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -516,6 +846,171 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/edges/nested.d2,0:9:9-0:10:10",
"value": [
{
"string": "p",
"raw_string": "p"
}
]
},
"key_path": {
"range": "TestCompile/edges/nested.d2,0:7:7-0:10:10",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:7:7-0:8:8",
"value": [
{
"string": "z",
"raw_string": "z"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:9:9-0:10:10",
"value": [
{
"string": "p",
"raw_string": "p"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:10:10",
"src": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:3:3",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:2:2-0:3:3",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/edges/nested.d2,0:7:7-0:10:10",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:7:7-0:8:8",
"value": [
{
"string": "z",
"raw_string": "z"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:9:9-0:10:10",
"value": [
{
"string": "p",
"raw_string": "p"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:10:10",
"edges": [
{
"range": "TestCompile/edges/nested.d2,0:0:0-0:10:10",
"src": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:3:3",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:2:2-0:3:3",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/edges/nested.d2,0:7:7-0:10:10",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:7:7-0:8:8",
"value": [
{
"string": "z",
"raw_string": "z"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:9:9-0:10:10",
"value": [
{
"string": "p",
"raw_string": "p"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
}
@ -687,6 +1182,171 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/edges/nested.d2,0:7:7-0:8:8",
"value": [
{
"string": "z",
"raw_string": "z"
}
]
},
"key_path": {
"range": "TestCompile/edges/nested.d2,0:7:7-0:10:10",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:7:7-0:8:8",
"value": [
{
"string": "z",
"raw_string": "z"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:9:9-0:10:10",
"value": [
{
"string": "p",
"raw_string": "p"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:10:10",
"src": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:3:3",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:2:2-0:3:3",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/edges/nested.d2,0:7:7-0:10:10",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:7:7-0:8:8",
"value": [
{
"string": "z",
"raw_string": "z"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:9:9-0:10:10",
"value": [
{
"string": "p",
"raw_string": "p"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:10:10",
"edges": [
{
"range": "TestCompile/edges/nested.d2,0:0:0-0:10:10",
"src": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:3:3",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:2:2-0:3:3",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/edges/nested.d2,0:7:7-0:10:10",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:7:7-0:8:8",
"value": [
{
"string": "z",
"raw_string": "z"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/nested.d2,0:9:9-0:10:10",
"value": [
{
"string": "p",
"raw_string": "p"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
}

View file

@ -112,6 +112,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/edges/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
},
"key_path": {
"range": "TestCompile/edges/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/edges/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/edges/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/edges/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/edges/root.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/edges/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/edges/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/edges/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -227,6 +337,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/edges/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
},
"key_path": {
"range": "TestCompile/edges/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/edges/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/edges/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/edges/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/edges/root.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/edges/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/edges/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/edges/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
}

View file

@ -138,6 +138,148 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/edges/underscore.d2,0:12:12-0:13:13",
"value": [
{
"string": "z",
"raw_string": "z"
}
]
},
"key_path": {
"range": "TestCompile/edges/underscore.d2,0:12:12-0:13:13",
"path": [
{
"unquoted_string": {
"range": ",0:0:0-0:0:0",
"value": [
{
"string": "p"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/underscore.d2,0:12:12-0:13:13",
"value": [
{
"string": "z",
"raw_string": "z"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/edges/underscore.d2,0:5:5-0:13:13",
"src": {
"range": "TestCompile/edges/underscore.d2,0:5:5-0:8:8",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/underscore.d2,0:5:5-0:6:6",
"value": [
{
"string": "_",
"raw_string": "_"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/underscore.d2,0:7:7-0:8:8",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/edges/underscore.d2,0:12:12-0:13:13",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/underscore.d2,0:12:12-0:13:13",
"value": [
{
"string": "z",
"raw_string": "z"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/edges/underscore.d2,0:5:5-0:14:14",
"edges": [
{
"range": "TestCompile/edges/underscore.d2,0:5:5-0:13:13",
"src": {
"range": "TestCompile/edges/underscore.d2,0:5:5-0:8:8",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/underscore.d2,0:5:5-0:6:6",
"value": [
{
"string": "_",
"raw_string": "_"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/underscore.d2,0:7:7-0:8:8",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/edges/underscore.d2,0:12:12-0:13:13",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/underscore.d2,0:12:12-0:13:13",
"value": [
{
"string": "z",
"raw_string": "z"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
}
@ -258,6 +400,147 @@
}
}
}
},
{
"string": {
"range": ",0:0:0-0:0:0",
"value": [
{
"string": "p"
}
]
},
"key_path": {
"range": "TestCompile/edges/underscore.d2,0:12:12-0:13:13",
"path": [
{
"unquoted_string": {
"range": ",0:0:0-0:0:0",
"value": [
{
"string": "p"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/underscore.d2,0:12:12-0:13:13",
"value": [
{
"string": "z",
"raw_string": "z"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/edges/underscore.d2,0:5:5-0:13:13",
"src": {
"range": "TestCompile/edges/underscore.d2,0:5:5-0:8:8",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/underscore.d2,0:5:5-0:6:6",
"value": [
{
"string": "_",
"raw_string": "_"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/underscore.d2,0:7:7-0:8:8",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/edges/underscore.d2,0:12:12-0:13:13",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/underscore.d2,0:12:12-0:13:13",
"value": [
{
"string": "z",
"raw_string": "z"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/edges/underscore.d2,0:5:5-0:14:14",
"edges": [
{
"range": "TestCompile/edges/underscore.d2,0:5:5-0:13:13",
"src": {
"range": "TestCompile/edges/underscore.d2,0:5:5-0:8:8",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/underscore.d2,0:5:5-0:6:6",
"value": [
{
"string": "_",
"raw_string": "_"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/underscore.d2,0:7:7-0:8:8",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/edges/underscore.d2,0:12:12-0:13:13",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/underscore.d2,0:12:12-0:13:13",
"value": [
{
"string": "z",
"raw_string": "z"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -406,6 +689,138 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/edges/underscore.d2,0:7:7-0:8:8",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
},
"key_path": {
"range": "TestCompile/edges/underscore.d2,0:5:5-0:8:8",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/underscore.d2,0:7:7-0:8:8",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/edges/underscore.d2,0:5:5-0:13:13",
"src": {
"range": "TestCompile/edges/underscore.d2,0:5:5-0:8:8",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/underscore.d2,0:5:5-0:6:6",
"value": [
{
"string": "_",
"raw_string": "_"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/underscore.d2,0:7:7-0:8:8",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/edges/underscore.d2,0:12:12-0:13:13",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/underscore.d2,0:12:12-0:13:13",
"value": [
{
"string": "z",
"raw_string": "z"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/edges/underscore.d2,0:5:5-0:14:14",
"edges": [
{
"range": "TestCompile/edges/underscore.d2,0:5:5-0:13:13",
"src": {
"range": "TestCompile/edges/underscore.d2,0:5:5-0:8:8",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/underscore.d2,0:5:5-0:6:6",
"value": [
{
"string": "_",
"raw_string": "_"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/edges/underscore.d2,0:7:7-0:8:8",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/edges/underscore.d2,0:12:12-0:13:13",
"path": [
{
"unquoted_string": {
"range": "TestCompile/edges/underscore.d2,0:12:12-0:13:13",
"value": [
{
"string": "z",
"raw_string": "z"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
}

View file

@ -450,6 +450,402 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:9:9-0:10:10",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
},
"key_path": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:0:0-0:10:10",
"path": [
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:9:9-0:10:10",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:0:0-0:24:24",
"src": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:0:0-0:10:10",
"path": [
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:0:0-0:6:6",
"value": [
{
"string": "layers",
"raw_string": "layers"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:7:7-0:8:8",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:9:9-0:10:10",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:14:14-0:24:24",
"path": [
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:14:14-0:20:20",
"value": [
{
"string": "layers",
"raw_string": "layers"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:21:21-0:22:22",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:23:23-0:24:24",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:0:0-0:24:24",
"edges": [
{
"range": "TestCompile/layers/errs/4/good_edge.d2,0:0:0-0:24:24",
"src": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:0:0-0:10:10",
"path": [
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:0:0-0:6:6",
"value": [
{
"string": "layers",
"raw_string": "layers"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:7:7-0:8:8",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:9:9-0:10:10",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:14:14-0:24:24",
"path": [
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:14:14-0:20:20",
"value": [
{
"string": "layers",
"raw_string": "layers"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:21:21-0:22:22",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:23:23-0:24:24",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:23:23-0:24:24",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
},
"key_path": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:14:14-0:24:24",
"path": [
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:23:23-0:24:24",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:0:0-0:24:24",
"src": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:0:0-0:10:10",
"path": [
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:0:0-0:6:6",
"value": [
{
"string": "layers",
"raw_string": "layers"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:7:7-0:8:8",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:9:9-0:10:10",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:14:14-0:24:24",
"path": [
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:14:14-0:20:20",
"value": [
{
"string": "layers",
"raw_string": "layers"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:21:21-0:22:22",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:23:23-0:24:24",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:0:0-0:24:24",
"edges": [
{
"range": "TestCompile/layers/errs/4/good_edge.d2,0:0:0-0:24:24",
"src": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:0:0-0:10:10",
"path": [
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:0:0-0:6:6",
"value": [
{
"string": "layers",
"raw_string": "layers"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:7:7-0:8:8",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:9:9-0:10:10",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:14:14-0:24:24",
"path": [
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:14:14-0:20:20",
"value": [
{
"string": "layers",
"raw_string": "layers"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:21:21-0:22:22",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/layers/errs/4/good_edge.d2,0:23:23-0:24:24",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
}

View file

@ -112,6 +112,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/layers/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
},
"key_path": {
"range": "TestCompile/layers/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/layers/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/layers/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/layers/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/layers/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/layers/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/layers/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/layers/root.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/layers/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/layers/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/layers/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/layers/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/layers/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -227,6 +337,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/layers/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
},
"key_path": {
"range": "TestCompile/layers/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/layers/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/layers/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/layers/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/layers/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/layers/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/layers/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/layers/root.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/layers/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/layers/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/layers/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/layers/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/layers/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},

573
testdata/d2ir/TestCompile/patterns/double-glob.exp.json generated vendored Normal file
View file

@ -0,0 +1,573 @@
{
"fields": [
{
"name": "shared",
"composite": {
"fields": [
{
"name": "animate",
"references": [
{
"string": {
"range": "TestCompile/patterns/double-glob.d2,0:7:7-0:14:14",
"value": [
{
"string": "animate",
"raw_string": "animate"
}
]
},
"key_path": {
"range": "TestCompile/patterns/double-glob.d2,0:0:0-0:14:14",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,0:0:0-0:6:6",
"value": [
{
"string": "shared",
"raw_string": "shared"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,0:7:7-0:14:14",
"value": [
{
"string": "animate",
"raw_string": "animate"
}
]
}
}
]
},
"context": {
"edge": null,
"key": {
"range": "TestCompile/patterns/double-glob.d2,0:0:0-0:14:14",
"key": {
"range": "TestCompile/patterns/double-glob.d2,0:0:0-0:14:14",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,0:0:0-0:6:6",
"value": [
{
"string": "shared",
"raw_string": "shared"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,0:7:7-0:14:14",
"value": [
{
"string": "animate",
"raw_string": "animate"
}
]
}
}
]
},
"primary": {},
"value": {}
}
}
}
]
},
{
"name": "animal",
"references": [
{
"string": {
"range": "TestCompile/patterns/double-glob.d2,1:7:22-1:13:28",
"value": [
{
"string": "animal",
"raw_string": "animal"
}
]
},
"key_path": {
"range": "TestCompile/patterns/double-glob.d2,1:0:15-1:13:28",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,1:0:15-1:6:21",
"value": [
{
"string": "shared",
"raw_string": "shared"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,1:7:22-1:13:28",
"value": [
{
"string": "animal",
"raw_string": "animal"
}
]
}
}
]
},
"context": {
"edge": null,
"key": {
"range": "TestCompile/patterns/double-glob.d2,1:0:15-1:13:28",
"key": {
"range": "TestCompile/patterns/double-glob.d2,1:0:15-1:13:28",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,1:0:15-1:6:21",
"value": [
{
"string": "shared",
"raw_string": "shared"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,1:7:22-1:13:28",
"value": [
{
"string": "animal",
"raw_string": "animal"
}
]
}
}
]
},
"primary": {},
"value": {}
}
}
}
]
},
{
"name": "style",
"composite": {
"fields": [
{
"name": "fill",
"primary": {
"value": {
"range": "TestCompile/patterns/double-glob.d2,2:15:44-2:18:47",
"value": [
{
"string": "red",
"raw_string": "red"
}
]
}
},
"references": [
{
"string": {
"range": "TestCompile/patterns/double-glob.d2,2:9:38-2:13:42",
"value": [
{
"string": "fill",
"raw_string": "fill"
}
]
},
"key_path": {
"range": "TestCompile/patterns/double-glob.d2,2:0:29-2:13:42",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,2:0:29-2:2:31",
"value": [
{
"string": "**",
"raw_string": "**"
}
],
"pattern": [
"*",
"",
"*"
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,2:3:32-2:8:37",
"value": [
{
"string": "style",
"raw_string": "style"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,2:9:38-2:13:42",
"value": [
{
"string": "fill",
"raw_string": "fill"
}
]
}
}
]
},
"context": {
"edge": null,
"key": {
"range": "TestCompile/patterns/double-glob.d2,2:0:29-2:18:47",
"key": {
"range": "TestCompile/patterns/double-glob.d2,2:0:29-2:13:42",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,2:0:29-2:2:31",
"value": [
{
"string": "**",
"raw_string": "**"
}
],
"pattern": [
"*",
"",
"*"
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,2:3:32-2:8:37",
"value": [
{
"string": "style",
"raw_string": "style"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,2:9:38-2:13:42",
"value": [
{
"string": "fill",
"raw_string": "fill"
}
]
}
}
]
},
"primary": {},
"value": {
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,2:15:44-2:18:47",
"value": [
{
"string": "red",
"raw_string": "red"
}
]
}
}
}
}
}
]
}
],
"edges": null
},
"references": [
{
"string": {
"range": "TestCompile/patterns/double-glob.d2,2:3:32-2:8:37",
"value": [
{
"string": "style",
"raw_string": "style"
}
]
},
"key_path": {
"range": "TestCompile/patterns/double-glob.d2,2:0:29-2:13:42",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,2:0:29-2:2:31",
"value": [
{
"string": "**",
"raw_string": "**"
}
],
"pattern": [
"*",
"",
"*"
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,2:3:32-2:8:37",
"value": [
{
"string": "style",
"raw_string": "style"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,2:9:38-2:13:42",
"value": [
{
"string": "fill",
"raw_string": "fill"
}
]
}
}
]
},
"context": {
"edge": null,
"key": {
"range": "TestCompile/patterns/double-glob.d2,2:0:29-2:18:47",
"key": {
"range": "TestCompile/patterns/double-glob.d2,2:0:29-2:13:42",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,2:0:29-2:2:31",
"value": [
{
"string": "**",
"raw_string": "**"
}
],
"pattern": [
"*",
"",
"*"
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,2:3:32-2:8:37",
"value": [
{
"string": "style",
"raw_string": "style"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,2:9:38-2:13:42",
"value": [
{
"string": "fill",
"raw_string": "fill"
}
]
}
}
]
},
"primary": {},
"value": {
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,2:15:44-2:18:47",
"value": [
{
"string": "red",
"raw_string": "red"
}
]
}
}
}
}
}
]
}
],
"edges": null
},
"references": [
{
"string": {
"range": "TestCompile/patterns/double-glob.d2,0:0:0-0:6:6",
"value": [
{
"string": "shared",
"raw_string": "shared"
}
]
},
"key_path": {
"range": "TestCompile/patterns/double-glob.d2,0:0:0-0:14:14",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,0:0:0-0:6:6",
"value": [
{
"string": "shared",
"raw_string": "shared"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,0:7:7-0:14:14",
"value": [
{
"string": "animate",
"raw_string": "animate"
}
]
}
}
]
},
"context": {
"edge": null,
"key": {
"range": "TestCompile/patterns/double-glob.d2,0:0:0-0:14:14",
"key": {
"range": "TestCompile/patterns/double-glob.d2,0:0:0-0:14:14",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,0:0:0-0:6:6",
"value": [
{
"string": "shared",
"raw_string": "shared"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,0:7:7-0:14:14",
"value": [
{
"string": "animate",
"raw_string": "animate"
}
]
}
}
]
},
"primary": {},
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/patterns/double-glob.d2,1:0:15-1:6:21",
"value": [
{
"string": "shared",
"raw_string": "shared"
}
]
},
"key_path": {
"range": "TestCompile/patterns/double-glob.d2,1:0:15-1:13:28",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,1:0:15-1:6:21",
"value": [
{
"string": "shared",
"raw_string": "shared"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,1:7:22-1:13:28",
"value": [
{
"string": "animal",
"raw_string": "animal"
}
]
}
}
]
},
"context": {
"edge": null,
"key": {
"range": "TestCompile/patterns/double-glob.d2,1:0:15-1:13:28",
"key": {
"range": "TestCompile/patterns/double-glob.d2,1:0:15-1:13:28",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,1:0:15-1:6:21",
"value": [
{
"string": "shared",
"raw_string": "shared"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/double-glob.d2,1:7:22-1:13:28",
"value": [
{
"string": "animal",
"raw_string": "animal"
}
]
}
}
]
},
"primary": {},
"value": {}
}
}
}
]
}
],
"edges": null
}

582
testdata/d2ir/TestCompile/patterns/edge/1.exp.json generated vendored Normal file
View file

@ -0,0 +1,582 @@
{
"fields": [
{
"name": "animate",
"references": [
{
"string": {
"range": "TestCompile/patterns/edge/1.d2,0:0:0-0:7:7",
"value": [
{
"string": "animate",
"raw_string": "animate"
}
]
},
"key_path": {
"range": "TestCompile/patterns/edge/1.d2,0:0:0-0:7:7",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/1.d2,0:0:0-0:7:7",
"value": [
{
"string": "animate",
"raw_string": "animate"
}
]
}
}
]
},
"context": {
"edge": null,
"key": {
"range": "TestCompile/patterns/edge/1.d2,0:0:0-0:7:7",
"key": {
"range": "TestCompile/patterns/edge/1.d2,0:0:0-0:7:7",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/1.d2,0:0:0-0:7:7",
"value": [
{
"string": "animate",
"raw_string": "animate"
}
]
}
}
]
},
"primary": {},
"value": {}
}
}
}
]
},
{
"name": "animal",
"references": [
{
"string": {
"range": "TestCompile/patterns/edge/1.d2,1:0:8-1:6:14",
"value": [
{
"string": "animal",
"raw_string": "animal"
}
]
},
"key_path": {
"range": "TestCompile/patterns/edge/1.d2,1:0:8-1:6:14",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/1.d2,1:0:8-1:6:14",
"value": [
{
"string": "animal",
"raw_string": "animal"
}
]
}
}
]
},
"context": {
"edge": null,
"key": {
"range": "TestCompile/patterns/edge/1.d2,1:0:8-1:6:14",
"key": {
"range": "TestCompile/patterns/edge/1.d2,1:0:8-1:6:14",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/1.d2,1:0:8-1:6:14",
"value": [
{
"string": "animal",
"raw_string": "animal"
}
]
}
}
]
},
"primary": {},
"value": {}
}
}
}
]
}
],
"edges": [
{
"edge_id": {
"src_path": [
"animate"
],
"src_arrow": false,
"dst_path": [
"animate"
],
"dst_arrow": true,
"index": 0
},
"references": [
{
"context": {
"edge": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:10:25",
"src": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:3:18",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:3:18",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/patterns/edge/1.d2,2:7:22-2:10:25",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/1.d2,2:7:22-2:10:25",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:10:25",
"edges": [
{
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:10:25",
"src": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:3:18",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:3:18",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/patterns/edge/1.d2,2:7:22-2:10:25",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/1.d2,2:7:22-2:10:25",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
{
"edge_id": {
"src_path": [
"animate"
],
"src_arrow": false,
"dst_path": [
"animal"
],
"dst_arrow": true,
"index": 0
},
"references": [
{
"context": {
"edge": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:10:25",
"src": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:3:18",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:3:18",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/patterns/edge/1.d2,2:7:22-2:10:25",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/1.d2,2:7:22-2:10:25",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:10:25",
"edges": [
{
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:10:25",
"src": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:3:18",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:3:18",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/patterns/edge/1.d2,2:7:22-2:10:25",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/1.d2,2:7:22-2:10:25",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
{
"edge_id": {
"src_path": [
"animal"
],
"src_arrow": false,
"dst_path": [
"animate"
],
"dst_arrow": true,
"index": 0
},
"references": [
{
"context": {
"edge": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:10:25",
"src": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:3:18",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:3:18",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/patterns/edge/1.d2,2:7:22-2:10:25",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/1.d2,2:7:22-2:10:25",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:10:25",
"edges": [
{
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:10:25",
"src": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:3:18",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:3:18",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/patterns/edge/1.d2,2:7:22-2:10:25",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/1.d2,2:7:22-2:10:25",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
{
"edge_id": {
"src_path": [
"animal"
],
"src_arrow": false,
"dst_path": [
"animal"
],
"dst_arrow": true,
"index": 0
},
"references": [
{
"context": {
"edge": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:10:25",
"src": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:3:18",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:3:18",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/patterns/edge/1.d2,2:7:22-2:10:25",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/1.d2,2:7:22-2:10:25",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:10:25",
"edges": [
{
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:10:25",
"src": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:3:18",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/1.d2,2:0:15-2:3:18",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/patterns/edge/1.d2,2:7:22-2:10:25",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/1.d2,2:7:22-2:10:25",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
}
]
}

862
testdata/d2ir/TestCompile/patterns/edge/2.exp.json generated vendored Normal file
View file

@ -0,0 +1,862 @@
{
"fields": [
{
"name": "shared",
"composite": {
"fields": [
{
"name": "animate",
"references": [
{
"string": {
"range": "TestCompile/patterns/edge/2.d2,0:7:7-0:14:14",
"value": [
{
"string": "animate",
"raw_string": "animate"
}
]
},
"key_path": {
"range": "TestCompile/patterns/edge/2.d2,0:0:0-0:14:14",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,0:0:0-0:6:6",
"value": [
{
"string": "shared",
"raw_string": "shared"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,0:7:7-0:14:14",
"value": [
{
"string": "animate",
"raw_string": "animate"
}
]
}
}
]
},
"context": {
"edge": null,
"key": {
"range": "TestCompile/patterns/edge/2.d2,0:0:0-0:14:14",
"key": {
"range": "TestCompile/patterns/edge/2.d2,0:0:0-0:14:14",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,0:0:0-0:6:6",
"value": [
{
"string": "shared",
"raw_string": "shared"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,0:7:7-0:14:14",
"value": [
{
"string": "animate",
"raw_string": "animate"
}
]
}
}
]
},
"primary": {},
"value": {}
}
}
}
]
},
{
"name": "animal",
"references": [
{
"string": {
"range": "TestCompile/patterns/edge/2.d2,1:7:22-1:13:28",
"value": [
{
"string": "animal",
"raw_string": "animal"
}
]
},
"key_path": {
"range": "TestCompile/patterns/edge/2.d2,1:0:15-1:13:28",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,1:0:15-1:6:21",
"value": [
{
"string": "shared",
"raw_string": "shared"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,1:7:22-1:13:28",
"value": [
{
"string": "animal",
"raw_string": "animal"
}
]
}
}
]
},
"context": {
"edge": null,
"key": {
"range": "TestCompile/patterns/edge/2.d2,1:0:15-1:13:28",
"key": {
"range": "TestCompile/patterns/edge/2.d2,1:0:15-1:13:28",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,1:0:15-1:6:21",
"value": [
{
"string": "shared",
"raw_string": "shared"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,1:7:22-1:13:28",
"value": [
{
"string": "animal",
"raw_string": "animal"
}
]
}
}
]
},
"primary": {},
"value": {}
}
}
}
]
}
],
"edges": [
{
"edge_id": {
"src_path": [
"animate"
],
"src_arrow": false,
"dst_path": [
"animate"
],
"dst_arrow": true,
"index": 0
},
"references": [
{
"context": {
"edge": {
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:15:44",
"src": {
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:8:37",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:8:37",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/patterns/edge/2.d2,2:12:41-2:15:44",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,2:12:41-2:15:44",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/patterns/edge/2.d2,2:0:29-2:16:45",
"key": {
"range": "TestCompile/patterns/edge/2.d2,2:0:29-2:3:32",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,2:0:29-2:3:32",
"value": [
{
"string": "sh*",
"raw_string": "sh*"
}
],
"pattern": [
"sh",
"*"
]
}
}
]
},
"edges": [
{
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:15:44",
"src": {
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:8:37",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:8:37",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/patterns/edge/2.d2,2:12:41-2:15:44",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,2:12:41-2:15:44",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
{
"edge_id": {
"src_path": [
"animate"
],
"src_arrow": false,
"dst_path": [
"animal"
],
"dst_arrow": true,
"index": 0
},
"references": [
{
"context": {
"edge": {
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:15:44",
"src": {
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:8:37",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:8:37",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/patterns/edge/2.d2,2:12:41-2:15:44",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,2:12:41-2:15:44",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/patterns/edge/2.d2,2:0:29-2:16:45",
"key": {
"range": "TestCompile/patterns/edge/2.d2,2:0:29-2:3:32",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,2:0:29-2:3:32",
"value": [
{
"string": "sh*",
"raw_string": "sh*"
}
],
"pattern": [
"sh",
"*"
]
}
}
]
},
"edges": [
{
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:15:44",
"src": {
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:8:37",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:8:37",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/patterns/edge/2.d2,2:12:41-2:15:44",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,2:12:41-2:15:44",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
{
"edge_id": {
"src_path": [
"animal"
],
"src_arrow": false,
"dst_path": [
"animate"
],
"dst_arrow": true,
"index": 0
},
"references": [
{
"context": {
"edge": {
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:15:44",
"src": {
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:8:37",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:8:37",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/patterns/edge/2.d2,2:12:41-2:15:44",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,2:12:41-2:15:44",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/patterns/edge/2.d2,2:0:29-2:16:45",
"key": {
"range": "TestCompile/patterns/edge/2.d2,2:0:29-2:3:32",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,2:0:29-2:3:32",
"value": [
{
"string": "sh*",
"raw_string": "sh*"
}
],
"pattern": [
"sh",
"*"
]
}
}
]
},
"edges": [
{
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:15:44",
"src": {
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:8:37",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:8:37",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/patterns/edge/2.d2,2:12:41-2:15:44",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,2:12:41-2:15:44",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
{
"edge_id": {
"src_path": [
"animal"
],
"src_arrow": false,
"dst_path": [
"animal"
],
"dst_arrow": true,
"index": 0
},
"references": [
{
"context": {
"edge": {
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:15:44",
"src": {
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:8:37",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:8:37",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/patterns/edge/2.d2,2:12:41-2:15:44",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,2:12:41-2:15:44",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/patterns/edge/2.d2,2:0:29-2:16:45",
"key": {
"range": "TestCompile/patterns/edge/2.d2,2:0:29-2:3:32",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,2:0:29-2:3:32",
"value": [
{
"string": "sh*",
"raw_string": "sh*"
}
],
"pattern": [
"sh",
"*"
]
}
}
]
},
"edges": [
{
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:15:44",
"src": {
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:8:37",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,2:5:34-2:8:37",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/patterns/edge/2.d2,2:12:41-2:15:44",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,2:12:41-2:15:44",
"value": [
{
"string": "an*",
"raw_string": "an*"
}
],
"pattern": [
"an",
"*"
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
}
]
},
"references": [
{
"string": {
"range": "TestCompile/patterns/edge/2.d2,0:0:0-0:6:6",
"value": [
{
"string": "shared",
"raw_string": "shared"
}
]
},
"key_path": {
"range": "TestCompile/patterns/edge/2.d2,0:0:0-0:14:14",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,0:0:0-0:6:6",
"value": [
{
"string": "shared",
"raw_string": "shared"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,0:7:7-0:14:14",
"value": [
{
"string": "animate",
"raw_string": "animate"
}
]
}
}
]
},
"context": {
"edge": null,
"key": {
"range": "TestCompile/patterns/edge/2.d2,0:0:0-0:14:14",
"key": {
"range": "TestCompile/patterns/edge/2.d2,0:0:0-0:14:14",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,0:0:0-0:6:6",
"value": [
{
"string": "shared",
"raw_string": "shared"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,0:7:7-0:14:14",
"value": [
{
"string": "animate",
"raw_string": "animate"
}
]
}
}
]
},
"primary": {},
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/patterns/edge/2.d2,1:0:15-1:6:21",
"value": [
{
"string": "shared",
"raw_string": "shared"
}
]
},
"key_path": {
"range": "TestCompile/patterns/edge/2.d2,1:0:15-1:13:28",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,1:0:15-1:6:21",
"value": [
{
"string": "shared",
"raw_string": "shared"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,1:7:22-1:13:28",
"value": [
{
"string": "animal",
"raw_string": "animal"
}
]
}
}
]
},
"context": {
"edge": null,
"key": {
"range": "TestCompile/patterns/edge/2.d2,1:0:15-1:13:28",
"key": {
"range": "TestCompile/patterns/edge/2.d2,1:0:15-1:13:28",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,1:0:15-1:6:21",
"value": [
{
"string": "shared",
"raw_string": "shared"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/edge/2.d2,1:7:22-1:13:28",
"value": [
{
"string": "animal",
"raw_string": "animal"
}
]
}
}
]
},
"primary": {},
"value": {}
}
}
}
]
}
],
"edges": null
}

1022
testdata/d2ir/TestCompile/patterns/edge/3.exp.json generated vendored Normal file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,997 @@
{
"fields": [
{
"name": "animate",
"composite": {
"fields": [
{
"name": "constant",
"composite": {
"fields": [
{
"name": "tinkertinker",
"primary": {
"value": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:33:108-2:40:115",
"value": [
{
"string": "globbed",
"raw_string": "globbed"
}
]
}
},
"references": [
{
"string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:17:17-0:29:29",
"value": [
{
"string": "tinkertinker",
"raw_string": "tinkertinker"
}
]
},
"key_path": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:0:0-0:29:29",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:0:0-0:7:7",
"value": [
{
"string": "animate",
"raw_string": "animate"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:8:8-0:16:16",
"value": [
{
"string": "constant",
"raw_string": "constant"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:17:17-0:29:29",
"value": [
{
"string": "tinkertinker",
"raw_string": "tinkertinker"
}
]
}
}
]
},
"context": {
"edge": null,
"key": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:0:0-0:35:35",
"key": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:0:0-0:29:29",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:0:0-0:7:7",
"value": [
{
"string": "animate",
"raw_string": "animate"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:8:8-0:16:16",
"value": [
{
"string": "constant",
"raw_string": "constant"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:17:17-0:29:29",
"value": [
{
"string": "tinkertinker",
"raw_string": "tinkertinker"
}
]
}
}
]
},
"primary": {},
"value": {
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:31:31-0:35:35",
"value": [
{
"string": "meow",
"raw_string": "meow"
}
]
}
}
}
}
}
]
}
],
"edges": null
},
"references": [
{
"string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:8:8-0:16:16",
"value": [
{
"string": "constant",
"raw_string": "constant"
}
]
},
"key_path": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:0:0-0:29:29",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:0:0-0:7:7",
"value": [
{
"string": "animate",
"raw_string": "animate"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:8:8-0:16:16",
"value": [
{
"string": "constant",
"raw_string": "constant"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:17:17-0:29:29",
"value": [
{
"string": "tinkertinker",
"raw_string": "tinkertinker"
}
]
}
}
]
},
"context": {
"edge": null,
"key": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:0:0-0:35:35",
"key": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:0:0-0:29:29",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:0:0-0:7:7",
"value": [
{
"string": "animate",
"raw_string": "animate"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:8:8-0:16:16",
"value": [
{
"string": "constant",
"raw_string": "constant"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:17:17-0:29:29",
"value": [
{
"string": "tinkertinker",
"raw_string": "tinkertinker"
}
]
}
}
]
},
"primary": {},
"value": {
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:31:31-0:35:35",
"value": [
{
"string": "meow",
"raw_string": "meow"
}
]
}
}
}
}
},
{
"string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:7:82-2:15:90",
"value": [
{
"string": "constant",
"raw_string": "constant"
}
]
},
"key_path": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:0:75-2:31:106",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:0:75-2:6:81",
"value": [
{
"string": "a*n*t*",
"raw_string": "a*n*t*"
}
],
"pattern": [
"a",
"*",
"n",
"*",
"t",
"*"
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:7:82-2:15:90",
"value": [
{
"string": "constant",
"raw_string": "constant"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:16:91-2:31:106",
"value": [
{
"string": "t*ink*r*t*inke*",
"raw_string": "t*ink*r*t*inke*"
}
],
"pattern": [
"t",
"*",
"ink",
"*",
"r",
"*",
"t",
"*",
"inke",
"*"
]
}
}
]
},
"context": {
"edge": null,
"key": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:0:75-2:40:115",
"key": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:0:75-2:31:106",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:0:75-2:6:81",
"value": [
{
"string": "a*n*t*",
"raw_string": "a*n*t*"
}
],
"pattern": [
"a",
"*",
"n",
"*",
"t",
"*"
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:7:82-2:15:90",
"value": [
{
"string": "constant",
"raw_string": "constant"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:16:91-2:31:106",
"value": [
{
"string": "t*ink*r*t*inke*",
"raw_string": "t*ink*r*t*inke*"
}
],
"pattern": [
"t",
"*",
"ink",
"*",
"r",
"*",
"t",
"*",
"inke",
"*"
]
}
}
]
},
"primary": {},
"value": {
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:33:108-2:40:115",
"value": [
{
"string": "globbed",
"raw_string": "globbed"
}
]
}
}
}
}
}
]
}
],
"edges": null
},
"references": [
{
"string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:0:0-0:7:7",
"value": [
{
"string": "animate",
"raw_string": "animate"
}
]
},
"key_path": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:0:0-0:29:29",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:0:0-0:7:7",
"value": [
{
"string": "animate",
"raw_string": "animate"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:8:8-0:16:16",
"value": [
{
"string": "constant",
"raw_string": "constant"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:17:17-0:29:29",
"value": [
{
"string": "tinkertinker",
"raw_string": "tinkertinker"
}
]
}
}
]
},
"context": {
"edge": null,
"key": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:0:0-0:35:35",
"key": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:0:0-0:29:29",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:0:0-0:7:7",
"value": [
{
"string": "animate",
"raw_string": "animate"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:8:8-0:16:16",
"value": [
{
"string": "constant",
"raw_string": "constant"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:17:17-0:29:29",
"value": [
{
"string": "tinkertinker",
"raw_string": "tinkertinker"
}
]
}
}
]
},
"primary": {},
"value": {
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,0:31:31-0:35:35",
"value": [
{
"string": "meow",
"raw_string": "meow"
}
]
}
}
}
}
}
]
},
{
"name": "astronaut",
"composite": {
"fields": [
{
"name": "constant",
"composite": {
"fields": [
{
"name": "thinkerthinker",
"primary": {
"value": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:33:108-2:40:115",
"value": [
{
"string": "globbed",
"raw_string": "globbed"
}
]
}
},
"references": [
{
"string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:19:55-1:33:69",
"value": [
{
"string": "thinkerthinker",
"raw_string": "thinkerthinker"
}
]
},
"key_path": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:0:36-1:33:69",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:0:36-1:9:45",
"value": [
{
"string": "astronaut",
"raw_string": "astronaut"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:10:46-1:18:54",
"value": [
{
"string": "constant",
"raw_string": "constant"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:19:55-1:33:69",
"value": [
{
"string": "thinkerthinker",
"raw_string": "thinkerthinker"
}
]
}
}
]
},
"context": {
"edge": null,
"key": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:0:36-1:38:74",
"key": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:0:36-1:33:69",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:0:36-1:9:45",
"value": [
{
"string": "astronaut",
"raw_string": "astronaut"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:10:46-1:18:54",
"value": [
{
"string": "constant",
"raw_string": "constant"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:19:55-1:33:69",
"value": [
{
"string": "thinkerthinker",
"raw_string": "thinkerthinker"
}
]
}
}
]
},
"primary": {},
"value": {
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:35:71-1:38:74",
"value": [
{
"string": "yes",
"raw_string": "yes"
}
]
}
}
}
}
}
]
}
],
"edges": null
},
"references": [
{
"string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:10:46-1:18:54",
"value": [
{
"string": "constant",
"raw_string": "constant"
}
]
},
"key_path": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:0:36-1:33:69",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:0:36-1:9:45",
"value": [
{
"string": "astronaut",
"raw_string": "astronaut"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:10:46-1:18:54",
"value": [
{
"string": "constant",
"raw_string": "constant"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:19:55-1:33:69",
"value": [
{
"string": "thinkerthinker",
"raw_string": "thinkerthinker"
}
]
}
}
]
},
"context": {
"edge": null,
"key": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:0:36-1:38:74",
"key": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:0:36-1:33:69",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:0:36-1:9:45",
"value": [
{
"string": "astronaut",
"raw_string": "astronaut"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:10:46-1:18:54",
"value": [
{
"string": "constant",
"raw_string": "constant"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:19:55-1:33:69",
"value": [
{
"string": "thinkerthinker",
"raw_string": "thinkerthinker"
}
]
}
}
]
},
"primary": {},
"value": {
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:35:71-1:38:74",
"value": [
{
"string": "yes",
"raw_string": "yes"
}
]
}
}
}
}
},
{
"string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:7:82-2:15:90",
"value": [
{
"string": "constant",
"raw_string": "constant"
}
]
},
"key_path": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:0:75-2:31:106",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:0:75-2:6:81",
"value": [
{
"string": "a*n*t*",
"raw_string": "a*n*t*"
}
],
"pattern": [
"a",
"*",
"n",
"*",
"t",
"*"
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:7:82-2:15:90",
"value": [
{
"string": "constant",
"raw_string": "constant"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:16:91-2:31:106",
"value": [
{
"string": "t*ink*r*t*inke*",
"raw_string": "t*ink*r*t*inke*"
}
],
"pattern": [
"t",
"*",
"ink",
"*",
"r",
"*",
"t",
"*",
"inke",
"*"
]
}
}
]
},
"context": {
"edge": null,
"key": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:0:75-2:40:115",
"key": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:0:75-2:31:106",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:0:75-2:6:81",
"value": [
{
"string": "a*n*t*",
"raw_string": "a*n*t*"
}
],
"pattern": [
"a",
"*",
"n",
"*",
"t",
"*"
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:7:82-2:15:90",
"value": [
{
"string": "constant",
"raw_string": "constant"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:16:91-2:31:106",
"value": [
{
"string": "t*ink*r*t*inke*",
"raw_string": "t*ink*r*t*inke*"
}
],
"pattern": [
"t",
"*",
"ink",
"*",
"r",
"*",
"t",
"*",
"inke",
"*"
]
}
}
]
},
"primary": {},
"value": {
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,2:33:108-2:40:115",
"value": [
{
"string": "globbed",
"raw_string": "globbed"
}
]
}
}
}
}
}
]
}
],
"edges": null
},
"references": [
{
"string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:0:36-1:9:45",
"value": [
{
"string": "astronaut",
"raw_string": "astronaut"
}
]
},
"key_path": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:0:36-1:33:69",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:0:36-1:9:45",
"value": [
{
"string": "astronaut",
"raw_string": "astronaut"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:10:46-1:18:54",
"value": [
{
"string": "constant",
"raw_string": "constant"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:19:55-1:33:69",
"value": [
{
"string": "thinkerthinker",
"raw_string": "thinkerthinker"
}
]
}
}
]
},
"context": {
"edge": null,
"key": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:0:36-1:38:74",
"key": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:0:36-1:33:69",
"path": [
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:0:36-1:9:45",
"value": [
{
"string": "astronaut",
"raw_string": "astronaut"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:10:46-1:18:54",
"value": [
{
"string": "constant",
"raw_string": "constant"
}
]
}
},
{
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:19:55-1:33:69",
"value": [
{
"string": "thinkerthinker",
"raw_string": "thinkerthinker"
}
]
}
}
]
},
"primary": {},
"value": {
"unquoted_string": {
"range": "TestCompile/patterns/nested/prefix-suffix/3.d2,1:35:71-1:38:74",
"value": [
{
"string": "yes",
"raw_string": "yes"
}
]
}
}
}
}
}
]
}
],
"edges": null
}

View file

@ -112,6 +112,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:1:1",
"value": [
{
"string": "a",
"raw_string": "a"
}
]
},
"key_path": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:1:1",
"value": [
{
"string": "a",
"raw_string": "a"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:1:1",
"value": [
{
"string": "a",
"raw_string": "a"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/scenarios/edge.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/edge.d2,0:5:5-0:6:6",
"value": [
{
"string": "b",
"raw_string": "b"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:1:1",
"value": [
{
"string": "a",
"raw_string": "a"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/scenarios/edge.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/edge.d2,0:5:5-0:6:6",
"value": [
{
"string": "b",
"raw_string": "b"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -227,6 +337,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/scenarios/edge.d2,0:5:5-0:6:6",
"value": [
{
"string": "b",
"raw_string": "b"
}
]
},
"key_path": {
"range": "TestCompile/scenarios/edge.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/edge.d2,0:5:5-0:6:6",
"value": [
{
"string": "b",
"raw_string": "b"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:1:1",
"value": [
{
"string": "a",
"raw_string": "a"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/scenarios/edge.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/edge.d2,0:5:5-0:6:6",
"value": [
{
"string": "b",
"raw_string": "b"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:1:1",
"value": [
{
"string": "a",
"raw_string": "a"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/scenarios/edge.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/edge.d2,0:5:5-0:6:6",
"value": [
{
"string": "b",
"raw_string": "b"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -351,6 +571,116 @@
}
}
},
{
"string": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:1:1",
"value": [
{
"string": "a",
"raw_string": "a"
}
]
},
"key_path": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:1:1",
"value": [
{
"string": "a",
"raw_string": "a"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:1:1",
"value": [
{
"string": "a",
"raw_string": "a"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/scenarios/edge.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/edge.d2,0:5:5-0:6:6",
"value": [
{
"string": "b",
"raw_string": "b"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:1:1",
"value": [
{
"string": "a",
"raw_string": "a"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/scenarios/edge.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/edge.d2,0:5:5-0:6:6",
"value": [
{
"string": "b",
"raw_string": "b"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/scenarios/edge.d2,3:5:32-3:6:33",
@ -614,6 +944,116 @@
}
}
},
{
"string": {
"range": "TestCompile/scenarios/edge.d2,0:5:5-0:6:6",
"value": [
{
"string": "b",
"raw_string": "b"
}
]
},
"key_path": {
"range": "TestCompile/scenarios/edge.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/edge.d2,0:5:5-0:6:6",
"value": [
{
"string": "b",
"raw_string": "b"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:1:1",
"value": [
{
"string": "a",
"raw_string": "a"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/scenarios/edge.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/edge.d2,0:5:5-0:6:6",
"value": [
{
"string": "b",
"raw_string": "b"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/edge.d2,0:0:0-0:1:1",
"value": [
{
"string": "a",
"raw_string": "a"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/scenarios/edge.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/edge.d2,0:5:5-0:6:6",
"value": [
{
"string": "b",
"raw_string": "b"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/scenarios/edge.d2,3:10:37-3:11:38",

View file

@ -112,6 +112,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
},
"key_path": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/scenarios/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -227,6 +337,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
},
"key_path": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/scenarios/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -350,6 +570,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
},
"key_path": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/scenarios/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -465,6 +795,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
},
"key_path": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/scenarios/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -1103,6 +1543,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
},
"key_path": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/scenarios/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -1218,6 +1768,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
},
"key_path": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/scenarios/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/scenarios/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},

View file

@ -112,6 +112,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
},
"key_path": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -227,6 +337,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
},
"key_path": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -350,6 +570,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
},
"key_path": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -465,6 +795,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
},
"key_path": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -1103,6 +1543,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
},
"key_path": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -1218,6 +1768,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
},
"key_path": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -1707,6 +2367,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
},
"key_path": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -1822,6 +2592,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
},
"key_path": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/steps/recursive.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/recursive.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},

View file

@ -112,6 +112,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
},
"key_path": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/steps/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/steps/root.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/steps/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -227,6 +337,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
},
"key_path": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/steps/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/steps/root.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/steps/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -350,6 +570,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
},
"key_path": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/steps/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/steps/root.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/steps/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -465,6 +795,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
},
"key_path": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/steps/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/steps/root.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/steps/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -1103,6 +1543,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
},
"key_path": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/steps/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/steps/root.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/steps/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},
@ -1218,6 +1768,116 @@
"value": {}
}
}
},
{
"string": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
},
"key_path": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"context": {
"edge": {
"range": "TestCompile/steps/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
},
"key": {
"range": "TestCompile/steps/root.d2,0:0:0-0:6:6",
"edges": [
{
"range": "TestCompile/steps/root.d2,0:0:0-0:6:6",
"src": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:0:0-0:1:1",
"value": [
{
"string": "x",
"raw_string": "x"
}
]
}
}
]
},
"src_arrow": "",
"dst": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"path": [
{
"unquoted_string": {
"range": "TestCompile/steps/root.d2,0:5:5-0:6:6",
"value": [
{
"string": "y",
"raw_string": "y"
}
]
}
}
]
},
"dst_arrow": ">"
}
],
"primary": {},
"value": {}
}
}
}
]
},