12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- package interpreter
- import "devt.de/krotik/ecal/parser"
- type trueRuntime struct {
- *baseRuntime
- }
- func trueRuntimeInst(erp *ECALRuntimeProvider, node *parser.ASTNode) parser.Runtime {
- return &trueRuntime{newBaseRuntime(erp, node)}
- }
- func (rt *trueRuntime) Eval(vs parser.Scope, is map[string]interface{}, tid uint64) (interface{}, error) {
- _, err := rt.baseRuntime.Eval(vs, is, tid)
- return true, err
- }
- type falseRuntime struct {
- *baseRuntime
- }
- func falseRuntimeInst(erp *ECALRuntimeProvider, node *parser.ASTNode) parser.Runtime {
- return &falseRuntime{newBaseRuntime(erp, node)}
- }
- func (rt *falseRuntime) Eval(vs parser.Scope, is map[string]interface{}, tid uint64) (interface{}, error) {
- _, err := rt.baseRuntime.Eval(vs, is, tid)
- return false, err
- }
- type nullRuntime struct {
- *baseRuntime
- }
- func nullRuntimeInst(erp *ECALRuntimeProvider, node *parser.ASTNode) parser.Runtime {
- return &nullRuntime{newBaseRuntime(erp, node)}
- }
- func (rt *nullRuntime) Eval(vs parser.Scope, is map[string]interface{}, tid uint64) (interface{}, error) {
- _, err := rt.baseRuntime.Eval(vs, is, tid)
- return nil, err
- }
|