# Package org.eclipse.rdf4j.query.algebra.evaluation.impl

- Interface Summary
  Interface | Description
  --- | ---
  QueryEvaluationContext | A QueryEvaluationContext stores values and methods that are valid throughout the lifetime of a query execution.

- Class Summary
  Class | Description
  --- | ---
  AbstractEvaluationStrategyFactory | Abstract base class for `ExtendedEvaluationStrategy`.
  ArrayBindingBasedQueryEvaluationContext |
  BindingAssigner | Assigns values to variables based on a supplied set of bindings.
  BindingAssigner.VarVisitor |
  BindingSetAssignmentInliner | Optimizes a query model by inlining `BindingSetAssignment` values where possible.
  CompareOptimizer | A query optimizer that replaces `Compare` operators with `SameTerm`s, if possible.
  CompareOptimizer.CompareVisitor |
  ConjunctiveConstraintSplitter | Splits conjunctive constraints into seperate constraints.
  ConjunctiveConstraintSplitter.ConstraintVisitor |
  ConstantOptimizer | A query optimizer that optimizes constant value expressions.
  DisjunctiveConstraintOptimizer | A query optimizer that optimize disjunctive constraints on tuple expressions.
  DisjunctiveConstraintOptimizer.OrSameTermOptimizer |
  EvaluationStatistics | Supplies various query model statistics to the query engine/optimizer.
  EvaluationStatistics.CardinalityCalculator |
  EvaluationStrategyImpl | Deprecated. since 4.0.
  ExtendedEvaluationStrategy | SPARQL 1.1 extended query evaluation strategy.
  ExtendedEvaluationStrategyFactory |
  ExtensionQueryEvaluationStep |
  FilterOptimizer | Optimizes a query model by pushing `Filter`s as far down in the model tree as possible.
  FilterOptimizer.DeMergeFilterFinder |
  FilterOptimizer.FilterFinder |
  FilterOptimizer.FilterRelocator |
  FilterOptimizer.MergeFilterFinder |
  IterativeEvaluationOptimizer |
  IterativeEvaluationOptimizer.IEOVisitor |
  OrderLimitOptimizer | Moves the Order node above the Projection when variables are projected.
  OrderLimitOptimizer.OrderOptimizer |
  ParentReferenceCleaner | Cleans up `QueryModelNode.getParentNode()` references that have become inconsistent with the actual algebra tree structure due to optimization operations.
  ProjectionRemovalOptimizer | If a projection node in the algebra does not contribute or change the results it can be removed from the tree.
  QueryEvaluationContext.Minimal |
  QueryJoinOptimizer | A query optimizer that re-orders nested Joins.
  QueryModelNormalizer | A query optimizer that (partially) normalizes query models to a canonical form.
  QueryModelPruner | Deprecated. Replaced by `QueryModelNormalizer`.
  QueryModelPruner.TreeSanitizer |
  RegexAsStringFunctionOptimizer | A query optimizer that replaces REGEX with `FunctionCall`s that are equivalent operators
  SameTermFilterOptimizer | A query optimizer that embeds `Filter`s with `SameTerm` operators in statement patterns as much as possible.
  SameTermFilterOptimizer.BindingSetAssignmentCollector |
  SameTermFilterOptimizer.SameTermFilterVisitor |
  SameTermFilterOptimizer.VarBinder |
  SameTermFilterOptimizer.VarRenamer |
  SimpleEvaluationStrategy | Deprecated. renamed to `StrictEvaluationStrategy`.
  StandardQueryOptimizerPipeline | A standard pipeline with the default `QueryOptimizer`s that will be used by `StrictEvaluationStrategy` and its subclasses, unless specifically overridden.
  StrictEvaluationStrategy | Minimally-conforming SPARQL 1.1 Query Evaluation strategy, to evaluate one `TupleExpr` on the given `TripleSource`, optionally using the given `Dataset`.
  StrictEvaluationStrategyFactory |
  TupleFunctionEvaluationStatistics |
  TupleFunctionEvaluationStatistics.TupleFunctionCardinalityCalculator |
  TupleFunctionEvaluationStrategy | An `EvaluationStrategy` that has support for `TupleFunction`s.
  UnionScopeChangeOptimizer | Inspect Union clauses to check if scope change can be avoided (allowing injection of pre-bound vars into union arguments).