Class CompositeExpression
java.lang.Object
com.github.zafarkhaja.semver.expr.CompositeExpression
- All Implemented Interfaces:
Expression
This class implements internal DSL for the
SemVer Expressions using fluent interface.
- Since:
- 0.9.0
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
A class with static helper methods. -
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionConstructs aCompositeExpression
with an underlyingExpression
. -
Method Summary
Modifier and TypeMethodDescriptionand
(Expression expr) Adds anotherExpression
toCompositeExpression
usingAnd
logical expression.boolean
Interprets the expression.boolean
Interprets the expression.or
(Expression expr) Adds anotherExpression
toCompositeExpression
usingOr
logical expression.
-
Field Details
-
exprTree
The underlying expression tree.
-
-
Constructor Details
-
CompositeExpression
Constructs aCompositeExpression
with an underlyingExpression
.- Parameters:
expr
- the underlying expression
-
-
Method Details
-
and
Adds anotherExpression
toCompositeExpression
usingAnd
logical expression.- Parameters:
expr
- an expression to add- Returns:
- this
CompositeExpression
-
or
Adds anotherExpression
toCompositeExpression
usingOr
logical expression.- Parameters:
expr
- an expression to add- Returns:
- this
CompositeExpression
-
interpret
Interprets the expression.- Parameters:
version
- aVersion
string to interpret against- Returns:
- the result of the expression interpretation
- Throws:
IllegalArgumentException
- if the input string isNULL
or emptyParseException
- when invalid version string is providedUnexpectedCharacterException
- is a special case ofParseException
-
interpret
Interprets the expression.- Specified by:
interpret
in interfaceExpression
- Parameters:
version
- the version to interpret against- Returns:
- the result of the expression interpretation
-