Class Scope<T>
- java.lang.Object
-
- software.amazon.smithy.rulesengine.language.eval.Scope<T>
-
- Type Parameters:
T- The type of values in scope.
public final class Scope<T> extends java.lang.ObjectScope is a stack for tracking facts for named values of type T.
-
-
Constructor Summary
Constructors Constructor Description Scope()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description TexpectValue(Identifier name)static Scope<Value>fromNode(Node node)java.util.Optional<java.util.Map.Entry<Identifier,T>>getDeclaration(Identifier name)java.util.Optional<T>getValue(Identifier name)<U> UinScope(java.util.function.Supplier<U> func)voidinsert(java.lang.String name, T value)voidinsert(Identifier name, T value)booleanisNonNull(Reference reference)voidpop()voidpush()voidsetNonNull(Reference name)java.lang.StringtoString()
-
-
-
Method Detail
-
push
public void push()
-
pop
public void pop()
-
insert
public void insert(java.lang.String name, T value)
-
insert
public void insert(Identifier name, T value)
-
setNonNull
public void setNonNull(Reference name)
-
inScope
public <U> U inScope(java.util.function.Supplier<U> func)
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
isNonNull
public boolean isNonNull(Reference reference)
-
expectValue
public T expectValue(Identifier name) throws InnerParseError
- Throws:
InnerParseError
-
getDeclaration
public java.util.Optional<java.util.Map.Entry<Identifier,T>> getDeclaration(Identifier name)
-
getValue
public java.util.Optional<T> getValue(Identifier name)
-
-