All Classes and Interfaces

Class
Description
 
 
 
 
 
 
 
A stripped-down version of ArrayUtil.
rewrite of ASTMarkers.kt
 
 
rewrite of ASTMarkersImpl.kt
 
A node in the AST tree.
 
 
Defines a single pair of braces which need to be matched when editing code in a custom language.
 
 
 
 
 
 
 
 
 
 
A language that isn't meant to be user-visible.
Allows to specify a set of language-dependent token types for the doc comment lexer.
 
 
 
Manages language-specific access to PSI for a single file.
 
 
 
rewrite of FleetPsiParser.kt
 
 
 
 
This class is a runtime engine for parsers generated by Grammar-Kit.
 
 
 
 
 
An additional interface to be implemented by IElementType instances that allows to customize AST node creation.
 
Interface for token types returned from lexical analysis and for types of nodes in the AST tree.
Predicate for matching element types.
 
 
A token type which represents a fragment of text (possibly in a different language) which is not parsed during the current lexer or parser pass and can be parsed later when its contents is requested.
An additional interface to be implemented by IElementType instances to allow customizing how leaf AST elements are created for tokens of this type.
 
Signals the requested operation has failed.
The indent setting for a formatting model block.
 
 
 
 
 
 
 
 
 
 
 
A token type which represents a fragment of text (possibly in a different language) which is not parsed during the current lexer or parser pass and can be parsed later when its contents is requested.
 
rewrite of ITokenSequence.kt
 
 
 
 
The base class for all programming language support implementations.
Kind of file types capable to provide Language.
 
 
 
 
 
Interface for breaking a file into a sequence of tokens.
 
Specifies the state and position of a lexer.
 
 
 
A simple object pool which instantiates objects on-demand and keeps up to the given number of objects for later reuse.
 
 
An interface for fast indentation calculation as an alternative to formatter-based logic.
 
 
 
 
 
 
 
 
 
 
Pass custom map using MultiMap(Map) if needed.
 
 
 
 
Element type that may be used for representing outer fragments in templating language.
Defines the brace matching support required for a custom language.
Consider using BiPredicate instead.
Defines the implementation of a parser for a custom language.
Requirements for spacing between tokens.
An exception indicating that the currently running operation was terminated and should finish as soon as possible.
Generic callback with continue/stop semantics.
An object accompanying a computation, usually in a background thread.
 
 
An object representing an IntelliJ project.
Represents a binary file.
 
 
 
 
Represents a comment in a code.
The common base interface for all elements of the PSI tree.
Represents a syntax error (for example, invalid token) in Java or custom language code.
Elements which support external references should implement this interface.
A PSI element representing a file.
Marks PSI element as (potentially) containing text in another language.
 
 
Provides a list of possible modifier keywords for Java classes, methods and fields.
Represents a declaration which introduces a named entity and can be renamed (for example, a class or a method).
A Psi element which has a name given by an identifier token in the Psi tree.
The plugin side of a custom language parser.
Represents the contents of a plain-text file.
Represents a plain-text file (a file belonging to the type "Text files" or a custom file type which has no associated language).
Please use this interface to mark recursive visitors.
A reference to a PSI element.
Represents a whitespace token.
 
 
This interface is suitable for providing even distribution for restartable states in highlighting lexer implementation.
Use for marking places in code which are supposed to be updated after migration of the containing module to a newer JDK.
 
 
 
 
A List which with optimized memory usage for the sizes of 0 and 1, in which cases it does not allocate an array.
A drop-in replacement for Stack based on ArrayList (instead of Vector) and therefore is (1) not synchronized and (2) faster.
 
 
 
A marker defines a range in the document text which becomes a node in the AST tree.
 
 
 
Customizes template data language-specific parsing in templates.
This collector is used for storing ranges of outer elements and ranges of artificial elements, that should be stripped from the resulting tree At the time of creating source code for the data language we need to memorize positions with template language elements.
Collects modifications to apply to template text for later parsing by template data language parser.
 
An interface for getting additional information from preceding tokens in RestartableLexer.start(CharSequence, int, int, int, TokenIterator)
A set of element types.
The standard lexer token types common to all languages.
 
 
Implement this interface in PsiElement to inject URL reference into the element if its text contains a URL or a predefined URL pattern.
 
 
Interface for defining custom element's edge processors for PSI builder.
Recursive binder is allowed to adjust nested elements positions.
Provides an ability for the processor to get a text of any of given tokens.