some identier exported; new file import-utils.go

This commit is contained in:
2024-06-06 05:31:35 +02:00
parent 8144122d2c
commit c100cf349d
17 changed files with 186 additions and 170 deletions
+10 -10
View File
@@ -48,7 +48,7 @@ type golangFunctor struct {
f FuncTemplate
}
func newGolangFunctor(f FuncTemplate) *golangFunctor {
func NewGolangFunctor(f FuncTemplate) *golangFunctor {
return &golangFunctor{f: f}
}
@@ -83,7 +83,7 @@ func (functor *exprFunctor) Invoke(ctx ExprContext, name string, args []any) (re
if funcArg, ok := arg.(Functor); ok {
// ctx.RegisterFunc(p, functor, 0, -1)
paramSpecs := funcArg.GetParams()
ctx.RegisterFunc(p.Name(), funcArg, typeAny, paramSpecs)
ctx.RegisterFunc(p.Name(), funcArg, TypeAny, paramSpecs)
} else {
ctx.UnsafeSetVar(p.Name(), arg)
}
@@ -99,8 +99,8 @@ func (functor *exprFunctor) Invoke(ctx ExprContext, name string, args []any) (re
type paramFlags uint16
const (
pfOptional paramFlags = 1 << iota
pfRepeat
PfOptional paramFlags = 1 << iota
PfRepeat
)
type funcParamInfo struct {
@@ -109,15 +109,15 @@ type funcParamInfo struct {
defaultValue any
}
func newFuncParam(name string) ExprFuncParam {
func NewFuncParam(name string) ExprFuncParam {
return &funcParamInfo{name: name}
}
func newFuncParamFlag(name string, flags paramFlags) ExprFuncParam {
func NewFuncParamFlag(name string, flags paramFlags) ExprFuncParam {
return &funcParamInfo{name: name, flags: flags}
}
func newFuncParamFlagDef(name string, flags paramFlags, defValue any) *funcParamInfo {
func NewFuncParamFlagDef(name string, flags paramFlags, defValue any) *funcParamInfo {
return &funcParamInfo{name: name, flags: flags, defaultValue: defValue}
}
@@ -130,11 +130,11 @@ func (param *funcParamInfo) Type() string {
}
func (param *funcParamInfo) IsOptional() bool {
return (param.flags & pfOptional) != 0
return (param.flags & PfOptional) != 0
}
func (param *funcParamInfo) IsRepeat() bool {
return (param.flags & pfRepeat) != 0
return (param.flags & PfRepeat) != 0
}
func (param *funcParamInfo) DefaultValue() any {
@@ -226,7 +226,7 @@ func (info *funcInfo) ToString(opt FmtOpt) string {
if len(info.returnType) > 0 {
sb.WriteString(info.returnType)
} else {
sb.WriteString(typeAny)
sb.WriteString(TypeAny)
}
sb.WriteString(" {<body>}")
return sb.String()