trees
Imports
Procs
proc cyclicTree(n: PNode): bool {...}{.raises: [], tags: [].}
- Source Edit
proc exprStructuralEquivalent(a, b: PNode; strictSymEquality = false): bool {...}{. raises: [], tags: [].}
- Source Edit
proc sameTree(a, b: PNode): bool {...}{.raises: [], tags: [].}
- Source Edit
proc getMagic(op: PNode): TMagic {...}{.raises: [], tags: [].}
- Source Edit
proc isConstExpr(n: PNode): bool {...}{.raises: [], tags: [].}
- Source Edit
proc isCaseObj(n: PNode): bool {...}{.raises: [], tags: [].}
- Source Edit
proc isDeepConstExpr(n: PNode; preventInheritance = false): bool {...}{.raises: [], tags: [].}
- Source Edit
proc isRange(n: PNode): bool {...}{.inline, raises: [], tags: [].}
- Source Edit
proc whichPragma(n: PNode): TSpecialWord {...}{.raises: [], tags: [].}
- Source Edit
proc isNoSideEffectPragma(n: PNode): bool {...}{.raises: [], tags: [].}
- Source Edit
proc findPragma(n: PNode; which: TSpecialWord): PNode {...}{.raises: [], tags: [].}
- Source Edit
proc effectSpec(n: PNode; effectType: TSpecialWord): PNode {...}{.raises: [], tags: [].}
- Source Edit
proc propSpec(n: PNode; effectType: TSpecialWord): PNode {...}{.raises: [], tags: [].}
- Source Edit
proc flattenStmts(n: PNode): PNode {...}{.raises: [], tags: [].}
- Source Edit
proc extractRange(k: TNodeKind; n: PNode; a, b: int): PNode {...}{.raises: [], tags: [].}
- Source Edit
proc isTrue(n: PNode): bool {...}{.raises: [], tags: [].}
- Source Edit
proc getRoot(n: PNode): PSym {...}{.raises: [], tags: [].}
-
getRoot
takes a pathn
. A path is an lvalue expression likeobj.x[i].y
. The root of a path is the symbol that can be determined as the owner;obj
in the example. Source Edit proc stupidStmtListExpr(n: PNode): bool {...}{.raises: [], tags: [].}
- Source Edit
proc dontInlineConstant(orig, cnst: PNode): bool {...}{.inline, raises: [], tags: [].}
- Source Edit
© 2006–2021 Andreas Rumpf
Licensed under the MIT License.
https://nim-lang.org/docs/compiler/trees.html