下面列出了com.intellij.psi.StubBuilder#com.intellij.psi.stubs.DefaultStubBuilder 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
@NotNull
@Override
public StubBuilder getBuilder() {
return new DefaultStubBuilder() {
@NotNull
@Override
protected StubElement createStubForFile(@NotNull PsiFile file) {
if (file instanceof RmlFile) {
return new RmlFileStub((RmlFile) file, ((RmlFile) file).isComponent());
} else if (file instanceof RmlInterfaceFile) {
return new RmlFileStub((RmlInterfaceFile) file, ((RmlInterfaceFile) file).isComponent());
}
return super.createStubForFile(file);
}
};
}
@NotNull
@Override
public StubBuilder getBuilder() {
return new DefaultStubBuilder() {
@NotNull
@Override
protected StubElement createStubForFile(@NotNull PsiFile file) {
if (file instanceof NASMFile) {
return new NASMFileStub((NASMFile)file);
}
return super.createStubForFile(file);
}
};
}
@NotNull
@Override
public StubBuilder getBuilder() {
return new DefaultStubBuilder() {
@NotNull
@Override
protected StubElement createStubForFile(@NotNull PsiFile file) {
if (file instanceof OclFile) {
return new OclFileStub((OclFile) file);
}
return super.createStubForFile(file);
}
};
}
@Override
public StubBuilder getBuilder() {
return new DefaultStubBuilder() {
@Override
protected StubElement createStubForFile(@NotNull PsiFile file) {
return new FileStub((SoyFile) file);
}
};
}
@Override
public StubBuilder getBuilder() {
return new DefaultStubBuilder() {
@Override
protected StubElement createStubForFile(@NotNull PsiFile file) {
return new FileStub((ProtoPsiFileRoot) file);
}
};
}
@Override
public StubBuilder getBuilder() {
return new DefaultStubBuilder() {
@NotNull
@Override
protected StubElement createStubForFile(@NotNull PsiFile file) {
if (file instanceof HaskellFile) {
return new HaskellFileStub((HaskellFile)file);
}
return super.createStubForFile(file);
}
};
}
@Override
public StubBuilder getBuilder()
{
return new DefaultStubBuilder()
{
@Nonnull
@Override
protected StubElement createStubForFile(@Nonnull PsiFile file)
{
if(file instanceof CSharpFileImpl)
{
return new CSharpFileStub((CSharpFileImpl) file);
}
return super.createStubForFile(file);
}
@Override
public boolean skipChildProcessingWhenBuildingStubs(@Nonnull ASTNode parent, @Nonnull ASTNode node)
{
// skip any lazy parseable elements, like preprocessors or code blocks etc
if(node.getElementType() instanceof ILazyParseableElementType)
{
return true;
}
return false;
}
};
}