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

aaronchen2k2k's avatar
aaronchen2k2k 已提交
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
type ClsBase struct {
	Title   string `yaml:"title"`
	Desc    string `yaml:"desc"`
	Author  string `yaml:"author"`
	Version string `yaml:"version"`
}

type ClsRange struct {
	ClsBase
	FieldBase
	Field string
	Ranges map[string]string  `yaml:"ranges"`
}
type ClsInst struct {
	ClsBase
	Field string
	Instances []struct {
		FieldBase
		Instance string  `yaml:"Instance"`
	} `yaml:"fields,flow"`
}
type DefData struct {
	ClsBase
	Fields  []DefField `yaml:"fields,flow"`
}
type DefField struct {
	FieldBase
	Field     string  `yaml:"field"`
	Range    string  `yaml:"range"`
aaronchen2k2k's avatar
aaronchen2k2k 已提交
32

aaronchen2k2k's avatar
aaronchen2k2k 已提交
33
	Fields   []DefField `yaml:"fields,flow"`
aaronchen2k2k's avatar
aaronchen2k2k 已提交
34 35
}

aaronchen2k2k's avatar
aaronchen2k2k 已提交
36
type FieldBase struct {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
37
	Note     string  `yaml:"note"`
aaronchen2k2k's avatar
aaronchen2k2k 已提交
38 39 40 41 42 43

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

aaronchen2k2k's avatar
aaronchen2k2k 已提交
44 45
	Prefix   string  `yaml:"prefix"`
	Postfix  string  `yaml:"postfix"`
aaronchen2k2k's avatar
gen int  
aaronchen2k2k 已提交
46 47
	Loop  int  `yaml:"loop"`
	Loopfix  string  `yaml:"loopfix"`
aaronchen2k2k's avatar
format  
aaronchen2k2k 已提交
48
	Format  string  `yaml:"format"`
aaronchen2k2k's avatar
aaronchen2k2k 已提交
49
	IsNumb  bool  `yaml:"isNumb"`
aaronchen2k2k's avatar
aaronchen2k2k 已提交
50
	Expect  string  `yaml:"expect"`
aaronchen2k2k's avatar
aaronchen2k2k 已提交
51 52

	Precision int
aaronchen2k2k's avatar
aaronchen2k2k 已提交
53
}
54 55

type FieldValue struct {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
56 57
	FieldBase
	Field     string  `yaml:"field"`
58 59 60 61

	Values   []interface{}
	Children []FieldValue
}