code_gen

package
v0.0.0-...-89e69cd Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 27, 2023 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CopyExamplesToHome

func CopyExamplesToHome() error

func CopyTemplatesToHome

func CopyTemplatesToHome() error

func InstallNugetPackage

func InstallNugetPackage(project_folder string, package_name string) error

Types

type CodeGen

type CodeGen struct {
	Output_folder string

	Templates []Template
	// contains filtered or unexported fields
}

func Create

func Create(output_folder string) (*CodeGen, error)

func (*CodeGen) AddRequiredResource

func (m *CodeGen) AddRequiredResource(requires Template)

func (*CodeGen) AddRequiredResources

func (m *CodeGen) AddRequiredResources(requires []Template)

func (*CodeGen) Build

func (m *CodeGen) Build(template_path string, schema_path string, ns string) error

func (*CodeGen) BuildTemplateDocs

func (m *CodeGen) BuildTemplateDocs(template_path string, template_doc string, template_doc_menu string, output_dir string) error

***************************************** Function to build documents for templates *****************************************

func (*CodeGen) BuildTemplatePath

func (m *CodeGen) BuildTemplatePath(file string) string

func (*CodeGen) GetTemplate

func (m *CodeGen) GetTemplate(name string) []Template

func (*CodeGen) GetTemplates

func (m *CodeGen) GetTemplates(template_names []string) []Template

func (*CodeGen) LoadFieldTemplate

func (m *CodeGen) LoadFieldTemplate(template string, data Field) string

func (*CodeGen) LoadTemplate

func (m *CodeGen) LoadTemplate(template string) string

func (*CodeGen) LoadTemplates

func (m *CodeGen) LoadTemplates(template_path string) error

*************************** Load the template resources ***************************

type Data

type Data struct {
	RootNS            string
	Templates         *[]Template
	Template          *Template
	RootSchema        *RootSchema
	Schema            *Schema
	NameSpaces        map[string]string
	RegisterSingleton map[string]string
	RegisterRoute     map[string]string
	Data              Field
}

func (*Data) AddNamespace

func (m *Data) AddNamespace(value string)

func (*Data) AddRoute

func (m *Data) AddRoute(value string)

func (*Data) AddSingleton

func (m *Data) AddSingleton(value string)

func (*Data) FullNS

func (m *Data) FullNS() string

func (*Data) GetTemplates

func (m *Data) GetTemplates(template_name string) []Template

type Field

type Field struct {
	PrimaryKey     bool        `json:"primary_key" yaml:"primary_key"`
	Constructor    bool        `json:"constructor" yaml:"constructor"`
	Name           string      `json:"name" yaml:"name"`
	Type           string      `json:"type" yaml:"type"`
	Flags          []Flag      `json:"flags" yaml:"flags"`
	NotifyProperty []string    `json:"notify_property" yaml:"notify_property"`
	InitValue      interface{} `json:"init_value" yaml:"init_value"`
	InitValueRaw   bool        `json:"init_value_raw" yaml:"init_value_raw"`
}

func (*Field) DisplayName

func (m *Field) DisplayName() string

func (*Field) FlagExists

func (m *Field) FlagExists(flag string) bool

func (*Field) FormatValue

func (m *Field) FormatValue(prefix string, quote_value bool) string

func (*Field) FuncName

func (m *Field) FuncName() string

func (*Field) GetFlagParam

func (m *Field) GetFlagParam(flag string, param_index int) string

func (*Field) GetOpt

func (m *Field) GetOpt(flag string) interface{}

func (*Field) NoFlag

func (m *Field) NoFlag(flag string) bool

func (*Field) OptExists

func (m *Field) OptExists(flag string) bool

func (*Field) PrivVarName

func (m *Field) PrivVarName() string

func (*Field) PubVarName

func (m *Field) PubVarName() string

func (*Field) SafeName

func (m *Field) SafeName() string

special chars replaced with _

type Flag

type Flag struct {
	Name    string      `json:"name" yaml:"name"`
	Options interface{} `json:"options" yaml:"options"`
}

func (*Flag) GetFlag

func (m *Flag) GetFlag() string

type FlagParamEnumsSchema

type FlagParamEnumsSchema struct {
	Value       string `json:"value" yaml:"value"`
	Description string `json:"description" yaml:"description"`
}

type FlagParamSchema

type FlagParamSchema struct {
	Name        string                 `json:"name" yaml:"name"`
	Description string                 `json:"description" yaml:"description"`
	DataType    string                 `json:"data_type" yaml:"data_type"`
	ParamsEnums []FlagParamEnumsSchema `json:"param_enums" yaml:"param_enums"`
	Options     string                 `json:"options" yaml:"options"`
}

type FlagSchema

type FlagSchema struct {
	FieldFlag       bool              `json:"field_flag" yaml:"field_flag"`
	Name            string            `json:"name" yaml:"name"`
	Description     string            `json:"description" yaml:"description"`
	Params          []FlagParamSchema `json:"params" yaml:"params"`
	Example         string            `json:"example" yaml:"example"`
	OptionsRequired bool              `json:"options_required" yaml:"options_required"`
}

type RootSchema

type RootSchema struct {
	ProjectNameSpace string   `json:"name_space" yaml:"name_space"`
	Resources        []string `json:"resources" yaml:"resources"`
	Schemas          []Schema `json:"schemas" yaml:"schemas"`
}

func LoadScheme

func LoadScheme(scheme_path string) (*RootSchema, error)

type Schema

type Schema struct {
	Name      string   `json:"name" yaml:"name"`
	Templates []string `json:"templates" yaml:"templates"`
	Flags     []Flag   `json:"flags" yaml:"flags"`
	Fields    []Field  `json:"fields" yaml:"fields"`
	ReadOnly  []Field  `json:"read_only" yaml:"read_only"`
}

func (*Schema) DisplayName

func (m *Schema) DisplayName() string

func (*Schema) FlagExists

func (m *Schema) FlagExists(flag string) bool

func (*Schema) FuncName

func (m *Schema) FuncName() string

func (*Schema) GetConstructors

func (m *Schema) GetConstructors() []Field

func (*Schema) GetFieldsByFlag

func (m *Schema) GetFieldsByFlag(flag string) []Field

func (*Schema) GetFlagParam

func (m *Schema) GetFlagParam(flag string, param_index int) string

func (*Schema) GetOpt

func (m *Schema) GetOpt(flag string) interface{}

func (*Schema) GetPrimaryKeys

func (m *Schema) GetPrimaryKeys() []Field

func (*Schema) NoFlag

func (m *Schema) NoFlag(flag string) bool

func (*Schema) OptExists

func (m *Schema) OptExists(flag string) bool

func (*Schema) PrivVarName

func (m *Schema) PrivVarName() string

func (*Schema) PubVarName

func (m *Schema) PubVarName() string

func (*Schema) SafeName

func (m *Schema) SafeName() string

special chars replaced with _

type Template

type Template struct {
	Name              string       `json:"name" yaml:"name"`
	Description       string       `json:"description" yaml:"description"`
	TemplateFile      string       `json:"template_file" yaml:"template_file"`
	Output            string       `json:"output" yaml:"output"`
	NameSpace         string       `json:"name_space" yaml:"name_space"`
	ProcessTemplate   bool         `json:"process_template" yaml:"process_template"`
	SchemaTemplate    bool         `json:"schema_template" yaml:"schema_template"`
	DependsOn         []string     `json:"depends_on" yaml:"depends_on"`
	InjectTag         string       `json:"inject_tag" yaml:"inject_tag"`
	Backup            bool         `json:"backup" yaml:"backup"`
	RegisterSingleton string       `json:"register_singleton" yaml:"register_singleton"`
	RegisterRoute     string       `json:"register_route" yaml:"register_route"`
	Flags             []FlagSchema `json:"flags" yaml:"flags"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL