Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- proc handleSetSeq(oId: NimNode, pnId: NimNode, sId: NimNode, name: string, dtype: NimNode): NimNode =
- let
- seqKind = dtype.nodeToVal().strVal
- fieldName = ident(name)
- eceId = ident"e"
- bnId = ident"b"
- var forBody = newStmtList()
- case seqKind
- of "floatVal":
- forBody.add quote do:
- `bnId`.add nkFloatLit.newFloatNode(val)
- of "intVal":
- forBody.add quote do:
- `bnId`.add nkIntLit.newIntNode(val)
- of "strVal":
- forBody.add quote do:
- `bnId`.add nkStrLit.newStrNode(val)
- forBody.add quote do:
- `eceId`.add `bnId`
- result = quote do:
- var `eceId` = nkExprColonExpr.newTree(
- newSymNode(`sId`),
- )
- var `bnId` = nkBracket.newTree()
- forBody = quote do:
- for val in `oid`.`fieldName`:
- `forBody`
- result.add quote do:
- `pnId`.add `eceId`
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement