on master help sign in
Cover forward dependency resolution
ec7c6d4iko
tests/golden/types-partial-forward/about.txt+1−1
@@ -1,4 +1,4 @@
1source: Grammar tab, Molds: "every expression has a principal type, and there is no general subtyping".
1source: Grammar tab, Molds: "every expression has a principal type, and there is no general subtyping".
2−tests: partial inference: a forward reference resolves in dependency order.
2+tests: partial inference: a multi-link forward-reference chain resolves in dependency order.
3expect: parses
3expect: parses
4expect-types: a partial inference report, not a checked module
4expect-types: a partial inference report, not a checked module
tests/golden/types-partial-forward/source.jibb+3−1
@@ -1,2 +1,4 @@
1++ first second
1++ first second
2−++ second "later"
2+++ second third
3+++ third fourth
4+++ fourth "later"
tests/golden/types-partial-forward/tokens.txt+10−2
@@ -4,5 +4,13 @@
42:1 NEWLINE
42:1 NEWLINE
52:1 glyph ++
52:1 glyph ++
62:4 name second
62:4 name second
7+2:11 name third
8+3:1 NEWLINE
9+3:1 glyph ++
10+3:4 name third
11+3:10 name fourth
12+4:1 NEWLINE
13+4:1 glyph ++
14+4:4 name fourth
7−2:11 str "later"
15+4:11 str "later"
8−2:18 NEWLINE
16+4:18 NEWLINE
tests/golden/types-partial-forward/tree.txt+3−1
@@ -1,3 +1,5 @@
1(module
1(module
2 (value 1:1 first (wing 1:10 second))
2 (value 1:1 first (wing 1:10 second))
3− (value 2:1 second (str 2:11 "later")))
3+ (value 2:1 second (wing 2:11 third))
4+ (value 3:1 third (wing 3:10 fourth))
5+ (value 4:1 fourth (str 4:11 "later")))
tests/golden/types-partial-forward/types.txt+2
@@ -1,3 +1,5 @@
1partial inference; module not checked
1partial inference; module not checked
2++ first: @t
2++ first: @t
3++ second: @t
3++ second: @t
4+++ third: @t
5+++ fourth: @t
tests/lib/jibb-proj-guards.hoon+1−1
@@ -58,7 +58,7 @@
58 proj-graph-errors
58 proj-graph-errors
59++ proj-graph-errors
59++ proj-graph-errors
60 ^- (list tape)
60 ^- (list tape)
61− =/ child=@t '++ owned ^- [a=@t b=@p] (proj [a="hi" b=~zod c=%.y])\0a++ exported owned\0a'
61+ =/ child=@t '++ exported owned\0a++ owned ^- [a=@t b=@p] (proj [a="hi" b=~zod c=%.y])\0a'
62 =/ parent=@t '/= dep /ui/dep\0a++ answer exported.dep\0a'
62 =/ parent=@t '/= dep /ui/dep\0a++ answer exported.dep\0a'
63 =/ bundle=jbundle:jibb ~[[/ui/dep/jibb child]]
63 =/ bundle=jbundle:jibb ~[[/ui/dep/jibb child]]
64 =/ built=jfile-result:jibb (infer-jibb-file:jibb /ui/root/jibb parent ~ ~ bundle ~[/ui/root/jibb] ~ ~ ~ ~)
64 =/ built=jfile-result:jibb (infer-jibb-file:jibb /ui/root/jibb parent ~ ~ bundle ~[/ui/root/jibb] ~ ~ ~ ~)