github.com/joomcode/cue@v0.4.4-0.20221111115225-539fe3512047/cue/testdata/comprehensions/closed.txtar (about) 1 -- in.cue -- 2 dynamicTop: { 3 #D: { 4 for k, v in {foo: 123} {(k): v} 5 } 6 } 7 8 // Issue #1404 9 dynamicDepth1: { 10 #D: { 11 a: foo: 123 12 b: {for k, v in a {(k): v}} 13 } 14 } 15 16 allowed: { 17 #D: { 18 if true { 19 d: int 20 } 21 } 22 23 vErr: #D & {d: 5} 24 } 25 26 disallowed: { 27 #D: { 28 if false { 29 d: int 30 } 31 } 32 33 vErr: #D & {d: 5} 34 } 35 -- out/eval -- 36 Errors: 37 disallowed.vErr: field not allowed: d: 38 ./in.cue:26:6 39 ./in.cue:32:8 40 ./in.cue:32:14 41 42 Result: 43 (_|_){ 44 // [eval] 45 dynamicTop: (struct){ 46 #D: (#struct){ 47 foo: (int){ 123 } 48 } 49 } 50 dynamicDepth1: (struct){ 51 #D: (#struct){ 52 a: (#struct){ 53 foo: (int){ 123 } 54 } 55 b: (#struct){ 56 foo: (int){ 123 } 57 } 58 } 59 } 60 allowed: (struct){ 61 #D: (#struct){ 62 d: (int){ int } 63 } 64 vErr: (#struct){ 65 d: (int){ 5 } 66 } 67 } 68 disallowed: (_|_){ 69 // [eval] 70 #D: (#struct){ 71 } 72 vErr: (_|_){ 73 // [eval] 74 d: (_|_){ 75 // [eval] disallowed.vErr: field not allowed: d: 76 // ./in.cue:26:6 77 // ./in.cue:32:8 78 // ./in.cue:32:14 79 } 80 } 81 } 82 } 83 -- out/compile -- 84 --- in.cue 85 { 86 dynamicTop: { 87 #D: { 88 for k, v in { 89 foo: 123 90 } { 91 〈1;k〉: 〈1;v〉 92 } 93 } 94 } 95 dynamicDepth1: { 96 #D: { 97 a: { 98 foo: 123 99 } 100 b: { 101 for k, v in 〈1;a〉 { 102 〈1;k〉: 〈1;v〉 103 } 104 } 105 } 106 } 107 allowed: { 108 #D: { 109 if true { 110 d: int 111 } 112 } 113 vErr: (〈0;#D〉 & { 114 d: 5 115 }) 116 } 117 disallowed: { 118 #D: { 119 if false { 120 d: int 121 } 122 } 123 vErr: (〈0;#D〉 & { 124 d: 5 125 }) 126 } 127 }