definition.go 1.4 KB
Newer Older
aaronchen2k2k's avatar
aaronchen2k2k 已提交
1 2
package model

aaronchen2k2k's avatar
aaronchen2k2k 已提交
3 4 5 6 7 8 9
type ClsBase struct {
	Title   string `yaml:"title"`
	Desc    string `yaml:"desc"`
	Author  string `yaml:"author"`
	Version string `yaml:"version"`
}

aaronchen2k2k's avatar
aaronchen2k2k 已提交
10 11
// range refer
type ClsRanges struct {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
12 13
	ClsBase   `yaml:",inline"`
	FieldBase   `yaml:",inline"`
aaronchen2k2k's avatar
aaronchen2k2k 已提交
14
	Field string  `yaml:"field"`
aaronchen2k2k's avatar
aaronchen2k2k 已提交
15 16
	Ranges map[string]string  `yaml:"ranges"`
}
aaronchen2k2k's avatar
aaronchen2k2k 已提交
17 18
// instance refer
type ClsInsts struct {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
19
	ClsBase   `yaml:",inline"`
aaronchen2k2k's avatar
aaronchen2k2k 已提交
20 21
	Field string  `yaml:"field"`
	Instances []ClsInst `yaml:"instances,flow"`
aaronchen2k2k's avatar
aaronchen2k2k 已提交
22
}
aaronchen2k2k's avatar
aaronchen2k2k 已提交
23
type ClsInst struct {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
24
	FieldBase   `yaml:",inline"`
aaronchen2k2k's avatar
aaronchen2k2k 已提交
25
	Instance string  `yaml:"instance"`
aaronchen2k2k's avatar
aaronchen2k2k 已提交
26 27
	Range    string  `yaml:"range"`
	Fields  []DefField `yaml:"fields,flow"`
aaronchen2k2k's avatar
aaronchen2k2k 已提交
28 29 30
}

// common item
aaronchen2k2k's avatar
aaronchen2k2k 已提交
31
type DefData struct {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
32
	ClsBase   `yaml:",inline"`
aaronchen2k2k's avatar
aaronchen2k2k 已提交
33 34 35
	Fields  []DefField `yaml:"fields,flow"`
}
type DefField struct {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
36
	FieldBase   `yaml:",inline"`
aaronchen2k2k's avatar
aaronchen2k2k 已提交
37 38 39
	Field     string  `yaml:"field"`
	Range    string  `yaml:"range"`
	Fields   []DefField `yaml:"fields,flow"`
aaronchen2k2k's avatar
aaronchen2k2k 已提交
40 41

	Type     string
aaronchen2k2k's avatar
aaronchen2k2k 已提交
42 43
}

aaronchen2k2k's avatar
aaronchen2k2k 已提交
44
type FieldBase struct {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
45
	Note     string  `yaml:"note"`
aaronchen2k2k's avatar
aaronchen2k2k 已提交
46 47 48 49 50 51

	From	string  `yaml:"from"`
	Select	string  `yaml:"select"`
	Where	string  `yaml:"where"`
	Use	string  `yaml:"use"`

aaronchen2k2k's avatar
aaronchen2k2k 已提交
52 53
	Prefix   string  `yaml:"prefix"`
	Postfix  string  `yaml:"postfix"`
aaronchen2k2k's avatar
gen int  
aaronchen2k2k 已提交
54 55
	Loop  int  `yaml:"loop"`
	Loopfix  string  `yaml:"loopfix"`
aaronchen2k2k's avatar
format  
aaronchen2k2k 已提交
56
	Format  string  `yaml:"format"`
aaronchen2k2k's avatar
aaronchen2k2k 已提交
57
	IsNumb  bool  `yaml:"isNumb"`
aaronchen2k2k's avatar
aaronchen2k2k 已提交
58
	Expect  string  `yaml:"expect"`
aaronchen2k2k's avatar
aaronchen2k2k 已提交
59 60

	Precision int
aaronchen2k2k's avatar
aaronchen2k2k 已提交
61
}
62 63

type FieldValue struct {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
64
	FieldBase   `yaml:",inline"`
aaronchen2k2k's avatar
aaronchen2k2k 已提交
65
	Field     string  `yaml:"field"`
aaronchen2k2k's avatar
aaronchen2k2k 已提交
66
	Values   []interface{}
67
}