本文整理汇总了Java中com.intellij.psi.impl.source.tree.SharedImplUtil.getParent方法的典型用法代码示例。如果您正苦于以下问题:Java SharedImplUtil.getParent方法的具体用法?Java SharedImplUtil.getParent怎么用?Java SharedImplUtil.getParent使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.intellij.psi.impl.source.tree.SharedImplUtil
的用法示例。
在下文中一共展示了SharedImplUtil.getParent方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getDefinitionParent
import com.intellij.psi.impl.source.tree.SharedImplUtil; //导入方法依赖的package包/类
protected PsiElement getDefinitionParent() {
final PsiElement candidate = getParentByStub();
if (candidate instanceof LuaPsiFile) {
return candidate;
}
return SharedImplUtil.getParent(getNode());
}
示例2: getParent
import com.intellij.psi.impl.source.tree.SharedImplUtil; //导入方法依赖的package包/类
@Override
public PsiElement getParent() {
final PsiClassStub stub = getStub();
if (stub != null) {
final StubElement parentStub = stub.getParentStub();
if (parentStub instanceof PsiFileStub || parentStub instanceof PsiClassStub
) {
return parentStub.getPsi();
}
}
return SharedImplUtil.getParent(getNode());
}
示例3: getParentByStub
import com.intellij.psi.impl.source.tree.SharedImplUtil; //导入方法依赖的package包/类
protected final PsiElement getParentByStub() {
final StubElement<?> stub = getStub();
if (stub != null) {
return stub.getParentStub().getPsi();
}
return SharedImplUtil.getParent(getNode());
}
示例4: getParentByStub
import com.intellij.psi.impl.source.tree.SharedImplUtil; //导入方法依赖的package包/类
/**
* Please consider using {@link #getParent()} instead, because this method can return different results before and after AST is loaded.
* @return a PSI element taken from parent stub (if present) or parent AST node.
*/
protected final PsiElement getParentByStub() {
final StubElement<?> stub = getStub();
if (stub != null) {
return stub.getParentStub().getPsi();
}
return SharedImplUtil.getParent(getNode());
}
示例5: getParent
import com.intellij.psi.impl.source.tree.SharedImplUtil; //导入方法依赖的package包/类
/**
* @return the parent of this element. Uses stub hierarchy if possible, but might cause an expensive switch to AST
* if the parent stub doesn't correspond to the parent AST node.
*/
@Override
public PsiElement getParent() {
T stub = getGreenStub();
if (stub != null && !((ObjectStubBase)stub).isDangling()) {
return stub.getParentStub().getPsi();
}
return SharedImplUtil.getParent(getNode());
}
示例6: getParent
import com.intellij.psi.impl.source.tree.SharedImplUtil; //导入方法依赖的package包/类
@Override
public PsiElement getParent() {
return SharedImplUtil.getParent(getNode());
}
示例7: getParent
import com.intellij.psi.impl.source.tree.SharedImplUtil; //导入方法依赖的package包/类
@Override
public PsiElement getParent() {
return SharedImplUtil.getParent(getNode());
}
示例8: getParentByTree
import com.intellij.psi.impl.source.tree.SharedImplUtil; //导入方法依赖的package包/类
protected final PsiElement getParentByTree() {
return SharedImplUtil.getParent(getNode());
}
示例9: getParentByTree
import com.intellij.psi.impl.source.tree.SharedImplUtil; //导入方法依赖的package包/类
/**
* Please use {@link #getParent()} instead
*/
@Deprecated
protected final PsiElement getParentByTree() {
return SharedImplUtil.getParent(getNode());
}
示例10: getParentByStub
import com.intellij.psi.impl.source.tree.SharedImplUtil; //导入方法依赖的package包/类
/**
* In cases when stub hierarchy corresponds to AST hierarchy, i.e. both a parent and its child nodes support stubs, {@link #getParent()}
* can be implemented efficiently without loading AST, using this method instead. It checks if there is a stub present, takes its parent
* and returns the PSI corresponding to that parent. Please be careful when using this method and use it only in the described case,
* because if there are AST-only elements in the hierarchy, it'll return different results depending on whether this element is stub-based
* or has already been switched to PSI.
*
* @return a PSI element taken from parent stub (if present) or parent AST node.
*/
protected final PsiElement getParentByStub() {
final StubElement<?> stub = getStub();
if (stub != null) {
return stub.getParentStub().getPsi();
}
return SharedImplUtil.getParent(getNode());
}
示例11: getParentByTree
import com.intellij.psi.impl.source.tree.SharedImplUtil; //导入方法依赖的package包/类
/**
* @return parent PSI element taken from the parent of the corresponding AST node. If AST has not been loaded, it is loaded
* (in {@link #getNode()}), which might take significant time and memory cost. If possible, {@link #getParentByStub()}
* should be used instead.
*/
protected final PsiElement getParentByTree() {
return SharedImplUtil.getParent(getNode());
}