A type-safe map from objects of type Bindings.Key<V>
, which consist of a String
key and a Bindings.Key
subclass, to values of type V
.
A key type for a Binding
.
Template representing a sequence of consecutive statements.
A representation of a choice with zero or more options, which may be evaluated lazily or
strictly.
Analyzes a series of statements to determine whether they don't, sometimes, or never return.
The state of whether a sequence of statements may return, break out of the visited statements,
or neither.
Exception thrown when a class symbol could not be resolved by the compiler.
Implementation of a template to match and replace an expression anywhere in an AST.
Policy specifying when and how to import classes when inlining types.
A context representing all the dependencies necessary to reconstruct a pretty-printable source
tree from a UTree
based on a set of substitutions.
Binding for a local variable in a template.
A representation of an entire Refaster rule, corresponding to a class with @BeforeTemplates
and @AfterTemplates.
A simple wrapper to view a String
as a Name
.
Abstract superclass for templates that can be used to search and replace in a Java syntax tree.
Abstract type representing a match against a Template
.
UExpression
allowing a match against any of a list of expressions.
A representation of a type with optional generic parameters.
UTree
version of
ExpressionTree
.
UType
version of
Type.ForAll
.
Free identifier that can be bound to any expression of the appropriate type.
UTree
version of
LiteralTree
.
UTree
version of
MemberSelectTree
.
Identifier representing an unqualified instant method.
UTree
version of
MethodInvocationTree
.
A UType
representation of a Type.MethodType
.
A serializable representation of a template that can be matched against a target of type
T
.
A mutable representation of an attempt to match a template source tree against a target source
tree.
UTree
representation of a
ReturnTree
.
UTree
representation of a
StatementTree
.
Tuple of a Unifier and a list of statements that are still waiting to be matched.
Identifier representing a static member (field, method, etc.) on a class.
A serializable representation of a template syntax tree which can be unified with a target AST
and inlined based on a set of substitutions.
A serializable representation of a type template, used for enforcing type constraints on target
ASTs.
UType
version of
Type.TypeVar
.
Bindings key linked to a UTypeVar
.
Tuple of an expression with an associated type.
A
UTree
representation of a local variable declaration.