github.com/oam-dev/kubevela@v1.9.11/references/cuegen/testdata/valid.cue (about)

     1  package testdata
     2  
     3  BasicType: {
     4  	field1:  string
     5  	field2:  int
     6  	field3:  bool
     7  	field4:  float32
     8  	field5:  float64
     9  	field6:  int8
    10  	field7:  int16
    11  	field8:  int32
    12  	field9:  int64
    13  	field10: uint
    14  	field11: uint8
    15  	field12: uint16
    16  	field13: uint32
    17  	field14: uint64
    18  	field15: uint64
    19  	field16: uint8
    20  	field17: rune
    21  	field18: _
    22  	field19: _
    23  }
    24  TagName: {
    25  	f1: string
    26  	f2: string
    27  	f3: string
    28  }
    29  SliceAndArray: {
    30  	field1: [...string]
    31  	field2: 3 * [string]
    32  	field3: [...int]
    33  	field4: 3 * [int]
    34  	field5: [...bool]
    35  	field6: 3 * [bool]
    36  	field7: [...float32]
    37  	field8: 3 * [float32]
    38  	field9: [...float64]
    39  	field10: 3 * [float64]
    40  	field11: bytes
    41  	field12: bytes
    42  }
    43  SmallStruct: {
    44  	field1: string
    45  	field2: string
    46  }
    47  AnonymousField: SmallStruct: {
    48  	field1: string
    49  	field2: string
    50  }
    51  ReferenceField: field1: {
    52  	field1: string
    53  	field2: string
    54  }
    55  StructField: {
    56  	field1: {
    57  		field1: string
    58  		field2: string
    59  	}
    60  	field2: {
    61  		field1: string
    62  		field2: string
    63  	}
    64  }
    65  EmbedStruct: {
    66  	field1: {
    67  		field1: string
    68  		field2: string
    69  	}
    70  	field2: {
    71  		field1: string
    72  		field2: string
    73  		field3: {
    74  			field1: string
    75  			field2: string
    76  			field3: {
    77  				field1: string
    78  				field2: string
    79  				field3: {
    80  					field1: string
    81  					field2: string
    82  				}
    83  			}
    84  		}
    85  	}
    86  	field3: [string]: [...string]
    87  	field4: uint
    88  }
    89  MapField: {
    90  	field1: [string]: string
    91  	field2: [string]: int
    92  	field3: {
    93  		...
    94  	}
    95  	field4: [string]: {
    96  		field1: string
    97  		field2: string
    98  	}
    99  	field5: {
   100  		...
   101  	}
   102  }
   103  EmptyStruct: {}
   104  // Comment is a test struct1
   105  // Struct is a test struct2 
   106  // Struct is a test struct3
   107  // Struct is a test struct4
   108  Comment: {
   109  	// Field1 comment
   110  	// Field1 doc
   111  	field1: string
   112  	// Field2 comment
   113  	// Field2 doc 
   114  	field2: string
   115  	// Field3 comment
   116  	// Field3 doc
   117  	field3: string
   118  	// Field4 comment
   119  	field4: string
   120  	// Field5 doc
   121  	field5: {
   122  		// Field5.Field1 comment
   123  		field1: string
   124  		// Field5.Field2 doc
   125  		field2: string
   126  		// Field5.Field3 doc 
   127  		field3: string
   128  		// Field5.Field4 doc
   129  		field4: string
   130  		// Field5.Field5 doc
   131  		field5: {
   132  			// Field5.Field5.Field1 comment
   133  			field1: string
   134  			// Field5.Field5.Field2 doc
   135  			field2: string
   136  			// Field5.Field5.Field3 doc 
   137  			field3: string
   138  			// Field5.Field5.Field4 doc
   139  			field4: string
   140  		}
   141  	}
   142  	// Field6 doc
   143  	field6: [string]: [...string]
   144  	// Field7 comment
   145  	field7: [string]: [...string]
   146  	// Field8 comment
   147  	// Field8 doc
   148  	field8: [string]: [...string]
   149  	field9: [string]: [...string]
   150  	// Field10 comment
   151  	// Field10 doc1
   152  	// Field10 doc2
   153  	// Field10 doc3
   154  	field10: [string]: [...string]
   155  	// Field11 doc
   156  	field11: {
   157  		// Field11.Field1 comment
   158  		field1: string
   159  	}
   160  	// Field12 doc
   161  	field12: {
   162  		// Field12.Field1 doc
   163  		field1: string
   164  	}
   165  	// Field13 doc
   166  	field13: field1: string
   167  	// Field14 doc
   168  	field14: [string]: string
   169  }
   170  Default: {
   171  	a1: *"abc" | string
   172  	// empty string
   173  	a2: *"" | string
   174  	b1: *true | bool
   175  	b2: *false | bool
   176  	c1: *123 | int
   177  	c2: *123 | int8
   178  	c3: *123 | int16
   179  	c4: *123 | int32
   180  	c5: *123 | int64
   181  	d1: *123 | uint
   182  	d2: *123 | uint8
   183  	d3: *123 | uint16
   184  	d4: *123 | uint32
   185  	d5: *123 | uint64
   186  	e1: *123.456 | float32
   187  	e2: *123.456 | float64
   188  }
   189  Enum: {
   190  	a: "abc" | "def" | "ghi"
   191  	b: 1 | 2 | 3
   192  	c: true | false
   193  	d: 1.1 | 2.2 | 3.3
   194  	e: "abc" | "def" | *"ghi"
   195  	f: 1 | *2 | 3
   196  	g: true | *false
   197  	// if default value is first enum, '*' will not be added
   198  	h: 1.1 | 2.2 | 3.3
   199  	i: "abc"
   200  }
   201  Unexported: {
   202  	field1: string
   203  	field2: {
   204  		field1: string
   205  		field3: {
   206  			field1: string
   207  			field3: string
   208  		}
   209  	}
   210  }
   211  // RequestVars is the vars for http request
   212  // TODO: support timeout & tls
   213  RequestVars: {
   214  	method: string
   215  	url:    string
   216  	request: {
   217  		body: string
   218  		header: [string]: [...string]
   219  		trailer: [string]: [...string]
   220  	}
   221  }
   222  // ResponseVars is the vars for http response
   223  ResponseVars: {
   224  	body: string
   225  	header: [string]: [...string]
   226  	trailer: [string]: [...string]
   227  	statusCode: int
   228  }
   229  // DoParams is the params for http request
   230  DoParams: $params: {
   231  	method: string
   232  	url:    string
   233  	request: {
   234  		body: string
   235  		header: [string]: [...string]
   236  		trailer: [string]: [...string]
   237  	}
   238  }
   239  // DoReturns returned struct for http response
   240  DoReturns: $returns: {
   241  	body: string
   242  	header: [string]: [...string]
   243  	trailer: [string]: [...string]
   244  	statusCode: int
   245  }
   246  ResourceReturns: $returns: {
   247  	...
   248  }
   249  InlineStruct1: {
   250  	// Field1 comment
   251  	// Field1 doc
   252  	field11: string
   253  	field12: string
   254  	// Field3 doc
   255  	field13: {
   256  		// Field3.Field1 comment
   257  		// Field3.Field1 doc
   258  		field11: string
   259  		// Field3.Field2 comment
   260  		field12: string
   261  	}
   262  }
   263  InlineStruct2: {
   264  	// Field1 doc
   265  	field21: string
   266  	// Field1 comment
   267  	// Field1 doc
   268  	field11: string
   269  	field12: string
   270  	// Field3 doc
   271  	field13: {
   272  		// Field3.Field1 comment
   273  		// Field3.Field1 doc
   274  		field11: string
   275  		// Field3.Field2 comment
   276  		field12: string
   277  	}
   278  }
   279  InlineStruct3: {
   280  	field31: string
   281  	// Field1 doc
   282  	field21: string
   283  	// Field1 comment
   284  	// Field1 doc
   285  	field11: string
   286  	field12: string
   287  	// Field3 doc
   288  	field13: {
   289  		// Field3.Field1 comment
   290  		// Field3.Field1 doc
   291  		field11: string
   292  		// Field3.Field2 comment
   293  		field12: string
   294  	}
   295  }
   296  Optional: {
   297  	field1?: string
   298  	field2:  string
   299  	field3?: string
   300  	field4:  string
   301  	field5: {
   302  		field1?: string
   303  		field2:  string
   304  	}
   305  	field6?: {
   306  		field1?: string
   307  		field2:  string
   308  		field3?: {
   309  			field1?: string
   310  			field2:  string
   311  		}
   312  	}
   313  }
   314  Skip: {
   315  	field2: string
   316  	field4: string
   317  }
   318  SpecialFieldName: {
   319  	"field1-foo.bar+123<sa":  string
   320  	"field2:foo]bar[foo|bar": string
   321  }