Merge pull request #1565 from gradha/pr_supports_nnkPostfix_stringification
Adds stringification support for nnkPostfix nodes.
This commit is contained in:
commit
e7edd9e64e
1 changed files with 5 additions and 1 deletions
|
|
@ -621,12 +621,16 @@ proc `body=`*(someProc: PNimrodNode, val: PNimrodNode) {.compileTime.} =
|
||||||
else:
|
else:
|
||||||
badNodeKind someProc.kind, "body="
|
badNodeKind someProc.kind, "body="
|
||||||
|
|
||||||
|
proc basename*(a: PNimrodNode): PNimrodNode {.compiletime.}
|
||||||
|
|
||||||
|
|
||||||
proc `$`*(node: PNimrodNode): string {.compileTime.} =
|
proc `$`*(node: PNimrodNode): string {.compileTime.} =
|
||||||
## Get the string of an identifier node
|
## Get the string of an identifier node
|
||||||
case node.kind
|
case node.kind
|
||||||
of nnkIdent:
|
of nnkIdent:
|
||||||
result = $node.ident
|
result = $node.ident
|
||||||
|
of nnkPostfix:
|
||||||
|
result = $node.basename.ident & "*"
|
||||||
of nnkStrLit..nnkTripleStrLit:
|
of nnkStrLit..nnkTripleStrLit:
|
||||||
result = node.strVal
|
result = node.strVal
|
||||||
else:
|
else:
|
||||||
|
|
@ -669,7 +673,7 @@ proc insert*(a: PNimrodNode; pos: int; b: PNimrodNode) {.compileTime.} =
|
||||||
a[i + 1] = a[i]
|
a[i + 1] = a[i]
|
||||||
a[pos] = b
|
a[pos] = b
|
||||||
|
|
||||||
proc basename*(a: PNimrodNode): PNimrodNode {.compiletime.} =
|
proc basename*(a: PNimrodNode): PNimrodNode =
|
||||||
## Pull an identifier from prefix/postfix expressions
|
## Pull an identifier from prefix/postfix expressions
|
||||||
case a.kind
|
case a.kind
|
||||||
of nnkIdent: return a
|
of nnkIdent: return a
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue