All Classes and Interfaces

Class
Description
 
 
 
 
 
 
The AST builder is a visitor of the parse tree (not an AST visitor) that generates AST nodes from parse tree nodes.
 
The AST listener interface has a method for entering and exiting each non-terminal AST node.
 
The AST node represents a node in the abstract syntax tree.
 
 
 
The AST printer emits tokens to convert an AST node into a string with the help of a few other utility classes.
 
The ast transformer transforms some representation of an input and returns the same kind of output.
The AST visitor knows how to traverse the AST and visit each node.
 
 
The auto-hinted matcher is a matcher that automatically determines the hint by finding the longest identifier in the pattern.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
The caching parser extends the enhanced parser and returns previous parse trees if they are available.
 
 
 
The channel filter accepts all tokens that are not from a lexer channel that is on the given list of disallowed channels.
A child list that notifies the given parent of child additions.
 
This class contains utility methods that allow maintaining Java 8 API compatability.
 
 
 
Holds utility methods for configuring core transformations and transformation phases.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Base class for trie variants that insert more than one entry per key.
 
 
 
The enhanced parser does more than just parsing.
Enum for the parsing strategy.
 
 
 
This annotation causes the annotated method to be excluded from the jacoco coverage report.
 
 
 
 
 
 
This class is used as the base parser class in code generated by ANTLR.
 
 
 
 
 
 
The filter token source wraps another token source but reads tokens from it until a given filter accepts one.
 
 
 
 
 
 
 
 
 
 
 
 
The grouped AST transformer parses multiple strings stored in an arbitrarily
 
A hinted matcher contains an additional string that can be used to find identifiers whose matching ancestor might match the pattern.
 
 
 
 
 
 
 
 
 
Index<N extends ASTNode>
 
 
InfixQueryable<S extends Set<E>,E>
 
 
 
 
 
 
 
 
 
 
All job parameters have to extend this job parameter base class.
 
 
 
 
 
 
 
 
 
 
Inserts #line directives that make the compiler report errors as if they were happening in the original source file.
 
 
 
 
 
 
 
 
 
 
 
Matcher<N extends ASTNode>
Instances of the matcher can match a node against a stored pattern.
 
 
 
A multi filter checks all contained filters with either requiring all of them or at least one of them to allow the token.
 
 
 
 
 
The newline filter filters out regular unnecessary newlines if there is more than one.
Indexes nodes based on their ASTNode subclass and enables fast queries for nodes by type.
Controls the output of the ASTPrinter.
 
 
The parser interface provides the basic methods for interfacing with an object that contains an EnhancedParser.
 
A static data class that contains the information needed to parse and build a specific type of node.
 
A pass-through function takes a value and returns another (or the same) value of the same type.
PermutermTrie<S extends Set<E>,E>
This permuterm trie supports prefix, suffix, infix and inverted infix (suffix + prefix) queries and works by inserting all rotations of the key into the underlying trie.
 
 
 
 
 
 
 
PrefixExternalDeclarationIndex<S extends Set<ExternalDeclarationIndex.DeclarationEntry>,I extends org.apache.commons.collections4.trie.PatriciaTrie<S>>
 
PrefixIdentifierIndex<S extends Set<Identifier>,I extends org.apache.commons.collections4.trie.PatriciaTrie<S>>
 
PrefixQueryable<S extends Set<E>,E>
 
This prefix-suffix trie supports both prefix and suffix queries but no infix-related queries and works by inserting the key and its reverse into the underlying trie.
PrefixTrie<S extends Set<E>,E>
 
 
 
 
An array list extension that calls a notification method whenever an element is added or removed from the list.
 
 
 
 
 
Each AST has a root referenced by all its members.
Supplies root instances with specific pre-configured indexes.
 
A semi-terminal statement may have children but it isn't a list node.
 
 
 
The AST transformer takes parses a string, turns it into an AST, transforms it with the given transformation and then prints it back.
Immutable class representing a source location.
 
 
 
 
 
The string token filter disallows tokens that are matched against a set of disallowed strings.
StringKeyedIndex<V,N extends ASTNode,S extends Set<V>,I extends Map<String,S>>
Indexes nodes based on their content and provides some utilities for querying them.
 
 
 
 
 
 
SuffixQueryable<S extends Set<E>,E>
 
The superclass node index also creates index entries for the superclasses for all nodes.
 
Template<N extends ASTNode>
 
 
 
 
 
A list of the possible channels a token can have.
A token filter is an object that can check if given tokens should be printed or not.
 
How important a token is to include in the output and why it exists in the token stream.
 
Exception thrown when a transformation fails or is not possible.
A transformer takes a value, does something with it and returns a value of the same type.
The translation unit is the entry point of a program and represents a single file of source code.
 
A triple consumer takes three values and does something with them.
 
 
 
This enum represents the type of a value in GLSL and contains easily accessible data about each of them.
The different ways bits in a tensor can be interpreted.
 
 
 
 
 
 
 
 
 
 
 
 
 
Provides utility methods for the Lexer to only recognize tokens allowed in the current context, version, profile, extension setting, ES/non-ES mode, Vulkan/non-Vulkan mode.
The version statement holds information about the selected GLSL version and profile.