Class TwoGeometries.WithArgument<R,G>
java.lang.Object
org.apache.sis.internal.filter.Node
org.apache.sis.internal.filter.sqlmm.SpatialFunction<R>
org.apache.sis.internal.filter.sqlmm.TwoGeometries<R,G>
org.apache.sis.internal.filter.sqlmm.TwoGeometries.WithArgument<R,G>
- All Implemented Interfaces:
Serializable, Function<R,Object>, Expression<R, Object>, Optimization.OnExpression<R, Object>, FeatureExpression<R, Object>
- Enclosing class:
TwoGeometries<R,G>
SQLMM spatial functions taking a single geometry operand with one argument.
- Since:
- 1.1
- Version:
- 1.3
-
Nested Class Summary
Nested classes/interfaces inherited from class TwoGeometries
TwoGeometries.WithArgument<R,G> -
Field Summary
FieldsModifier and TypeFieldDescription(package private) final Expression<? super R, ?> The first argument after the geometries.private static final longFor cross-version compatibility.Fields inherited from class TwoGeometries
geometry1, geometry2Fields inherited from class SpatialFunction
operation -
Constructor Summary
ConstructorsConstructorDescriptionWithArgument(SQLMM operation, Expression<? super R, ?>[] parameters, Geometries<G> library) Creates a new function for geometries represented by the given parameter. -
Method Summary
Modifier and TypeMethodDescriptionEvaluates the two first expressions as geometry objects, applies the operation and returns the result.List<Expression<? super R, ?>> Returns the sub-expressions that will be evaluated to provide the parameters to the function.recreate(Expression<? super R, ?>[] effective) Creates a new expression of the same type than this expression, but with an optimized geometry.Methods inherited from class TwoGeometries
getGeometryLibrary, optimizeMethods inherited from class SpatialFunction
expectedType, getChildren, getFunctionName, getSyntax, getValueClass, toValueTypeMethods inherited from class Node
createName, createType, equals, getGeometryLibrary, hashCode, symbol, toGeometryWrapper, toString, unwrap, warning
-
Field Details
-
serialVersionUID
private static final long serialVersionUIDFor cross-version compatibility.- See Also:
-
argument
The first argument after the geometries.
-
-
Constructor Details
-
WithArgument
WithArgument(SQLMM operation, Expression<? super R, ?>[] parameters, Geometries<G> library) Creates a new function for geometries represented by the given parameter.
-
-
Method Details
-
recreate
Creates a new expression of the same type than this expression, but with an optimized geometry. The optimization may be a geometry computed immediately if all operator parameters are literals.- Specified by:
recreatein interfaceOptimization.OnExpression<R,G> - Overrides:
recreatein classTwoGeometries<R,G> - Parameters:
effective- the expressions to use as a replacement of this expression parameters.- Returns:
- the new expression, or
thisif unsupported.
-
getParameters
Returns the sub-expressions that will be evaluated to provide the parameters to the function.- Specified by:
getParametersin interfaceExpression<R,G> - Overrides:
getParametersin classTwoGeometries<R,G> - Returns:
- the sub-expressions to be evaluated, or an empty list if none.
-
apply
Evaluates the two first expressions as geometry objects, applies the operation and returns the result.- Specified by:
applyin interfaceExpression<R,G> - Specified by:
applyin interfaceFunction<R,G> - Overrides:
applyin classTwoGeometries<R,G> - Parameters:
input- the object to be evaluated by the expression. Can benullif this expression allows null values.- Returns:
- value computed by the expression.
-