| Package | Description |
|---|---|
| org.apache.calcite.linq4j.tree |
Object model for Java expressions.
|
| Modifier and Type | Class and Description |
|---|---|
private static class |
BlockBuilder.InlineVariableVisitor
Inline Variable Visitor.
|
private static class |
BlockBuilder.SubstituteVariableVisitor
Substitute Variable Visitor.
|
class |
ClassDeclarationFinder
Entry point for optimizers that factor ou deterministic expressions to
final static fields.
|
class |
DeterministicCodeOptimizer
Factors out deterministic expressions to final static fields.
|
class |
OptimizeShuttle
Shuttle that optimizes expressions.
|
| Modifier and Type | Field and Description |
|---|---|
private static Shuttle |
BlockBuilder.OPTIMIZE_SHUTTLE |
| Modifier and Type | Method and Description |
|---|---|
protected Shuttle |
BlockBuilder.createFinishingOptimizeShuttle()
Creates a final optimization shuttle.
|
protected Shuttle |
BlockBuilder.createOptimizeShuttle()
Creates a shuttle that will be used during block optimization.
|
Shuttle |
Shuttle.preVisit(BinaryExpression binaryExpression) |
Shuttle |
Shuttle.preVisit(BlockStatement blockStatement) |
Shuttle |
Shuttle.preVisit(ClassDeclaration classDeclaration) |
Shuttle |
ClassDeclarationFinder.preVisit(ClassDeclaration classDeclaration)
Creates optimizer local to the newly generated class.
|
Shuttle |
Shuttle.preVisit(ConditionalStatement conditionalStatement) |
Shuttle |
Shuttle.preVisit(ConstructorDeclaration constructorDeclaration) |
Shuttle |
Shuttle.preVisit(DeclarationStatement declarationStatement) |
Shuttle |
Shuttle.preVisit(FieldDeclaration fieldDeclaration) |
Shuttle |
Shuttle.preVisit(ForEachStatement forEachStatement) |
Shuttle |
Shuttle.preVisit(ForStatement forStatement) |
Shuttle |
Shuttle.preVisit(FunctionExpression functionExpression) |
Shuttle |
Shuttle.preVisit(GotoStatement gotoStatement) |
Shuttle |
Shuttle.preVisit(IndexExpression indexExpression) |
Shuttle |
Shuttle.preVisit(MemberExpression memberExpression) |
Shuttle |
Shuttle.preVisit(MethodCallExpression methodCallExpression) |
Shuttle |
Shuttle.preVisit(MethodDeclaration methodDeclaration) |
Shuttle |
Shuttle.preVisit(NewArrayExpression newArrayExpression) |
Shuttle |
Shuttle.preVisit(NewExpression newExpression) |
Shuttle |
ClassDeclarationFinder.preVisit(NewExpression newExpression)
Creates optimizer local to the newly generated anonymous class.
|
Shuttle |
Shuttle.preVisit(TernaryExpression ternaryExpression) |
Shuttle |
Shuttle.preVisit(ThrowStatement throwStatement) |
Shuttle |
Shuttle.preVisit(TryStatement tryStatement) |
Shuttle |
Shuttle.preVisit(TypeBinaryExpression typeBinaryExpression) |
Shuttle |
Shuttle.preVisit(UnaryExpression unaryExpression) |
Shuttle |
Shuttle.preVisit(WhileStatement whileStatement) |
| Modifier and Type | Method and Description |
|---|---|
ForEachStatement |
ForEachStatement.accept(Shuttle shuttle) |
Expression |
MemberInitExpression.accept(Shuttle shuttle) |
Expression |
FunctionExpression.accept(Shuttle shuttle) |
Expression |
DefaultExpression.accept(Shuttle shuttle) |
MemberDeclaration |
MethodDeclaration.accept(Shuttle shuttle) |
BlockStatement |
BlockStatement.accept(Shuttle shuttle) |
Node |
Node.accept(Shuttle shuttle) |
Statement |
GotoStatement.accept(Shuttle shuttle) |
Expression |
MemberExpression.accept(Shuttle shuttle) |
Statement |
WhileStatement.accept(Shuttle shuttle) |
abstract Statement |
Statement.accept(Shuttle shuttle) |
Statement |
SwitchStatement.accept(Shuttle shuttle) |
Expression |
ConstantExpression.accept(Shuttle shuttle) |
Expression |
UnaryExpression.accept(Shuttle shuttle) |
Expression |
BinaryExpression.accept(Shuttle visitor) |
Expression |
NewExpression.accept(Shuttle shuttle) |
Statement |
TryStatement.accept(Shuttle shuttle) |
Statement |
ThrowStatement.accept(Shuttle shuttle) |
Expression |
IndexExpression.accept(Shuttle shuttle) |
MemberDeclaration |
ConstructorDeclaration.accept(Shuttle shuttle) |
Node |
AbstractNode.accept(Shuttle shuttle) |
Expression |
TypeBinaryExpression.accept(Shuttle shuttle) |
Expression |
ParameterExpression.accept(Shuttle shuttle) |
Statement |
ConditionalStatement.accept(Shuttle shuttle) |
Expression |
InvocationExpression.accept(Shuttle shuttle) |
ClassDeclaration |
ClassDeclaration.accept(Shuttle shuttle) |
abstract MemberDeclaration |
MemberDeclaration.accept(Shuttle shuttle) |
Expression |
TernaryExpression.accept(Shuttle shuttle) |
Expression |
DynamicExpression.accept(Shuttle shuttle) |
LabelStatement |
LabelStatement.accept(Shuttle shuttle) |
ForStatement |
ForStatement.accept(Shuttle shuttle) |
MemberDeclaration |
FieldDeclaration.accept(Shuttle shuttle) |
Expression |
NewArrayExpression.accept(Shuttle shuttle) |
abstract Expression |
Expression.accept(Shuttle shuttle) |
Expression |
LambdaExpression.accept(Shuttle shuttle) |
Expression |
ListInitExpression.accept(Shuttle shuttle) |
Expression |
MethodCallExpression.accept(Shuttle shuttle) |
DeclarationStatement |
DeclarationStatement.accept(Shuttle shuttle) |
(package private) static <T extends Expression> |
Expressions.accept(T node,
Shuttle shuttle) |
(package private) static <T extends Statement> |
Expressions.accept(T node,
Shuttle shuttle) |
(package private) static List<DeclarationStatement> |
Expressions.acceptDeclarations(List<DeclarationStatement> declarations,
Shuttle shuttle) |
(package private) static List<Expression> |
Expressions.acceptExpressions(List<Expression> expressions,
Shuttle shuttle) |
(package private) static List<MemberDeclaration> |
Expressions.acceptMemberDeclarations(List<MemberDeclaration> memberDeclarations,
Shuttle shuttle) |
(package private) static List<Node> |
Expressions.acceptNodes(List<Node> nodes,
Shuttle shuttle) |
(package private) static List<Expression> |
Expressions.acceptParameterExpressions(List<ParameterExpression> parameterExpressions,
Shuttle shuttle) |
(package private) static List<Statement> |
Expressions.acceptStatements(List<Statement> statements,
Shuttle shuttle) |
private boolean |
BlockBuilder.optimize(Shuttle optimizer,
boolean performInline)
Optimizes the list of statements.
|
Copyright © 2012–2023 The Apache Software Foundation. All rights reserved.