public class BlockSupportImpl extends BlockSupport
BlockSupport.ReparsedSuccessfullyException
DO_NOT_REPARSE_INCREMENTALLY, INCREMENTAL_REPARSE_DEPTH_LIMIT, TREE_DEPTH_LIMIT_EXCEEDED, TREE_TO_BE_REPARSED
Constructor and Description |
---|
BlockSupportImpl() |
Modifier and Type | Method and Description |
---|---|
static <T> void |
diffTrees(ASTNode oldRoot,
DiffTreeChangeBuilder<ASTNode,T> builder,
ShallowNodeComparator<ASTNode,T> comparator,
FlyweightCapableTreeStructure<T> newTreeStructure,
ProgressIndicator indicator,
java.lang.CharSequence lastCommittedText) |
static Couple<ASTNode> |
findReparseableRoots(PsiFileImpl file,
FileASTNode oldFileNode,
TextRange changedPsiRange,
java.lang.CharSequence newFileText)
Find ast node that could be reparsed incrementally
|
static PsiFileImpl |
getFileCopy(PsiFileImpl originalFile,
FileViewProvider providerCopy) |
static DiffLog |
mergeTrees(PsiFileImpl fileImpl,
ASTNode oldRoot,
ASTNode newRoot,
ProgressIndicator indicator,
java.lang.CharSequence lastCommittedText) |
DiffLog |
reparseRange(PsiFile file,
FileASTNode oldFileNode,
TextRange changedPsiRange,
java.lang.CharSequence newFileText,
ProgressIndicator indicator,
java.lang.CharSequence lastCommittedText) |
void |
reparseRange(PsiFile file,
int startOffset,
int endOffset,
java.lang.CharSequence newText) |
static void |
sendAfterChildrenChangedEvent(PsiManagerImpl manager,
PsiFile scope,
int oldLength,
boolean isGenericChange) |
static void |
sendBeforeChildrenChangeEvent(PsiManagerImpl manager,
PsiElement scope,
boolean isGenericChange) |
protected static ASTNode |
tryReparseLeaf(IReparseableLeafElementType reparseable,
ASTNode node,
java.lang.CharSequence newTextStr) |
protected static ASTNode |
tryReparseNode(IReparseableElementTypeBase reparseable,
ASTNode node,
java.lang.CharSequence newTextStr,
PsiManager manager,
Language baseLanguage,
CharTable charTable) |
getInstance, isTooDeep
public void reparseRange(PsiFile file, int startOffset, int endOffset, java.lang.CharSequence newText) throws IncorrectOperationException
reparseRange
in class BlockSupport
IncorrectOperationException
public DiffLog reparseRange(PsiFile file, FileASTNode oldFileNode, TextRange changedPsiRange, java.lang.CharSequence newFileText, ProgressIndicator indicator, java.lang.CharSequence lastCommittedText)
reparseRange
in class BlockSupport
public static Couple<ASTNode> findReparseableRoots(PsiFileImpl file, FileASTNode oldFileNode, TextRange changedPsiRange, java.lang.CharSequence newFileText)
null
if can't parse incrementally.protected static ASTNode tryReparseNode(IReparseableElementTypeBase reparseable, ASTNode node, java.lang.CharSequence newTextStr, PsiManager manager, Language baseLanguage, CharTable charTable)
protected static ASTNode tryReparseLeaf(IReparseableLeafElementType reparseable, ASTNode node, java.lang.CharSequence newTextStr)
public static PsiFileImpl getFileCopy(PsiFileImpl originalFile, FileViewProvider providerCopy)
public static DiffLog mergeTrees(PsiFileImpl fileImpl, ASTNode oldRoot, ASTNode newRoot, ProgressIndicator indicator, java.lang.CharSequence lastCommittedText)
public static <T> void diffTrees(ASTNode oldRoot, DiffTreeChangeBuilder<ASTNode,T> builder, ShallowNodeComparator<ASTNode,T> comparator, FlyweightCapableTreeStructure<T> newTreeStructure, ProgressIndicator indicator, java.lang.CharSequence lastCommittedText)
public static void sendBeforeChildrenChangeEvent(PsiManagerImpl manager, PsiElement scope, boolean isGenericChange)
public static void sendAfterChildrenChangedEvent(PsiManagerImpl manager, PsiFile scope, int oldLength, boolean isGenericChange)