Compare commits
2 Commits
4d94a7ad59
...
8ab2c28343
Author | SHA1 | Date | |
---|---|---|---|
8ab2c28343 | |||
c4a2fcce3d |
10
README.adoc
10
README.adoc
@ -58,6 +58,8 @@ A few examples to get started.
|
||||
|
||||
[source,go]
|
||||
----
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"strings"
|
||||
@ -213,7 +215,7 @@ Currently, boolean operations are evaluated using _short cut evaluation_. This m
|
||||
#TODO: List operations#
|
||||
|
||||
=== Variables
|
||||
#TODO: List operations#
|
||||
#TODO: variables#
|
||||
|
||||
=== Other operations
|
||||
|
||||
@ -307,13 +309,13 @@ The table below shows all supported operators by decreasing priorities.
|
||||
=== Functions
|
||||
|
||||
==== Function calls
|
||||
#TODO: List operations#
|
||||
#TODO: function calls operations#
|
||||
|
||||
==== Function definitions
|
||||
#TODO: List operations#
|
||||
#TODO: function definitions operations#
|
||||
|
||||
==== Builtins
|
||||
#TODO: List operations#
|
||||
#TODO: builtins#
|
||||
|
||||
|
||||
|
||||
|
@ -19,16 +19,16 @@ func EvalString(ctx ExprContext, source string) (result any, err error) {
|
||||
return
|
||||
}
|
||||
|
||||
type EvalArg struct {
|
||||
type Arg struct {
|
||||
name string
|
||||
value any
|
||||
}
|
||||
|
||||
func EvalStringA(source string, args ...EvalArg) (result any, err error) {
|
||||
func EvalStringA(source string, args ...Arg) (result any, err error) {
|
||||
return EvalStringV(source, args)
|
||||
}
|
||||
|
||||
func EvalStringV(source string, args []EvalArg) (result any, err error) {
|
||||
func EvalStringV(source string, args []Arg) (result any, err error) {
|
||||
ctx := NewSimpleFuncStore()
|
||||
for _, arg := range args {
|
||||
if isFunc(arg.value) {
|
||||
|
@ -24,7 +24,7 @@ func subtract(ctx ExprContext, name string, args []any) (result any, err error)
|
||||
func TestEvalStringA(t *testing.T) {
|
||||
|
||||
source := `a + b * subtract(4,2)`
|
||||
args := []EvalArg{
|
||||
args := []Arg{
|
||||
{"a", uint8(1)},
|
||||
{"b", int8(2)},
|
||||
{"subtract", FuncTemplate(subtract)},
|
||||
|
Loading…
Reference in New Issue
Block a user