Documentation ¶
Overview ¶
Package kcl defines the top-level interface for KCL.
Index ¶
- func GetFullSchemaType(pathList []string, schemaName string, opts ...Option) ([]*gpyrpc.KclType, error)
- func GetSchemaType(file, code, schemaName string) ([]*gpyrpc.KclType, error)
- func GetSchemaTypeMapping(file, code, schemaName string) (map[string]*gpyrpc.KclType, error)
- type KCLResult
- type KCLResultList
- func (p *KCLResultList) First() KCLResult
- func (p *KCLResultList) Get(i int) KCLResult
- func (p *KCLResultList) GetRawJsonResult() string
- func (p *KCLResultList) GetRawYamlResult() string
- func (p *KCLResultList) Len() int
- func (p *KCLResultList) Slice() []KCLResult
- func (p *KCLResultList) Tail() KCLResult
- func (p *KCLResultList) ToBool() (*bool, error)
- func (p *KCLResultList) ToFloat64() (*float64, error)
- func (p *KCLResultList) ToList() ([]interface{}, error)
- func (p *KCLResultList) ToMap() (map[string]interface{}, error)
- func (p *KCLResultList) ToString() (string, error)
- func (p *KCLResultList) ToType(target interface{}) error
- type KclType
- type Option
- func NewOption() *Option
- func ParseArgs(pathList []string, opts ...Option) (Option, error)
- func WithCode(codes ...string) Option
- func WithDisableNone(disableNone bool) Option
- func WithExternalPkgs(key_value_list ...string) Option
- func WithIncludeSchemaTypePath(includeSchemaTypePath bool) Option
- func WithKFilenames(filenames ...string) Option
- func WithLogger(l io.Writer) Option
- func WithOptions(key_value_list ...string) Option
- func WithOverrides(override_list ...string) Option
- func WithOverridesError(override_list ...string) (Option, error)
- func WithPrintOverridesAST(printOverrideAst bool) Option
- func WithSelectors(selectors ...string) Option
- func WithSettings(filename string) Option
- func WithSortKeys(sortKeys bool) Option
- func WithWorkDir(s string) Option
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetFullSchemaType ¶ added in v0.7.0
Types ¶
type KCLResult ¶
type KCLResult map[string]interface{}
func (KCLResult) JSONString ¶
func (KCLResult) YAMLString ¶
type KCLResultList ¶
type KCLResultList struct {
// contains filtered or unexported fields
}
func MustRun ¶
func MustRun(path string, opts ...Option) *KCLResultList
func RunWithOpts ¶
func RunWithOpts(opts ...Option) (*KCLResultList, error)
RunWithOpts is the same as Run, but it does not require a path as input. Note: you need to specify the path in options by method WithKFilenameList() or the workdir in method WorkDir(), or it will return an error.
func (*KCLResultList) First ¶
func (p *KCLResultList) First() KCLResult
func (*KCLResultList) Get ¶
func (p *KCLResultList) Get(i int) KCLResult
func (*KCLResultList) GetRawJsonResult ¶
func (p *KCLResultList) GetRawJsonResult() string
func (*KCLResultList) GetRawYamlResult ¶
func (p *KCLResultList) GetRawYamlResult() string
func (*KCLResultList) Len ¶
func (p *KCLResultList) Len() int
func (*KCLResultList) Slice ¶
func (p *KCLResultList) Slice() []KCLResult
func (*KCLResultList) Tail ¶
func (p *KCLResultList) Tail() KCLResult
func (*KCLResultList) ToBool ¶ added in v0.7.2
func (p *KCLResultList) ToBool() (*bool, error)
ToBool returns the result as bool.
func (*KCLResultList) ToFloat64 ¶ added in v0.7.2
func (p *KCLResultList) ToFloat64() (*float64, error)
ToFloat64 returns the result as float64.
func (*KCLResultList) ToList ¶ added in v0.7.2
func (p *KCLResultList) ToList() ([]interface{}, error)
ToList returns the result as []interface{}.
func (*KCLResultList) ToMap ¶ added in v0.7.2
func (p *KCLResultList) ToMap() (map[string]interface{}, error)
ToMap returns the result as map[string]interface{}.
func (*KCLResultList) ToString ¶ added in v0.7.2
func (p *KCLResultList) ToString() (string, error)
ToString returns the result as string.
func (*KCLResultList) ToType ¶ added in v0.7.2
func (p *KCLResultList) ToType(target interface{}) error
ToType returns the result as target type.
type Option ¶
type Option struct { *gpyrpc.ExecProgram_Args Err error // contains filtered or unexported fields }
func WithExternalPkgs ¶
kcl -E aaa=/xx/xxx/aaa main.k
func WithIncludeSchemaTypePath ¶ added in v0.5.4
WithIncludeSchemaTypePath returns a Option which hold a include schema type path switch.
func WithKFilenames ¶
func WithLogger ¶ added in v0.7.0
func WithOverrides ¶
kcl -O pkgpath:path.to.field=field_value kcl -O pkgpath.path.to.field-
func WithOverridesError ¶ added in v0.7.0
kcl -O pkgpath:path.to.field=field_value kcl -O pkgpath.path.to.field-
func WithPrintOverridesAST ¶
func WithSelectors ¶ added in v0.7.0
kcl -S path.to.field