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 WarningsGuards.
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.
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.