本文整理汇总了Java中com.intellij.psi.impl.PsiImplUtil.findStatementChild方法的典型用法代码示例。如果您正苦于以下问题:Java PsiImplUtil.findStatementChild方法的具体用法?Java PsiImplUtil.findStatementChild怎么用?Java PsiImplUtil.findStatementChild使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.intellij.psi.impl.PsiImplUtil
的用法示例。
在下文中一共展示了PsiImplUtil.findStatementChild方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: findChildByRole
import com.intellij.psi.impl.PsiImplUtil; //导入方法依赖的package包/类
@Override
public ASTNode findChildByRole(int role){
LOG.assertTrue(ChildRole.isUnique(role));
switch(role){
default:
return null;
case ChildRole.WHILE_KEYWORD:
return findChildByType(WHILE_KEYWORD);
case ChildRole.LPARENTH:
return findChildByType(LPARENTH);
case ChildRole.CONDITION:
return findChildByType(EXPRESSION_BIT_SET);
case ChildRole.RPARENTH:
return findChildByType(RPARENTH);
case ChildRole.LOOP_BODY:
return PsiImplUtil.findStatementChild(this);
}
}
示例2: findChildByRole
import com.intellij.psi.impl.PsiImplUtil; //导入方法依赖的package包/类
@Override
public ASTNode findChildByRole(int role) {
LOG.assertTrue(ChildRole.isUnique(role));
switch(role){
default:
return null;
case ChildRole.STATEMENT:
return PsiImplUtil.findStatementChild(this);
case ChildRole.COLON:
return findChildByType(COLON);
case ChildRole.LABEL_NAME:
return getFirstChildNode();
}
}
示例3: findChildByRole
import com.intellij.psi.impl.PsiImplUtil; //导入方法依赖的package包/类
@Override
public ASTNode findChildByRole(int role){
LOG.assertTrue(ChildRole.isUnique(role));
switch(role){
default:
return null;
case ChildRole.DO_KEYWORD:
return findChildByType(DO_KEYWORD);
case ChildRole.LOOP_BODY:
return PsiImplUtil.findStatementChild(this);
case ChildRole.WHILE_KEYWORD:
return findChildByType(WHILE_KEYWORD);
case ChildRole.LPARENTH:
return findChildByType(LPARENTH);
case ChildRole.CONDITION:
return findChildByType(EXPRESSION_BIT_SET);
case ChildRole.RPARENTH:
return findChildByType(RPARENTH);
case ChildRole.CLOSING_SEMICOLON:
return TreeUtil.findChildBackward(this, SEMICOLON);
}
}
示例4: findChildByRole
import com.intellij.psi.impl.PsiImplUtil; //导入方法依赖的package包/类
@Override
public ASTNode findChildByRole(int role) {
LOG.assertTrue(ChildRole.isUnique(role));
switch(role) {
case ChildRole.LOOP_BODY:
return PsiImplUtil.findStatementChild(this);
case ChildRole.FOR_ITERATED_VALUE:
return findChildByType(EXPRESSION_BIT_SET);
case ChildRole.FOR_KEYWORD:
return getFirstChildNode();
case ChildRole.LPARENTH:
return findChildByType(LPARENTH);
case ChildRole.RPARENTH:
return findChildByType(RPARENTH);
case ChildRole.FOR_ITERATION_PARAMETER:
return findChildByType(PARAMETER);
case ChildRole.COLON:
return findChildByType(COLON);
default:
return null;
}
}
示例5: findChildByRole
import com.intellij.psi.impl.PsiImplUtil; //导入方法依赖的package包/类
@Override
public ASTNode findChildByRole(int role) {
LOG.assertTrue(ChildRole.isUnique(role));
switch(role){
default:
return null;
case ChildRole.IF_KEYWORD:
return findChildByType(IF_KEYWORD);
case ChildRole.LPARENTH:
return findChildByType(LPARENTH);
case ChildRole.CONDITION:
return findChildByType(EXPRESSION_BIT_SET);
case ChildRole.RPARENTH:
return findChildByType(RPARENTH);
case ChildRole.THEN_BRANCH:
return PsiImplUtil.findStatementChild(this);
case ChildRole.ELSE_KEYWORD:
return findChildByType(ELSE_KEYWORD);
case ChildRole.ELSE_BRANCH:
{
ASTNode elseKeyword = findChildByRole(ChildRole.ELSE_KEYWORD);
if (elseKeyword == null) return null;
for(ASTNode child = elseKeyword.getTreeNext(); child != null; child = child.getTreeNext()){
if (child.getPsi() instanceof PsiStatement) return child;
}
return null;
}
}
}
示例6: findChildByRole
import com.intellij.psi.impl.PsiImplUtil; //导入方法依赖的package包/类
@Override
public ASTNode findChildByRole(int role){
LOG.assertTrue(ChildRole.isUnique(role));
switch(role){
default:
return null;
case ChildRole.FOR_KEYWORD:
return findChildByType(FOR_KEYWORD);
case ChildRole.LPARENTH:
return findChildByType(LPARENTH);
case ChildRole.FOR_INITIALIZATION:
final ASTNode initialization = PsiImplUtil.findStatementChild(this);
// should be inside parens
ASTNode paren = findChildByRole(ChildRole.LPARENTH);
for(ASTNode child = paren; child != null; child = child.getTreeNext()){
if (child == initialization) return initialization;
if (child.getElementType() == RPARENTH) return null;
}
return null;
case ChildRole.CONDITION:
return findChildByType(EXPRESSION_BIT_SET);
case ChildRole.FOR_SEMICOLON:
return findChildByType(SEMICOLON);
case ChildRole.FOR_UPDATE:
{
ASTNode semicolon = findChildByRole(ChildRole.FOR_SEMICOLON);
for(ASTNode child = semicolon; child != null; child = child.getTreeNext()){
if (child.getPsi() instanceof PsiStatement) {
return child;
}
if (child.getElementType() == RPARENTH) break;
}
return null;
}
case ChildRole.RPARENTH:
return findChildByType(RPARENTH);
case ChildRole.LOOP_BODY:
{
ASTNode rparenth = findChildByRole(ChildRole.RPARENTH);
for(ASTNode child = rparenth; child != null; child = child.getTreeNext()){
if (child.getPsi() instanceof PsiStatement) {
return child;
}
}
return null;
}
}
}