java.lang.Object
swim.structure.Item
swim.structure.Value
swim.structure.Expression
A combination of operators, constants, and variables. Every
Item
in the data model can be evaluated
against
a scope. An Expression
is some Value
that, when evaluated,
may yield a different value than the Expression
itself. Note that
this is a stricter definition than that of a logical expression; for example,
the number 2
is a valid expression, but it is not an Expression
.
An Expression
can be either a Selector
or an Operator
.
A Selector
references specific attributes of a model instance. An
Operator
identifies an operation on constants, variables, or
Selector
expressions. Together, these form a foundation for building
expression languages that can both manipulate and read structured objects.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbitwiseAnd
(Item that) bitwiseAnd
(Value that) bitwiseXor
(Item that) bitwiseXor
(Value that) conditional
(Item thenTerm, Item elseTerm) conditional
(Value thenTerm, Value elseTerm) inverse()
negative()
not()
positive()
Methods inherited from class swim.structure.Value
absent, alias, body, booleanValue, booleanValue, branch, builder, byteValue, byteValue, charValue, charValue, commit, contains, containsKey, containsKey, containsValue, doubleValue, doubleValue, empty, extant, flattened, floatValue, floatValue, fromObject, get, get, getAttr, getAttr, getField, getField, getItem, getSlot, getSlot, head, header, headers, integerValue, integerValue, intValue, intValue, isAliased, isDefined, isDefinite, isDistinct, isMutable, key, keyEquals, lambda, length, longValue, longValue, numberValue, numberValue, removed, removed, shortValue, shortValue, stringValue, stringValue, tag, tail, target, toValue, unflattened
Methods inherited from class swim.structure.Item
appended, appended, appended, appended, appended, appended, appended, appended, cast, cast, coerce, coerce, compareTo, concat, debug, display, equals, evaluate, evaluate, filter, filter, globalScope, hashCode, invoke, isConstant, iterator, max, min, precedence, prepended, prepended, prepended, prepended, prepended, prepended, prepended, prepended, substitute, substitute, toString, typeOrder, updated, updated, updated, updated, updated, updated, updated, updated, updated, updated, updated, updated, updated, updated, updatedAttr, updatedAttr, updatedAttr, updatedAttr, updatedAttr, updatedAttr, updatedAttr, updatedAttr, updatedAttr, updatedAttr, updatedAttr, updatedAttr, updatedAttr, updatedAttr, updatedSlot, updatedSlot, updatedSlot, updatedSlot, updatedSlot, updatedSlot, updatedSlot, updatedSlot, updatedSlot, updatedSlot, updatedSlot, updatedSlot, updatedSlot, updatedSlot
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Constructor Details
-
Expression
public Expression()
-
-
Method Details
-
conditional
- Overrides:
conditional
in classValue
-
conditional
- Overrides:
conditional
in classValue
-
or
-
or
-
and
-
and
-
bitwiseOr
-
bitwiseOr
-
bitwiseXor
- Overrides:
bitwiseXor
in classValue
-
bitwiseXor
- Overrides:
bitwiseXor
in classValue
-
bitwiseAnd
- Overrides:
bitwiseAnd
in classValue
-
bitwiseAnd
- Overrides:
bitwiseAnd
in classValue
-
lt
-
lt
-
le
-
le
-
eq
-
eq
-
ne
-
ne
-
ge
-
ge
-
gt
-
gt
-
plus
-
plus
-
minus
-
minus
-
times
-
times
-
divide
-
divide
-
modulo
-
modulo
-
not
-
bitwiseNot
- Overrides:
bitwiseNot
in classValue
-
negative
-
positive
-
inverse
-