All Classes and Interfaces
Class
Description
An abstract compiler, to help remove the circular dependency of
passes on JSCompiler.
Abstract message formatter providing default behavior for implementations
of
MessageFormatter
needing a SourceExcerptProvider
.A scope that just returns null for everything.
All the exceptions that can be returned as error to the client of the API.
A minimal graph interface.
All type, representing all values.
Object that has an annotation.
Information that can be annotated to a
GraphNode
or
Graph.GraphEdge
.Strategies for how to do naming of anonymous functions that occur as
r-values in assignments and variable declarations.
An error manager that pipes warnings and errors properly into the Ant
task infrastructure.
Helper methods for making assertions about the validity of types.
This class walks the AST and validates that the structure is correct.
A utility class for working with Base64 values.
A basic error manager that sorts all errors and warnings reported to it to
generate a sorted report when the
BasicErrorManager.generateReport()
method
is called.A set in the domain {true,false}.
Boolean type.
An implementation of a
WarningsGuard
that can modify the
CheckLevel
based on the file that caused the warning, and whether
this file matches a set of paths (specified either as include or exclude
of path name parts).A pass the uses a
DefinitionProvider
to compute a call graph for an
AST.Implements the ECMAScript 5
Canonicalize operation
used to specify how case-insensitive regular expressions match.
Chainable reverse abstract interpreter providing basic functionality.
Controls checking levels of certain options.
Enum used in flags to control the behavior of JS compiler checks.
This describes the Closure-specific JavaScript coding conventions.
A function that will throw an exception when if the value is not
an instanceof a specific type.
A reverse abstract interpreter (RAI) for specific closure patterns such as
goog.isDef
.CodingConvention defines a set of hooks to customize the behavior of the
Compiler for a specific team/company.
A function that will throw an exception when either:
-One or more of its parameters evaluate to false.
Delegates provides a mechanism and structure for identifying where classes
can call out to optional code to augment their functionality.
An object literal cast provides a mechanism to cast object literals to
other types without a warning.
Helper classes for dealing with coding conventions.
A convention that wraps another.
CommandLineRunner translates flags into Java API calls on the Compiler.
A CompilationLevel represents the level of optimization that should be
applied when compiling JavaScript code.
Compiler (and the other classes in this package) does the following:
parses JS code
checks for undefined variables
performs optimizations such as constant folding and constants inlining
renames variables (to short names)
outputs compact JavaScript code
External variables are declared in 'externs' files.
Stores a buffer of text to which more can be appended.
Stores the internal compiler state just before optimization is performed.
A class for the internal representation of an input to the compiler.
Compiler options
A Role Specific Interface for the JS Compiler to report aliases used to
change the code during a compile.
A Role Specific Interface for JS Compiler that represents a data holder
object which is used to store goog.scope alias code changes to code made
during a compile.
When to do the extra sanity checks
Interface for classes that can compile JS.
This class implements a simple Ant task to do almost the same as
CommandLineRunner.
WarningsGuard that represents just a chain of other guards.
Configuration for the AST factory.
Interface used by
ReplaceCssNames
to substitute CSS class names.Custom pass type.
Pass factories and meta-data for native JSCompiler passes.
A data structure for JS dependency information for a single .js file.
Options for how to manage dependencies between input files.
A parser that can extract dependency information from existing deps.js files.
Generates deps.js files by scanning JavaScript files for
calls to goog.provide(), goog.require() and goog.addDependency().
Group a set of related diagnostic types together, so that they can
be toggled on and off as one unit.
Named groups of DiagnosticTypes exposed by Compiler.
Sets the level for a particular DiagnosticGroup.
The type of a compile or analysis error.
A generic directed graph.
A generic directed graph edge.
A generic directed graph node.
DotFormatter prints out a dot file of the Abstract Syntax Tree.
An implementation of MessageBundle that has no translations.
The type of individual elements of an enum type
(see
EnumType
).An enum type representing a branded collection of elements.
Enum of all the possible error described in the Web Service protocol.
Error formats available.
The error handler is any generic sink for warnings and errors,
after they've passed through any filtering
WarningsGuard
s.Represents possible error levels for JsonML errors.
The error manager is in charge of storing, organizing and displaying
errors and warnings generated by the compiler.
This is interface defines a protocol for the reporting of
errors during JavaScript translation or execution.
A CleanupPass implementation that will remove all field declarations on
JSTypes contributed by the original file.
Represents a position in a source file.
Records all of the symbols and properties that should be exported.
Context holding the node references required for generating the export
calls.
A utility class for doing fixed-point computations.
A symbol table for inferring types during data flow analysis.
A builder class for function and arrow types.
Protobuf type
jscomp.FunctionInformationMap
Protobuf type
jscomp.FunctionInformationMap
Protobuf type
jscomp.FunctionInformationMap.Entry
Protobuf type
jscomp.FunctionInformationMap.Entry
Protobuf type
jscomp.FunctionInformationMap.Module
Protobuf type
jscomp.FunctionInformationMap.Module
A builder for the Rhino Node representing Function parameters.
This derived type provides extended information about a function, including
its return type and argument types.
This describes the Google-specific JavaScript coding conventions.
An
JsMessage.IdGenerator
designed to play nicely with Google's Translation
systems.The base generic class for graph-like data structure and algorithms in
the compiler.
A generic edge.
Annotates the graph with a color in a way that no connected node will have
the same color.
Greedily assign nodes with high degree unique colors.
A generic node.
Prunes a graph, creating a new graph with nodes removed.
Computes all the reachable nodes.
Represents Source Node, Edge and Destination Node.
A graph that can be dumped to a Graphviz DOT file.
A Graphviz edge.
A Graphviz node.
Interface for compiler passes that can be used in a hot-swap fashion.
InlineProperties attempts to find references to properties that are known to
be constants and inline the known value.
An id used uniquely identify a CompilerInput
Protobuf type
jscomp.Instrumentation
Protobuf type
jscomp.Instrumentation
An AST construction helper class
This describes the jQuery specific JavaScript coding conventions.
Generates an AST for a JavaScript source file.
JSDoc information describing JavaScript code.
Defines a class for containing the parsing information
for this JSDocInfo.
A piece of information (found in a marker) which contains a position
with a name node.
A piece of information (found in a marker) which contains a position
with a string.
A piece of information (found in a marker) which contains a position
with a type expression syntax tree.
Visibility categories.
A builder for
JSDocInfo
objects.A parser for JSDoc comments.
Compile error description
Base class for classes that parse JavaScript sources on a line-by-line basis.
A parser that can extract goog.require() and goog.provide() dependency
information from a .js file.
A parser that can extract dependency information from a .js file.
A representation of a translatable message in JavaScript source code.
Contains functionality for creating JS messages.
A reference to a placeholder in a translatable message.
Message style that could be used for JS code parsing.
Extracts messages and message comments from JS code.
A JavaScript module has a unique name, consists of a list of compiler inputs,
and can depend on other modules.
A
JSModule
dependency graph that assigns a depth to each module and
can answer depth-related queries about them.Class which represents JsonML element according to the specification at
"http://code.google.com/p/es-lab/wiki/JsonMLASTFormat"
Generates an AST from a JsonML source file.
Class used to represent errors which correspond to JsonML elements.
JsonMLUtil contains utilities for the JsonML object.
Deprecated.
JSSourceFile is an empty wrapper around SourceFile.
Represents JavaScript value types.
Represents a type expression as a miniature Rhino AST, so that the
type expression can be evaluated later.
Constants corresponding to types that are built into a JavaScript engine
and other types that occur very often in the type system.
The type registry is used to resolve named types.
The type registry has three modes, which control how type ASTs are
converted to types in
JSTypeRegistry.createFromTypeNodes(com.google.javascript.rhino.Node, java.lang.String, com.google.javascript.rhino.jstype.StaticScope<com.google.javascript.rhino.jstype.JSType>)
.A lattice element.
Lightweight message formatter.
A directed graph using linked list within nodes to store edge information.
An undirected graph using linked list within nodes to store edge
information.
An error manager that logs errors and warnings using a logger in addition to
collecting them in memory.
A scope based on a simple hashmap.
Maps a position on a given line to the mapping describing
the original code.
Maps a position on a given line to the mapping describing
the original code.
Protobuf type
sourcemap.OriginalMapping
Protobuf type
sourcemap.OriginalMapping
An interface for providing alternative values for user-visible messages in
JavaScript code.
Format warnings and errors.
A visitor implementation that enables type substitutions.
This class implements the root of the intermediate representation.
Iterator to go up the ancestor tree.
A helper class for getting and setting the side-effect flags.
NodeTraversal allows an iteration through the nodes in the parse tree,
and facilitates the optimizations on the parse tree.
Abstract callback to visit a pruned set of nodes.
Abstract callback to visit all nodes in post order.
Abstract scoped callback to visit all nodes in post order.
Abstract callback to visit all nodes but not traverse into function
bodies.
Abstract callback to visit all structure and statement nodes but doesn't
traverse into functions or expressions.
Callback
Callback that also knows about scope changes
NodeUtil contains generally useful AST utilities.
The bottom Object type, representing the subclass of all objects.
Bottom type, representing the subclass of any value or object.
An error reporter which consumes all calls and performs no actions.
Null type.
Number type.
Rewrites
new goog.testing.ObjectPropertyString(foo, 'bar')
to
new JSCompiler_ObjectPropertyString(window, foo.bar)
.Object type.
Holds results of parsing.
Pass factories and meta-data for native Compiler passes.
Intermediate state for a running pass configuration.
A factory for creating JSCompiler passes based on the Options
injected.
Utility methods for manipulation of UNIX-like paths.
A pass that looks for assignments to properties of an object or array
immediately following its creation using the abbreviated syntax.
For each pass, keep track of the runtime, the size changes, etc
An error manager that prints errors and warnings to the print stream
provided in addition to the functionality of the
BasicErrorManager
.Rewrites a CommonJS module http://wiki.commonjs.org/wiki/Modules/1.1.1
into a form that can be safely concatenated.
A property slot of an object.
Policies to determine how properties should be renamed.
All the strings used by the webservice protocol.
Fields in the JSON response from the ApiKeyGenerationServlet.
All the possible values for the FORMATTING key.
All the possible values for the OUTPUT_INFO key.
All enums that need to be shared between the Java and JS code should
implement this interface.
All the keys that can be part of the http request.
All the xml/json tags that can be returned by the backend if xml or json is
selected as the output mode.
Traverse JsonML source tree and generates AST.
A builder for record types.
An AST for JavaScript regular expressions.
Source code region.
Compilation results
This interface defines what reversed abstract interpreters provide.
Scope contains information about a variable scope in JavaScript.
A special subclass of Var used to distinguish "arguments" in the current
scope.
Stores info about a variable
This is the class that implements the run-time.
Compilation of JavaScript code which guarantees that all security
capabilities are preserved after the process.
A reverse abstract interpreter using the semantics of the JavaScript
language as a means to reverse interpret computations.
Control whether warnings should be restricted or suppressed for specified
paths.
Controls whether warnings should be restricted to a specified path or
suppressed within the specified path.
A class to hold JS dependency information for a single .js file.
A simple
ErrorReporter
that collects warnings and errors and makes
them accessible via SimpleErrorReporter.errors()
and SimpleErrorReporter.warnings()
.A simple immutable reference.
Simple region.
The minimum implementation of StaticSlot.
A simple source excerpt provider for testing.
A simple implementation of
StaticSourceFile
for testing.A sorted list of inputs with dependency information.
An interface for accessing the AST root of an input.
A source excerpt provider is responsible for building source code excerpt
of specific locations, such as a specific line or a region around a
given line number.
A excerpt formatter is responsible of formatting source excerpts.
Source excerpt variety.
An abstract representation of a source file that provides access to
language-neutral features.
A builder interface for source files.
A JavaScript source code provider.
Collects information mapping the generated (compiled) source back to
its original source for debugging purposes.
Source maps can be very large different levels of detail can be specified.
A SourceMapConsumer is a SourceMapping provide that can parse from a raw
string.
Detect and parse the provided source map.
Class for parsing and representing a SourceMap, as produced by the
Closure Compiler, Caja-Compiler, etc.
Class for parsing version 2 of the SourceMap format, as produced by the
Closure Compiler, etc.
Class for parsing version 3 of the SourceMap format, as produced by the
Closure Compiler, etc.
A list of currently support SourceMap format revisions.
Collects information mapping the generated (compiled) source back to
its original source for debugging purposes
Collects information mapping the generated (compiled) source back to
its original source for debugging purposes.
Collects information mapping the generated (compiled) source back to
its original source for debugging purposes.
Collects information mapping the generated (compiled) source back to
its original source for debugging purposes.
Throw if an invalid or unknown source map is encountered.
Interface for provide a way of mapping (line, column) positions back to
positions in the original (uncompiled) source code.
A SourceMappingReversable is a SourceMapping that can provide the reverse
(source --> target) source mapping.
A class representing a partial source map.
A class for mapping source map names to the actual contents.
Represents a position in some piece of source code, with an associated
item of type T found at that position.
A Union-Find implementation.
Tries to fuse all the statements in a block into a one statement by using
COMMAs.
The
StaticReference
tells us all the ways that a StaticSlot
is used in a program.The
StaticScope
interface must be implemented by any object that
defines variables for the purposes of static analysis.The
StaticSlot
interface must be implemented by variables that can
appear as members of a StaticScope
.The
StaticSourceFile
contains information about a compiler input.Lookup references by the symbols that they refer to.
All warnings should be reported as errors.
String type.
An interface representing a subgraph that provides adjacency calculation to
a node.
A symbol table for people that want to use Closure Compiler as an indexer.
An AST generated totally by the compiler.
List of attributes that a JsonML element may have.
List of types allowed for JsonML elements.
Manages a mapping from TemplateType to its resolved JSType.
An object type with declared template types, such as
Array.
.An enum for ternary logic.
An error reporter for testing that verifies that messages reported to the
reporter are expected.
An error reporter for testing that verifies that messages reported to the
reporter are expected.
This class implements the JavaScript scanner.
This class implements the JavaScript scanner.
Checks the types of JS expressions against any declared type
information.
A generic undirected graph.
A generic undirected graph edge.
A generic undirected graph node.
Union-Find is a classical algorithm used to find connected components in
graph theory.
The
UnionType
implements a common JavaScript idiom in which the
code is specifically designed to work with multiple input types.The
Unknown
type.Statically validates JsonML elements.
Stores the mapping from original variable name to new variable names.
Policies to determine which variables should be renamed.
A type visitor.
Void type whose only element is the
undefined
value.Simple representation of a warning flag in Ant
Convert the warnings level to an Options object.
Class that allows to flexibly manage what to do with a reported
warning/error.
An extension of
WarningsGuard
that provides functionality to maintain
a list of warnings (white-list).Converts internal AST into JsonML tree.
A MessageBundle that parses messages from an XML Translation Bundle (XTB)
file.