cuelang.org/go@v0.13.0/cue/testdata/definitions/039_augment_closed_optionals.txtar (about)

     1  #name: augment closed optionals
     2  #evalFull
     3  -- in.cue --
     4  #A: {
     5  	[=~"^[a-s]*$"]: int
     6  }
     7  #B: {
     8  	[=~"^[m-z]*?"]: int
     9  }
    10  #C: {
    11  	#A & #B
    12  	{[=~"^Q*$"]: int}
    13  }
    14  c: #C & {QQ: 3}
    15  #D: {
    16  	#A
    17  	#B
    18  }
    19  d: #D & {aaa: 4}
    20  -- out/def --
    21  #A: {
    22  	[=~"^[a-s]*$"]: int
    23  }
    24  #B: {
    25  	[=~"^[m-z]*?"]: int
    26  }
    27  #C: {
    28  	#A & #B
    29  	{[=~"^Q*$"]: int}
    30  }
    31  c: #C & {
    32  	QQ: 3
    33  }
    34  #D: {
    35  	#A
    36  	#B
    37  }
    38  d: #D & {
    39  	aaa: 4
    40  }
    41  -- out/export --
    42  c: {
    43  	QQ: 3
    44  }
    45  d: {
    46  	aaa: 4
    47  }
    48  -- out/yaml --
    49  c:
    50    QQ: 3
    51  d:
    52    aaa: 4
    53  -- out/json --
    54  {"c":{"QQ":3},"d":{"aaa":4}}
    55  -- out/legacy-debug --
    56  <0>{#A: <1>C{[=~"^[a-s]*$"]: <2>(_: string)->int, }, #B: <3>C{[=~"^[m-z]*?"]: <4>(_: string)->int, }, #C: <5>C{C{[=~"^Q*$"]: <6>(_: string)->int}, C{(C{[=~"^[a-s]*$"]: <7>(_: string)->int} & C{[=~"^[m-z]*?"]: <8>(_: string)->int})}, }, c: <9>C{C{[=~"^Q*$"]: <10>(_: string)->int}, C{(C{[=~"^[a-s]*$"]: <11>(_: string)->int} & C{[=~"^[m-z]*?"]: <12>(_: string)->int})}, QQ: 3}, #D: <13>C{[=~"^[a-s]*$"]: <14>(_: string)->int, [=~"^[m-z]*?"]: <15>(_: string)->int, }, d: <16>C{[=~"^[a-s]*$"]: <17>(_: string)->int, [=~"^[m-z]*?"]: <18>(_: string)->int, aaa: 4}}
    57  -- out/compile --
    58  --- in.cue
    59  {
    60    #A: {
    61      [=~"^[a-s]*$"]: int
    62    }
    63    #B: {
    64      [=~"^[m-z]*?"]: int
    65    }
    66    #C: {
    67      (〈1;#A〉 & 〈1;#B〉)
    68      {
    69        [=~"^Q*$"]: int
    70      }
    71    }
    72    c: (〈0;#C〉 & {
    73      QQ: 3
    74    })
    75    #D: {
    76      〈1;#A〉
    77      〈1;#B〉
    78    }
    79    d: (〈0;#D〉 & {
    80      aaa: 4
    81    })
    82  }
    83  -- out/eval/stats --
    84  Leaks:  0
    85  Freed:  9
    86  Reused: 6
    87  Allocs: 3
    88  Retain: 0
    89  
    90  Unifications: 9
    91  Conjuncts:    35
    92  Disjuncts:    9
    93  -- out/eval --
    94  (struct){
    95    #A: (#struct){
    96    }
    97    #B: (#struct){
    98    }
    99    #C: (#struct){
   100    }
   101    c: (#struct){
   102      QQ: (int){ 3 }
   103    }
   104    #D: (#struct){
   105    }
   106    d: (#struct){
   107      aaa: (int){ 4 }
   108    }
   109  }