cuelang.org/go@v0.10.1/cue/testdata/resolve/035_excluded_embedding_from_closing.txtar (about) 1 # DO NOT EDIT; generated by go run testdata/gen.go 2 # 3 #name: excluded embedding from closing 4 #evalPartial 5 -- in.cue -- 6 #S: { 7 a: {c: int} 8 { 9 c: {d: int} 10 } 11 let B = {open: int} 12 b: B 13 } 14 V: #S & { 15 c: e: int 16 b: extra: int 17 } 18 -- out/def -- 19 #S: { 20 a: { 21 c: int 22 } 23 c: { 24 d: int 25 ... 26 } 27 b: { 28 open: int 29 ... 30 } 31 } 32 V: #S & { 33 c: { 34 e: int 35 } 36 b: { 37 extra: int 38 } 39 } 40 -- out/legacy-debug -- 41 <0>{#S: <1>C{a: <2>C{c: int}, c: <3>{d: int}, b: <4>{open: int}}, V: <5>C{a: <6>C{c: int}, c: <7>{d: int, e: int}, b: <8>{open: int, extra: int}}} 42 -- out/compile -- 43 --- in.cue 44 { 45 #S: { 46 a: { 47 c: int 48 } 49 { 50 c: { 51 d: int 52 } 53 } 54 let B#1 = { 55 open: int 56 } 57 b: 〈0;let B#1〉 58 } 59 V: (〈0;#S〉 & { 60 c: { 61 e: int 62 } 63 b: { 64 extra: int 65 } 66 }) 67 } 68 -- out/eval/stats -- 69 Leaks: 0 70 Freed: 21 71 Reused: 17 72 Allocs: 4 73 Retain: 0 74 75 Unifications: 21 76 Conjuncts: 29 77 Disjuncts: 21 78 -- out/evalalpha -- 79 Errors: 80 V.c.e: field not allowed: 81 ./in.cue:10:5 82 V.b.extra: field not allowed: 83 ./in.cue:7:5 84 ./in.cue:11:5 85 86 Result: 87 (_|_){ 88 // [eval] 89 #S: (#struct){ 90 a: (#struct){ 91 c: (int){ int } 92 } 93 c: (#struct){ 94 d: (int){ int } 95 } 96 let B#1 = (#struct){ 97 open: (int){ int } 98 } 99 b: (#struct){ 100 open: (int){ int } 101 } 102 } 103 V: (_|_){ 104 // [eval] 105 c: (_|_){ 106 // [eval] 107 e: (_|_){ 108 // [eval] V.c.e: field not allowed: 109 // ./in.cue:10:5 110 } 111 d: (int){ int } 112 } 113 b: (_|_){ 114 // [eval] 115 extra: (_|_){ 116 // [eval] V.b.extra: field not allowed: 117 // ./in.cue:7:5 118 // ./in.cue:11:5 119 } 120 open: (int){ int } 121 } 122 a: (#struct){ 123 c: (int){ int } 124 } 125 let B#1 = (#struct){ 126 open: (int){ int } 127 } 128 } 129 } 130 -- diff/-out/evalalpha<==>+out/eval -- 131 diff old new 132 --- old 133 +++ new 134 @@ -1,14 +1,9 @@ 135 Errors: 136 +V.c.e: field not allowed: 137 + ./in.cue:10:5 138 V.b.extra: field not allowed: 139 - ./in.cue:6:10 140 ./in.cue:7:5 141 - ./in.cue:9:4 142 ./in.cue:11:5 143 -V.c.e: field not allowed: 144 - ./in.cue:3:2 145 - ./in.cue:4:6 146 - ./in.cue:9:4 147 - ./in.cue:10:5 148 149 Result: 150 (_|_){ 151 @@ -29,33 +24,28 @@ 152 } 153 V: (_|_){ 154 // [eval] 155 - a: (#struct){ 156 - c: (int){ int } 157 - } 158 c: (_|_){ 159 // [eval] 160 - d: (int){ int } 161 e: (_|_){ 162 // [eval] V.c.e: field not allowed: 163 - // ./in.cue:3:2 164 - // ./in.cue:4:6 165 - // ./in.cue:9:4 166 // ./in.cue:10:5 167 } 168 - } 169 - let B#1 = (#struct){ 170 - open: (int){ int } 171 + d: (int){ int } 172 } 173 b: (_|_){ 174 // [eval] 175 - open: (int){ int } 176 extra: (_|_){ 177 // [eval] V.b.extra: field not allowed: 178 - // ./in.cue:6:10 179 // ./in.cue:7:5 180 - // ./in.cue:9:4 181 // ./in.cue:11:5 182 } 183 + open: (int){ int } 184 + } 185 + a: (#struct){ 186 + c: (int){ int } 187 + } 188 + let B#1 = (#struct){ 189 + open: (int){ int } 190 } 191 } 192 } 193 -- diff/todo/p2 -- 194 Positions. 195 Reordering. 196 -- out/eval -- 197 Errors: 198 V.b.extra: field not allowed: 199 ./in.cue:6:10 200 ./in.cue:7:5 201 ./in.cue:9:4 202 ./in.cue:11:5 203 V.c.e: field not allowed: 204 ./in.cue:3:2 205 ./in.cue:4:6 206 ./in.cue:9:4 207 ./in.cue:10:5 208 209 Result: 210 (_|_){ 211 // [eval] 212 #S: (#struct){ 213 a: (#struct){ 214 c: (int){ int } 215 } 216 c: (#struct){ 217 d: (int){ int } 218 } 219 let B#1 = (#struct){ 220 open: (int){ int } 221 } 222 b: (#struct){ 223 open: (int){ int } 224 } 225 } 226 V: (_|_){ 227 // [eval] 228 a: (#struct){ 229 c: (int){ int } 230 } 231 c: (_|_){ 232 // [eval] 233 d: (int){ int } 234 e: (_|_){ 235 // [eval] V.c.e: field not allowed: 236 // ./in.cue:3:2 237 // ./in.cue:4:6 238 // ./in.cue:9:4 239 // ./in.cue:10:5 240 } 241 } 242 let B#1 = (#struct){ 243 open: (int){ int } 244 } 245 b: (_|_){ 246 // [eval] 247 open: (int){ int } 248 extra: (_|_){ 249 // [eval] V.b.extra: field not allowed: 250 // ./in.cue:6:10 251 // ./in.cue:7:5 252 // ./in.cue:9:4 253 // ./in.cue:11:5 254 } 255 } 256 } 257 }