Class Value
java.lang.Object
software.amazon.smithy.rulesengine.language.evaluation.value.Value
- All Implemented Interfaces:
FromSourceLocation,ToNode
- Direct Known Subclasses:
ArrayValue,BooleanValue,EmptyValue,EndpointValue,IntegerValue,RecordValue,StringValue
An abstract representing a typed value.
-
Method Summary
Modifier and TypeMethodDescriptionstatic ArrayValuearrayValue(List<Value> value) Creates anArrayValuefrom a list of values.static BooleanValuebooleanValue(boolean value) Creates aBooleanValuefrom a boolean.static EmptyValueCreates anEmptyValue.static EndpointValueendpointValue(Node source) Creates anEndpointValuefrom a node.Returns the current value as anArrayValue, throwingRuntimeExceptionwhen the value is the wrong type.Returns the current value as aBooleanValue, throwingRuntimeExceptionwhen the value is the wrong type.Returns the current value as anEndpointValue, throwingRuntimeExceptionwhen the value is the wrong type.Returns the current value as anIntegerValue, throwingRuntimeExceptionwhen the value is the wrong type.Returns the current value as aRecordValue, throwingRuntimeExceptionwhen the value is the wrong type.Returns the current value as aStringValue, throwingRuntimeExceptionwhen the value is the wrong type.static ValueCreates aValueof a specific type from the given Node information.Gets the source location of a value.abstract TypegetType()static IntegerValueintegerValue(int value) Creates anIntegerValuefrom an integer.booleanisEmpty()booleanisTruthy()static RecordValuerecordValue(Map<Identifier, Value> value) Creates aRecordValuefrom a map of identifiers to values.static StringValuestringValue(String value) Creates aStringValuefrom a string.abstract ObjecttoObject()
-
Method Details
-
getType
-
isTruthy
public boolean isTruthy() -
fromNode
Creates aValueof a specific type from the given Node information.- Parameters:
source- the node to deserialize.- Returns:
- the created Value.
-
isEmpty
public boolean isEmpty() -
getSourceLocation
Description copied from interface:FromSourceLocationGets the source location of a value.- Specified by:
getSourceLocationin interfaceFromSourceLocation- Returns:
- Returns the source location of the value.
-
arrayValue
Creates anArrayValuefrom a list of values.- Parameters:
value- the list of values for the array.- Returns:
- returns the created ArrayValue.
-
booleanValue
Creates aBooleanValuefrom a boolean.- Parameters:
value- the value for the boolean.- Returns:
- returns the created BooleanValue.
-
emptyValue
Creates anEmptyValue.- Returns:
- returns the created EmptyValue.
-
endpointValue
Creates anEndpointValuefrom a node.- Parameters:
source- the node to create an endpoint from.- Returns:
- returns the created EndpointValue.
-
integerValue
Creates anIntegerValuefrom an integer.- Parameters:
value- the value for the integer.- Returns:
- returns the created IntegerValue.
-
recordValue
Creates aRecordValuefrom a map of identifiers to values.- Parameters:
value- the map to create a record from.- Returns:
- returns the created RecordValue.
-
stringValue
Creates aStringValuefrom a string.- Parameters:
value- the value for the string.- Returns:
- returns the created StringValue.
-
expectArrayValue
Returns the current value as anArrayValue, throwingRuntimeExceptionwhen the value is the wrong type.- Returns:
- returns an array value.
-
expectBooleanValue
Returns the current value as aBooleanValue, throwingRuntimeExceptionwhen the value is the wrong type.- Returns:
- returns a boolean value.
-
expectEndpointValue
Returns the current value as anEndpointValue, throwingRuntimeExceptionwhen the value is the wrong type.- Returns:
- returns an endpoint value
-
expectIntegerValue
Returns the current value as anIntegerValue, throwingRuntimeExceptionwhen the value is the wrong type.- Returns:
- returns an integer value.
-
expectRecordValue
Returns the current value as aRecordValue, throwingRuntimeExceptionwhen the value is the wrong type.- Returns:
- returns a record value.
-
expectStringValue
Returns the current value as aStringValue, throwingRuntimeExceptionwhen the value is the wrong type.- Returns:
- returns a string value.
-
toObject
-