Interface | Description |
---|---|
ControlFlowAnalyzer.DependencyRecorder |
A callback for recording control-flow dependencies as they are discovered.
|
JavaToJavaScriptMap |
A map between chunks of JavaScript to chunks of Java.
|
JsniRefLookup.ErrorReporter |
A callback used to indicate the reason for a failed JSNI lookup.
|
Class | Description |
---|---|
ArrayNormalizer |
Replace array accesses and instantiations with calls to the Array class.
|
AssertionNormalizer |
Replaces all assertion statements in the AST with if statements.
|
AssertionRemover |
Removes all assertion statements from the AST.
|
AstDumper |
A simple utility to dump a JProgram to a temp file, which can be called
sequentially during a compilation/optimization run, so intermediate steps can
be compared.
|
AutoboxUtils |
Utilities for managing autoboxing of Java primitive types.
|
CastNormalizer |
Replace cast and instanceof operations with calls to the Cast class.
|
CatchBlockNormalizer |
Merge multi-catch blocks into a single catch block that uses instanceof tests
to determine which user block to run.
|
CloneExpressionVisitor |
A general purpose expression cloner.
|
CompoundAssignmentNormalizer |
Replace problematic compound assignments with a sequence of simpler
operations, all of which are either simple assignments or are non-assigning
operations.
|
ControlFlowAnalyzer |
This class finds out what code in a program is live based on starting
execution at a specified location.
|
DeadCodeElimination |
Removes certain kinds of dead code, and simplifies certain expressions.
|
DeadCodeElimination.FindBreakContinueStatementsVisitor |
Examines code to find out whether it contains any break or continue
statements.
|
EnumOrdinalizer |
This optimizer replaces enum constants with their ordinal value (a simple
int) when possible.
|
EnumOrdinalizer.Tracker |
A simple Tracker class for compiling lists of enum classes processed by
this optimizer.
|
EqualityNormalizer |
Rewrite Java
== so that it will execute correctly in JavaScript. |
ExpressionAnalyzer |
Analyzes an expression and make a number of static analysis flags available
based on the information available solely through the expression.
|
Finalizer |
Finds all items are effectively final.
|
FixAssignmentsToUnboxOrCast |
Most autoboxing is handled by
GenerateJavaAST . |
GenerateJavaScriptAST |
Creates a JavaScript AST from a
JProgram node. |
GenerateJavaScriptLiterals |
Translates Java literals into JavaScript literals.
|
GwtAstBuilder |
Constructs a GWT Java AST from a single isolated compilation unit.
|
HandleCrossFragmentReferences |
Rewrite JavaScript to better handle references from one code fragment to
another.
|
HasNameSort |
Comparator for
HasName instances. |
ImplementClassLiteralsAsFields |
Create fields to represent the mechanical implementation of class literals.
|
ImplicitUpcastAnalyzer |
This class will identify instances of an implicit upcast between
non-primitive types, and call the overridable processImplicitUpcast method.
|
JavaAndJavaScript |
A Java program, a JavaScript program, and a map between them.
|
JModVisitorWithTemporaryVariableCreation |
A JModVisitor capable of creating temporary local variables and placing their declarations in an
appropriate preceding place.
|
JsAbstractTextTransformer |
Base class for transforming program text.
|
JsFunctionClusterer |
Re-orders function declarations according to a given metric and clustering
algorithm in order to boost gzip/deflation compression efficiency.
|
JsIEBlockTextTransformer |
Limits top-level blocks to MAX_BLOCK_SIZE statements.
|
JsniRefLookup | Deprecated
find alternatives, only a couple of corner cases use this now.
|
JsoDevirtualizer |
All call sites that might result in virtual dispatch to a JSO must be
rewritten to force static dispatch.
|
LongCastNormalizer |
Synthesize explicit casts to and from the primitive long type where such a
cast would have been implicit.
|
LongEmulationNormalizer |
Replaces long operations with calls to the emulation library.
|
MakeCallsStatic |
This is an interesting "optimization".
|
MethodCallTightener |
Update polymorphic method calls to tighter bindings based on the type of the
qualifier.
|
MethodInliner |
Inline methods that can be inlined.
|
OptimizerStats |
Stores statistics on the results of running an optimizer pass.
|
PostOptimizationCompoundAssignmentNormalizer |
Normalize compound assignments as needed after optimization.
|
Pruner |
Remove globally unreferenced classes, interfaces, methods, parameters, and
fields from the AST.
|
ReboundTypeRecorder |
Records all rebinds in an AST that has not been unified.
|
RecordRebinds |
Records all live rebinds.
|
ReferenceMapper |
Creates unresolved references to types, fields, and methods.
|
RemoveEmptySuperCalls |
Removes calls to no-op super constructors.
|
RemoveEmptySuperCalls.EmptySuperCallVisitor |
Removes calls to no-op super constructors.
|
ReplaceGetClassOverrides |
Prune all overrides of Object.getClass() except when the enclosing class is JavaScriptObject
(to permit getClass() devirtualization in JsoDevirtualizer to continue to work).
|
ResolveRebinds |
Replaces any "GWT.create()" calls with a new expression for the actual result
of the deferred binding decision.
|
SameParameterValueOptimizer |
Detects when same literal is passed as parameter value, and uses literal
instead of parameter.
|
Simplifier |
Methods that both construct and try to simplify AST nodes.
|
SourceGenerationVisitor |
Generates Java source from our AST.
|
SourceInfoCorrelator |
Fix up SOYC parents and add correlations.
|
TextOutputVisitor |
A convenience base class that combines a
JVisitor with a
TextOutput . |
ToStringGenerationVisitor |
Implements a reasonable toString() for all JNodes.
|
TypeRemapper |
A visitor that changes all JType references in the AST.
|
TypeTightener |
The purpose of this pass is to record "type flow" information and then use
the information to infer places where "tighter" (that is, more specific)
types can be inferred for locals, fields, parameters, and method return
types.
|
UnifyAst |
Take independently-compiled types and merge them into a single AST.
|
VerifySymbolMap |
Verify the validity of the symbol.
|
Copyright © 2018. All rights reserved.