Documentation
¶
Index ¶
- func Loader(path string) ([]byte, error)
- type EnvSettings
- type ModuleRegistry
- type OnReadyCallback
- type Program
- func (instance *Program) Close()
- func (instance *Program) Execute() (response string, err error)
- func (instance *Program) HasLogger() bool
- func (instance *Program) Logger(logger ...gg_.ILogger) gg_.ILogger
- func (instance *Program) Run(methods ...*ProgramMethod) (response interface{}, err error)
- func (instance *Program) RunSequence(methods ...*ProgramMethod) (response interface{}, err error)
- type ProgramMethod
- type ScriptEngine
- func (instance *ScriptEngine) AddTool(name string, tool tools.ScriptingTool) error
- func (instance *ScriptEngine) Close()
- func (instance *ScriptEngine) Get(name string) goja.Value
- func (instance *ScriptEngine) GetLogger() gg_log.ILogger
- func (instance *ScriptEngine) GetMember(value goja.Value, fieldName string) goja.Value
- func (instance *ScriptEngine) GetMemberAsCallable(value goja.Value, fieldName string) goja.Callable
- func (instance *ScriptEngine) GetRootContextValue(name string) goja.Value
- func (instance *ScriptEngine) HasMember(value goja.Value, fieldName string) bool
- func (instance *ScriptEngine) NewArrayBuffer(data []byte) goja.ArrayBuffer
- func (instance *ScriptEngine) NewObject() *goja.Object
- func (instance *ScriptEngine) NewTypeError(args ...interface{}) *goja.Object
- func (instance *ScriptEngine) Open()
- func (instance *ScriptEngine) RunProgram(name, program string) (goja.Value, error)
- func (instance *ScriptEngine) RunScript(program string) (goja.Value, error)
- func (instance *ScriptEngine) Runtime() *goja.Runtime
- func (instance *ScriptEngine) Set(name string, value interface{})
- func (instance *ScriptEngine) SetLogger(logger gg_log.ILogger)
- func (instance *ScriptEngine) SetRootContextValue(name string, value interface{}) error
- func (instance *ScriptEngine) SetToolContext(toolName string, value interface{})
- func (instance *ScriptEngine) SetToolsContext(value interface{})
- func (instance *ScriptEngine) ToObject(value goja.Value) *goja.Object
- func (instance *ScriptEngine) ToValue(value interface{}) goja.Value
- type ScriptingHelper
- func (instance *ScriptingHelper) Build(env *EnvSettings) (response *Program, err error)
- func (instance *ScriptingHelper) EvalJs(expression string, useGlobalRuntime, overwriteContext bool, ...) (interface{}, error)
- func (instance *ScriptingHelper) NewEngine(name ...interface{}) *ScriptEngine
- func (instance *ScriptingHelper) NewProgramMethod(name string, arguments ...interface{}) *ProgramMethod
- func (instance *ScriptingHelper) Run(env *EnvSettings, methods ...*ProgramMethod) (response interface{}, err error)
- func (instance *ScriptingHelper) RunFile(filename string, context map[string]interface{}, args ...interface{}) (response string, err error)
- func (instance *ScriptingHelper) RunMethod(env *EnvSettings, method string, args ...interface{}) (response interface{}, err error)
- func (instance *ScriptingHelper) RunProgram(programName string, script string, context map[string]interface{}, ...) (response string, err error)
- func (instance *ScriptingHelper) RunSequence(env *EnvSettings, methods ...*ProgramMethod) (response interface{}, err error)
- func (instance *ScriptingHelper) RunWithStringResponse(env *EnvSettings, methods ...*ProgramMethod) (response string, err error)
- func (instance *ScriptingHelper) SetLogger(logger gg_log.ILogger)
- func (instance *ScriptingHelper) ValidateEnv(env *EnvSettings) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type EnvSettings ¶
type ModuleRegistry ¶
type ModuleRegistry struct {
// contains filtered or unexported fields
}
func NewModuleRegistry ¶
func NewModuleRegistry(loader require.SourceLoader) *ModuleRegistry
func (*ModuleRegistry) Start ¶
func (instance *ModuleRegistry) Start(engine *ScriptEngine) *commons.RuntimeContext
type OnReadyCallback ¶
type OnReadyCallback func(rtContext *commons.RuntimeContext)
type Program ¶
type Program struct {
// contains filtered or unexported fields
}
func NewProgram ¶
func NewProgram(env *EnvSettings) (instance *Program, err error)
func (*Program) Run ¶
func (instance *Program) Run(methods ...*ProgramMethod) (response interface{}, err error)
Run run the program and invoke a specific method passing params
func (*Program) RunSequence ¶
func (instance *Program) RunSequence(methods ...*ProgramMethod) (response interface{}, err error)
type ProgramMethod ¶
type ProgramMethod struct { Name string Arguments []interface{} }
func NewProgramMethod ¶
func NewProgramMethod(name string, arguments ...interface{}) *ProgramMethod
func (*ProgramMethod) Add ¶
func (instance *ProgramMethod) Add(arguments ...interface{}) *ProgramMethod
type ScriptEngine ¶
type ScriptEngine struct { Root string Name string Silent bool // if enabled do not log at console output but only on files LogLevel gg_log.Level LogFile string ResetLogOnEachRun bool AllowMultipleLoggers bool // contains filtered or unexported fields }
func NewJsEngine ¶
func NewJsEngine() *ScriptEngine
func (*ScriptEngine) AddTool ¶
func (instance *ScriptEngine) AddTool(name string, tool tools.ScriptingTool) error
func (*ScriptEngine) Close ¶
func (instance *ScriptEngine) Close()
func (*ScriptEngine) GetLogger ¶
func (instance *ScriptEngine) GetLogger() gg_log.ILogger
func (*ScriptEngine) GetMemberAsCallable ¶
func (*ScriptEngine) GetRootContextValue ¶
func (instance *ScriptEngine) GetRootContextValue(name string) goja.Value
func (*ScriptEngine) HasMember ¶
func (instance *ScriptEngine) HasMember(value goja.Value, fieldName string) bool
func (*ScriptEngine) NewArrayBuffer ¶
func (instance *ScriptEngine) NewArrayBuffer(data []byte) goja.ArrayBuffer
func (*ScriptEngine) NewObject ¶
func (instance *ScriptEngine) NewObject() *goja.Object
func (*ScriptEngine) NewTypeError ¶
func (instance *ScriptEngine) NewTypeError(args ...interface{}) *goja.Object
func (*ScriptEngine) Open ¶
func (instance *ScriptEngine) Open()
func (*ScriptEngine) RunProgram ¶
func (instance *ScriptEngine) RunProgram(name, program string) (goja.Value, error)
func (*ScriptEngine) RunScript ¶
func (instance *ScriptEngine) RunScript(program string) (goja.Value, error)
func (*ScriptEngine) Runtime ¶
func (instance *ScriptEngine) Runtime() *goja.Runtime
func (*ScriptEngine) Set ¶
func (instance *ScriptEngine) Set(name string, value interface{})
func (*ScriptEngine) SetLogger ¶
func (instance *ScriptEngine) SetLogger(logger gg_log.ILogger)
func (*ScriptEngine) SetRootContextValue ¶
func (instance *ScriptEngine) SetRootContextValue(name string, value interface{}) error
func (*ScriptEngine) SetToolContext ¶
func (instance *ScriptEngine) SetToolContext(toolName string, value interface{})
func (*ScriptEngine) SetToolsContext ¶
func (instance *ScriptEngine) SetToolsContext(value interface{})
func (*ScriptEngine) ToObject ¶
func (instance *ScriptEngine) ToObject(value goja.Value) *goja.Object
func (*ScriptEngine) ToValue ¶
func (instance *ScriptEngine) ToValue(value interface{}) goja.Value
type ScriptingHelper ¶
type ScriptingHelper struct {
// contains filtered or unexported fields
}
var Scripting *ScriptingHelper
func (*ScriptingHelper) Build ¶
func (instance *ScriptingHelper) Build(env *EnvSettings) (response *Program, err error)
func (*ScriptingHelper) EvalJs ¶
func (instance *ScriptingHelper) EvalJs(expression string, useGlobalRuntime, overwriteContext bool, context ...map[string]interface{}) (interface{}, error)
func (*ScriptingHelper) NewEngine ¶
func (instance *ScriptingHelper) NewEngine(name ...interface{}) *ScriptEngine
func (*ScriptingHelper) NewProgramMethod ¶
func (instance *ScriptingHelper) NewProgramMethod(name string, arguments ...interface{}) *ProgramMethod
func (*ScriptingHelper) Run ¶
func (instance *ScriptingHelper) Run(env *EnvSettings, methods ...*ProgramMethod) (response interface{}, err error)
func (*ScriptingHelper) RunFile ¶
func (instance *ScriptingHelper) RunFile(filename string, context map[string]interface{}, args ...interface{}) (response string, err error)
func (*ScriptingHelper) RunMethod ¶
func (instance *ScriptingHelper) RunMethod(env *EnvSettings, method string, args ...interface{}) (response interface{}, err error)
func (*ScriptingHelper) RunProgram ¶
func (*ScriptingHelper) RunSequence ¶
func (instance *ScriptingHelper) RunSequence(env *EnvSettings, methods ...*ProgramMethod) (response interface{}, err error)
RunSequence run a sequence of methods passing response of previous to next method
func (*ScriptingHelper) RunWithStringResponse ¶
func (instance *ScriptingHelper) RunWithStringResponse(env *EnvSettings, methods ...*ProgramMethod) (response string, err error)
func (*ScriptingHelper) SetLogger ¶
func (instance *ScriptingHelper) SetLogger(logger gg_log.ILogger)
func (*ScriptingHelper) ValidateEnv ¶
func (instance *ScriptingHelper) ValidateEnv(env *EnvSettings) error
Click to show internal directories.
Click to hide internal directories.