cuelang.org/go@v0.10.1/tools/flow/testdata/dep.txtar (about)

     1  // complex dependencies
     2  
     3  -- in.cue --
     4  // Each task depends on the previous one in a different manner.
     5  
     6  root: [string]: $id: "valToOut"
     7  
     8  indirectValue: root.taskRootReference.x
     9  
    10  // This is not just a reference, but a copy of a new task.
    11  indirectTaskRoot: root.indirectTaskValueReference
    12  
    13  root: {
    14  	a: {
    15  		b: 3
    16  	}
    17  
    18  	concreteValueInGeneratedSubfield: {
    19  		x: {
    20  			// reference in value of comprehension.
    21  			// Even though the referenced value is concrete, we still consider
    22  			// this to be a dependency.
    23  			for x in [1] {foo: a.b}
    24  		}
    25  		index: int
    26  	}
    27  
    28  	indexReference: {
    29  		// This inline struct currently causes a memory leak. This is fine
    30  		// for now.
    31  		// TODO(leak): fix this.
    32  		x: [0, 1][concreteValueInGeneratedSubfield.index]
    33  	}
    34  
    35  	taskRootReference: {
    36  		$after: indexReference
    37  		x:      3
    38  	}
    39  
    40  	indirectTaskValueReference: {
    41  		x: indirectValue
    42  	}
    43  
    44  	indirectTaskRootReference: {
    45  		x: indirectTaskRoot
    46  
    47  		incomplete: _
    48  	}
    49  
    50  	incompleteComprehensionSource: {
    51  		x: {for x in indirectTaskRootReference.incomplete {}}
    52  	}
    53  
    54  	incompleteList: {
    55  		x: [for x in [1] {incompleteComprehensionSource.x}]
    56  	}
    57  
    58  	incompleteGeneratedStruct: {
    59  		x: {for x in [1] {foo: incompleteList.x}}
    60  	}
    61  }
    62  -- out/run/errors --
    63  -- out/run/t0 --
    64  graph TD
    65    t0("root.a [Ready]")
    66    t1("root.concreteValueInGeneratedSubfield [Waiting]")
    67    t1-->t0
    68    t2("root.indexReference [Waiting]")
    69    t2-->t1
    70    t3("root.taskRootReference [Waiting]")
    71    t3-->t2
    72    t4("root.indirectTaskValueReference [Waiting]")
    73    t4-->t3
    74    t5("root.indirectTaskRootReference [Waiting]")
    75    t5-->t4
    76    t6("root.incompleteComprehensionSource [Waiting]")
    77    t6-->t5
    78    t7("root.incompleteList [Waiting]")
    79    t7-->t6
    80    t8("root.incompleteGeneratedStruct [Waiting]")
    81    t8-->t7
    82  
    83  -- out/run/t1 --
    84  graph TD
    85    t0("root.a [Terminated]")
    86    t1("root.concreteValueInGeneratedSubfield [Ready]")
    87    t1-->t0
    88    t2("root.indexReference [Waiting]")
    89    t2-->t1
    90    t3("root.taskRootReference [Waiting]")
    91    t3-->t2
    92    t4("root.indirectTaskValueReference [Waiting]")
    93    t4-->t3
    94    t5("root.indirectTaskRootReference [Waiting]")
    95    t5-->t4
    96    t6("root.incompleteComprehensionSource [Waiting]")
    97    t6-->t5
    98    t7("root.incompleteList [Waiting]")
    99    t7-->t6
   100    t8("root.incompleteGeneratedStruct [Waiting]")
   101    t8-->t7
   102  
   103  -- out/run/t1/value --
   104  {
   105  	b:   3
   106  	$id: "valToOut"
   107  }
   108  -- out/run/t1/stats --
   109  Leaks:  0
   110  Freed:  0
   111  Reused: 0
   112  Allocs: 0
   113  Retain: 0
   114  
   115  Unifications: 0
   116  Conjuncts:    0
   117  Disjuncts:    0
   118  -- out/run/t2 --
   119  graph TD
   120    t0("root.a [Terminated]")
   121    t1("root.concreteValueInGeneratedSubfield [Terminated]")
   122    t1-->t0
   123    t2("root.indexReference [Ready]")
   124    t2-->t1
   125    t3("root.taskRootReference [Waiting]")
   126    t3-->t2
   127    t4("root.indirectTaskValueReference [Waiting]")
   128    t4-->t3
   129    t5("root.indirectTaskRootReference [Waiting]")
   130    t5-->t4
   131    t6("root.incompleteComprehensionSource [Waiting]")
   132    t6-->t5
   133    t7("root.incompleteList [Waiting]")
   134    t7-->t6
   135    t8("root.incompleteGeneratedStruct [Waiting]")
   136    t8-->t7
   137  
   138  -- out/run/t2/value --
   139  {
   140  	x: {
   141  		foo: 3
   142  	}
   143  	$id:   "valToOut"
   144  	index: int
   145  }
   146  -- out/run/t2/stats --
   147  Leaks:  0
   148  Freed:  0
   149  Reused: 0
   150  Allocs: 0
   151  Retain: 0
   152  
   153  Unifications: 0
   154  Conjuncts:    0
   155  Disjuncts:    0
   156  -- out/run/t3 --
   157  graph TD
   158    t0("root.a [Terminated]")
   159    t1("root.concreteValueInGeneratedSubfield [Terminated]")
   160    t1-->t0
   161    t2("root.indexReference [Terminated]")
   162    t2-->t1
   163    t3("root.taskRootReference [Ready]")
   164    t3-->t2
   165    t4("root.indirectTaskValueReference [Waiting]")
   166    t4-->t3
   167    t5("root.indirectTaskRootReference [Waiting]")
   168    t5-->t4
   169    t6("root.incompleteComprehensionSource [Waiting]")
   170    t6-->t5
   171    t7("root.incompleteList [Waiting]")
   172    t7-->t6
   173    t8("root.incompleteGeneratedStruct [Waiting]")
   174    t8-->t7
   175  
   176  -- out/run/t3/value --
   177  {
   178  	x: [0, 1][INDEX]
   179  	$id: "valToOut"
   180  
   181  	//cue:path: root.concreteValueInGeneratedSubfield.index
   182  	let INDEX = int
   183  }
   184  -- out/run/t3/stats --
   185  Leaks:  1
   186  Freed:  0
   187  Reused: 0
   188  Allocs: 1
   189  Retain: 1
   190  
   191  Unifications: 1
   192  Conjuncts:    1
   193  Disjuncts:    1
   194  -- out/run/t4 --
   195  graph TD
   196    t0("root.a [Terminated]")
   197    t1("root.concreteValueInGeneratedSubfield [Terminated]")
   198    t1-->t0
   199    t2("root.indexReference [Terminated]")
   200    t2-->t1
   201    t3("root.taskRootReference [Terminated]")
   202    t3-->t2
   203    t4("root.indirectTaskValueReference [Ready]")
   204    t4-->t3
   205    t5("root.indirectTaskRootReference [Waiting]")
   206    t5-->t4
   207    t6("root.incompleteComprehensionSource [Waiting]")
   208    t6-->t5
   209    t7("root.incompleteList [Waiting]")
   210    t7-->t6
   211    t8("root.incompleteGeneratedStruct [Waiting]")
   212    t8-->t7
   213  
   214  -- out/run/t4/value --
   215  {
   216  	$after: {
   217  		x: [0, 1][INDEX]
   218  		$id: "valToOut"
   219  	}
   220  	$id: "valToOut"
   221  	x:   3
   222  
   223  	//cue:path: root.concreteValueInGeneratedSubfield.index
   224  	let INDEX = int
   225  }
   226  -- out/run/t4/stats --
   227  Leaks:  0
   228  Freed:  0
   229  Reused: 0
   230  Allocs: 0
   231  Retain: 0
   232  
   233  Unifications: 0
   234  Conjuncts:    0
   235  Disjuncts:    0
   236  -- out/run/t5 --
   237  graph TD
   238    t0("root.a [Terminated]")
   239    t1("root.concreteValueInGeneratedSubfield [Terminated]")
   240    t1-->t0
   241    t2("root.indexReference [Terminated]")
   242    t2-->t1
   243    t3("root.taskRootReference [Terminated]")
   244    t3-->t2
   245    t4("root.indirectTaskValueReference [Terminated]")
   246    t4-->t3
   247    t5("root.indirectTaskRootReference [Ready]")
   248    t5-->t4
   249    t6("root.incompleteComprehensionSource [Waiting]")
   250    t6-->t5
   251    t7("root.incompleteList [Waiting]")
   252    t7-->t6
   253    t8("root.incompleteGeneratedStruct [Waiting]")
   254    t8-->t7
   255  
   256  -- out/run/t5/value --
   257  {
   258  	x:   3
   259  	$id: "valToOut"
   260  }
   261  -- out/run/t5/stats --
   262  Leaks:  0
   263  Freed:  0
   264  Reused: 0
   265  Allocs: 0
   266  Retain: 0
   267  
   268  Unifications: 0
   269  Conjuncts:    0
   270  Disjuncts:    0
   271  -- out/run/t6 --
   272  graph TD
   273    t0("root.a [Terminated]")
   274    t1("root.concreteValueInGeneratedSubfield [Terminated]")
   275    t1-->t0
   276    t2("root.indexReference [Terminated]")
   277    t2-->t1
   278    t3("root.taskRootReference [Terminated]")
   279    t3-->t2
   280    t4("root.indirectTaskValueReference [Terminated]")
   281    t4-->t3
   282    t5("root.indirectTaskRootReference [Terminated]")
   283    t5-->t4
   284    t6("root.incompleteComprehensionSource [Ready]")
   285    t6-->t5
   286    t7("root.incompleteList [Waiting]")
   287    t7-->t6
   288    t8("root.incompleteGeneratedStruct [Waiting]")
   289    t8-->t7
   290  
   291  -- out/run/t6/value --
   292  {
   293  	x: {
   294  		x:   3
   295  		$id: "valToOut"
   296  	}
   297  	$id:        "valToOut"
   298  	incomplete: _
   299  }
   300  -- out/run/t6/stats --
   301  Leaks:  0
   302  Freed:  0
   303  Reused: 0
   304  Allocs: 0
   305  Retain: 0
   306  
   307  Unifications: 0
   308  Conjuncts:    0
   309  Disjuncts:    0
   310  -- out/run/t7 --
   311  graph TD
   312    t0("root.a [Terminated]")
   313    t1("root.concreteValueInGeneratedSubfield [Terminated]")
   314    t1-->t0
   315    t2("root.indexReference [Terminated]")
   316    t2-->t1
   317    t3("root.taskRootReference [Terminated]")
   318    t3-->t2
   319    t4("root.indirectTaskValueReference [Terminated]")
   320    t4-->t3
   321    t5("root.indirectTaskRootReference [Terminated]")
   322    t5-->t4
   323    t6("root.incompleteComprehensionSource [Terminated]")
   324    t6-->t5
   325    t7("root.incompleteList [Ready]")
   326    t7-->t6
   327    t8("root.incompleteGeneratedStruct [Waiting]")
   328    t8-->t7
   329  
   330  -- out/run/t7/value --
   331  {
   332  	x: {
   333  		for x in INCOMPLETE {}
   334  	}
   335  	$id: "valToOut"
   336  
   337  	//cue:path: root.indirectTaskRootReference.incomplete
   338  	let INCOMPLETE = _
   339  }
   340  -- out/run/t7/stats --
   341  Leaks:  0
   342  Freed:  0
   343  Reused: 0
   344  Allocs: 0
   345  Retain: 0
   346  
   347  Unifications: 0
   348  Conjuncts:    0
   349  Disjuncts:    0
   350  -- out/run/t8 --
   351  graph TD
   352    t0("root.a [Terminated]")
   353    t1("root.concreteValueInGeneratedSubfield [Terminated]")
   354    t1-->t0
   355    t2("root.indexReference [Terminated]")
   356    t2-->t1
   357    t3("root.taskRootReference [Terminated]")
   358    t3-->t2
   359    t4("root.indirectTaskValueReference [Terminated]")
   360    t4-->t3
   361    t5("root.indirectTaskRootReference [Terminated]")
   362    t5-->t4
   363    t6("root.incompleteComprehensionSource [Terminated]")
   364    t6-->t5
   365    t7("root.incompleteList [Terminated]")
   366    t7-->t6
   367    t8("root.incompleteGeneratedStruct [Ready]")
   368    t8-->t7
   369  
   370  -- out/run/t8/value --
   371  {
   372  	x: [X]
   373  	$id: "valToOut"
   374  
   375  	//cue:path: root.incompleteComprehensionSource.x
   376  	let X = {
   377  		for x in INCOMPLETE {}
   378  	}
   379  
   380  	//cue:path: root.indirectTaskRootReference.incomplete
   381  	let INCOMPLETE = _
   382  }
   383  -- out/run/t8/stats --
   384  Leaks:  0
   385  Freed:  0
   386  Reused: 0
   387  Allocs: 0
   388  Retain: 0
   389  
   390  Unifications: 0
   391  Conjuncts:    0
   392  Disjuncts:    0
   393  -- out/run/t9 --
   394  graph TD
   395    t0("root.a [Terminated]")
   396    t1("root.concreteValueInGeneratedSubfield [Terminated]")
   397    t1-->t0
   398    t2("root.indexReference [Terminated]")
   399    t2-->t1
   400    t3("root.taskRootReference [Terminated]")
   401    t3-->t2
   402    t4("root.indirectTaskValueReference [Terminated]")
   403    t4-->t3
   404    t5("root.indirectTaskRootReference [Terminated]")
   405    t5-->t4
   406    t6("root.incompleteComprehensionSource [Terminated]")
   407    t6-->t5
   408    t7("root.incompleteList [Terminated]")
   409    t7-->t6
   410    t8("root.incompleteGeneratedStruct [Terminated]")
   411    t8-->t7
   412  
   413  -- out/run/t9/value --
   414  {
   415  	x: {
   416  		foo: [X_1]
   417  	}
   418  	$id: "valToOut"
   419  
   420  	//cue:path: root.incompleteComprehensionSource.x
   421  	let X_1 = {
   422  		for x in INCOMPLETE {}
   423  	}
   424  
   425  	//cue:path: root.indirectTaskRootReference.incomplete
   426  	let INCOMPLETE = _
   427  }
   428  -- out/run/t9/stats --
   429  Leaks:  0
   430  Freed:  0
   431  Reused: 0
   432  Allocs: 0
   433  Retain: 0
   434  
   435  Unifications: 0
   436  Conjuncts:    0
   437  Disjuncts:    0
   438  -- out/run/stats/totals --
   439  Leaks:  1
   440  Freed:  0
   441  Reused: 0
   442  Allocs: 1
   443  Retain: 1
   444  
   445  Unifications: 1
   446  Conjuncts:    1
   447  Disjuncts:    1