public class ScopedBlockNode extends BlockNode implements IScopedNode
IContainerNode.ContainerType
Modifier and Type | Field and Description |
---|---|
protected ASScope |
scope
The scope associated with this block
|
EMPTY_CONTAINER
emptyNodeArray, parent
UNKNOWN
Constructor and Description |
---|
ScopedBlockNode()
Constructor.
|
ScopedBlockNode(boolean compressChildrenOnNormalization)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
protected void |
analyze(EnumSet<PostProcessStep> set,
ASScope scope,
Collection<ICompilerProblem> problems) |
void |
getAllImportNodes(Collection<IImportNode> importNodes)
Returns all the imports that are relevant in the current scope.
|
void |
getAllImports(Collection<String> imports)
Returns all the imports that are relevant in the current scope.
|
ASScope |
getASScope()
Get the scope this Node uses for name resolution as an ASScope.
|
IASScope |
getScope()
Get the scope associated with this node as an IASScope
|
protected void |
optimizeChildren(Object newChildren)
Sets our children to an optimized version of newChildren.
|
Collection<ICompilerProblem> |
runPostProcess(EnumSet<PostProcessStep> set) |
Collection<ICompilerProblem> |
runPostProcess(EnumSet<PostProcessStep> set,
ASScope containingScope) |
void |
setScope(ASScope scope)
Attaches this node to the scope that has been created for it.
|
getNodeID, replaceChild
addItem, addItemAfterNormalization, addTemporaryItem, buildInnerString, contains, getContainerType, getRemovedConditionalCompileNode, removeItem, removeTemporaryItem, setContainerType, setRemovedConditionalCompileNode
addChild, addChild, addChildInOrder, addChildPostNormalize, addTemporaryChild, getChild, getChildCount, getInitialChildCount, normalize, removeAllChildren, removeChild, removeTemporaryChild, sortChildren, swapChildren
buildStringRecursive, canContinueContainmentSearch, collectImportNodes, combineAttributes, connectedToProjectScope, endAfter, endAfter, endBefore, endBefore, fillInOffsets, getAbsoluteEnd, getAbsoluteStart, getAncestorOfType, getContainingFilePath, getContainingNode, getContainingScope, getEnd, getFileScope, getFileSpecification, getInnerString, getNodeKind, getPackageName, getParent, getScopeNode, getSpanningStart, getStart, getSucceedingNode, getWorkspace, isTerminal, isTransparent, looselyContains, setChildren, setParent, span, span, span, startAfter, startAfter, startBefore, startBefore, toString, tryGetOffsetLookup, verify
getColumn, getEndColumn, getEndLine, getLine, getLineColumnString, getOffsetsString, getSourcePath, getSourcePathString, setColumn, setEnd, setEndColumn, setEndLine, setLine, setSourceLocation, setSourcePath, setStart, span, span
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
contains, getAncestorOfType, getChild, getChildCount, getContainingNode, getContainingScope, getFileSpecification, getNodeID, getPackageName, getParent, getSpanningStart, getSucceedingNode, isTerminal
getAbsoluteEnd, getAbsoluteStart, getColumn, getEnd, getEndColumn, getEndLine, getLine, getSourcePath, getStart
protected ASScope scope
public ScopedBlockNode()
public ScopedBlockNode(boolean compressChildrenOnNormalization)
This variant is used by FunctionContentsPart
.
compressChildrenOnNormalization
- False if
optimizeChildren(Object)
should be skipped during
normalize(boolean)
.public ASScope getASScope()
NodeBase
getASScope
in class NodeBase
public IASScope getScope()
BlockNode
getScope
in interface IScopedNode
getScope
in class BlockNode
public Collection<ICompilerProblem> runPostProcess(EnumSet<PostProcessStep> set, ASScope containingScope)
runPostProcess
in class NodeBase
protected void analyze(EnumSet<PostProcessStep> set, ASScope scope, Collection<ICompilerProblem> problems)
protected final void optimizeChildren(Object newChildren)
TreeNode
optimizeChildren
in class TreeNode
public void getAllImportNodes(Collection<IImportNode> importNodes)
IScopedNode
getAllImportNodes
in interface IScopedNode
importNodes
- an array of IImportNode
representing all the
importspublic void getAllImports(Collection<String> imports)
IScopedNode
getAllImports
in interface IScopedNode
imports
- an array of Strings representing all the importspublic Collection<ICompilerProblem> runPostProcess(EnumSet<PostProcessStep> set)
Copyright © 2016 The Apache Software Foundation. All rights reserved.