Skip to content

Commit ad35736

Browse files
committed
feat: add "$expand-macro" macro
1 parent 89370fb commit ad35736

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

dsl/op/expand_macro.go

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
package op
2+
3+
import (
4+
"context"
5+
6+
"github.com/vim-volt/volt/dsl/types"
7+
)
8+
9+
func init() {
10+
s := expandMacroOp("$expand-macro")
11+
ExpandMacroOp = &s
12+
macroMap[string(*ExpandMacroOp)] = ExpandMacroOp
13+
}
14+
15+
type expandMacroOp string
16+
17+
// ExpandMacroOp is "$expand-macro" operation
18+
var ExpandMacroOp *expandMacroOp
19+
20+
// String returns "$expand-macro"
21+
func (*expandMacroOp) String() string {
22+
return string(*ArrayOp)
23+
}
24+
25+
// Execute executes "$expand-macro" operation
26+
func (*expandMacroOp) Expand(args []types.Value) (types.Value, func(), error) {
27+
if err := signature(types.AnyValue).check(args); err != nil {
28+
return nil, noRollback, err
29+
}
30+
return args[0].Eval(context.Background())
31+
}

0 commit comments

Comments
 (0)