cuelang.org/go@v0.10.1/cue/testdata/fulleval/018_recursive_evaluation_within_list.txtar (about)

     1  # DO NOT EDIT; generated by go run testdata/gen.go
     2  #
     3  #name: recursive evaluation within list
     4  #evalFull
     5  -- in.cue --
     6  l: [a]
     7  a: b & {c: "t"}
     8  b: {
     9  	d: c
    10  	c: string
    11  }
    12  l1: [a1]
    13  a1: b1 & {c: "t"}
    14  b1: {
    15  	d: "s" + c
    16  	c: string
    17  }
    18  -- out/def --
    19  l: [a]
    20  a: b & {
    21  	c: "t"
    22  }
    23  b: {
    24  	c: string
    25  	d: c
    26  }
    27  l1: [a1]
    28  a1: b1 & {
    29  	c: "t"
    30  }
    31  b1: {
    32  	c: string
    33  	d: "s" + c
    34  }
    35  -- out/legacy-debug --
    36  <0>{l: [<1>{c: "t", d: "t"}], a: <2>{c: "t", d: "t"}, b: <3>{c: string, d: string}, l1: [<4>{c: "t", d: "st"}], a1: <5>{c: "t", d: "st"}, b1: <6>{c: string, d: ("s" + <7>.c)}}
    37  -- out/compile --
    38  --- in.cue
    39  {
    40    l: [
    41      〈1;a〉,
    42    ]
    43    a: (〈0;b〉 & {
    44      c: "t"
    45    })
    46    b: {
    47      d: 〈0;c〉
    48      c: string
    49    }
    50    l1: [
    51      〈1;a1〉,
    52    ]
    53    a1: (〈0;b1〉 & {
    54      c: "t"
    55    })
    56    b1: {
    57      d: ("s" + 〈0;c〉)
    58      c: string
    59    }
    60  }
    61  -- out/eval/stats --
    62  Leaks:  0
    63  Freed:  21
    64  Reused: 14
    65  Allocs: 7
    66  Retain: 14
    67  
    68  Unifications: 21
    69  Conjuncts:    40
    70  Disjuncts:    31
    71  -- out/evalalpha --
    72  (struct){
    73    l: (#list){
    74      0: (struct){
    75        c: (string){ "t" }
    76        d: (string){ "t" }
    77      }
    78    }
    79    a: (struct){
    80      c: (string){ "t" }
    81      d: (string){ "t" }
    82    }
    83    b: (struct){
    84      d: (string){ string }
    85      c: (string){ string }
    86    }
    87    l1: (#list){
    88      0: (struct){
    89        c: (string){ "t" }
    90        d: (string){ "st" }
    91      }
    92    }
    93    a1: (struct){
    94      c: (string){ "t" }
    95      d: (string){ "st" }
    96    }
    97    b1: (struct){
    98      d: (_|_){
    99        // [incomplete] b1.d: non-concrete value string in operand to +:
   100        //     ./in.cue:10:5
   101        //     ./in.cue:11:5
   102      }
   103      c: (string){ string }
   104    }
   105  }
   106  -- diff/-out/evalalpha<==>+out/eval --
   107  diff old new
   108  --- old
   109  +++ new
   110  @@ -1,13 +1,13 @@
   111   (struct){
   112     l: (#list){
   113       0: (struct){
   114  +      c: (string){ "t" }
   115         d: (string){ "t" }
   116  -      c: (string){ "t" }
   117       }
   118     }
   119     a: (struct){
   120  +    c: (string){ "t" }
   121       d: (string){ "t" }
   122  -    c: (string){ "t" }
   123     }
   124     b: (struct){
   125       d: (string){ string }
   126  @@ -15,13 +15,13 @@
   127     }
   128     l1: (#list){
   129       0: (struct){
   130  +      c: (string){ "t" }
   131         d: (string){ "st" }
   132  -      c: (string){ "t" }
   133       }
   134     }
   135     a1: (struct){
   136  +    c: (string){ "t" }
   137       d: (string){ "st" }
   138  -    c: (string){ "t" }
   139     }
   140     b1: (struct){
   141       d: (_|_){
   142  -- diff/todo/p3 --
   143  Reordering
   144  -- out/eval --
   145  (struct){
   146    l: (#list){
   147      0: (struct){
   148        d: (string){ "t" }
   149        c: (string){ "t" }
   150      }
   151    }
   152    a: (struct){
   153      d: (string){ "t" }
   154      c: (string){ "t" }
   155    }
   156    b: (struct){
   157      d: (string){ string }
   158      c: (string){ string }
   159    }
   160    l1: (#list){
   161      0: (struct){
   162        d: (string){ "st" }
   163        c: (string){ "t" }
   164      }
   165    }
   166    a1: (struct){
   167      d: (string){ "st" }
   168      c: (string){ "t" }
   169    }
   170    b1: (struct){
   171      d: (_|_){
   172        // [incomplete] b1.d: non-concrete value string in operand to +:
   173        //     ./in.cue:10:5
   174        //     ./in.cue:11:5
   175      }
   176      c: (string){ string }
   177    }
   178  }