package template import "gopkg.in/Knetic/govaluate.v3" type Position struct { X *Value Y *Value Rotation *Value } func (p Position) evaluate( params govaluate.MapParameters, funcs map[string]govaluate.ExpressionFunction, ) (x, y, rotation float64, err error) { x, err = p.X.Evaluate(params, funcs) if err != nil { return 0, 0, 0, err } y, err = p.Y.Evaluate(params, funcs) if err != nil { return 0, 0, 0, err } rotation, err = p.Rotation.Evaluate(params, funcs) if err != nil { return 0, 0, 0, err } return }