Interface ShadowChainNode<S,I>
-
public interface ShadowChainNode<S,I>
AShadowChain
viewed as individual nodes. This offers a lower level API asShadowChain
.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description ShadowChain<S,I>
asChain()
@Nullable ShadowChainNode<S,I>
getParent()
Returns the next node in the chain.NameResolver<S>
getResolver()
Returns the resolver for this node.boolean
isShadowBarrier()
Returns true if this group shadows the next groups in the chain.OptionalBool
knowsSymbol(String name)
Returns whether this node knows the given symbol (without asking the parents).default List<S>
resolveHere(String simpleName)
WrapsgetResolver()
.resolveHere()
, may do additional stuff like caching.
-
-
-
Method Detail
-
isShadowBarrier
boolean isShadowBarrier()
Returns true if this group shadows the next groups in the chain. This means, that if this group knows about a name, it won't delegate resolve to the next group in the chain. If it doesn't know about it then resolve proceeds anyway.
-
getParent
@Nullable ShadowChainNode<S,I> getParent()
Returns the next node in the chain. Returns null if this is the root.
-
getResolver
NameResolver<S> getResolver()
Returns the resolver for this node.
-
resolveHere
default List<S> resolveHere(String simpleName)
WrapsgetResolver()
.resolveHere()
, may do additional stuff like caching.
-
knowsSymbol
OptionalBool knowsSymbol(String name)
Returns whether this node knows the given symbol (without asking the parents).
-
asChain
ShadowChain<S,I> asChain()
-
-