本文整理汇总了Java中com.intellij.psi.PsiSwitchStatement类的典型用法代码示例。如果您正苦于以下问题:Java PsiSwitchStatement类的具体用法?Java PsiSwitchStatement怎么用?Java PsiSwitchStatement使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
PsiSwitchStatement类属于com.intellij.psi包,在下文中一共展示了PsiSwitchStatement类的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: visitSwitchStatement
import com.intellij.psi.PsiSwitchStatement; //导入依赖的package包/类
@Override
public void visitSwitchStatement(
@NotNull PsiSwitchStatement statement) {
super.visitSwitchStatement(statement);
final PsiElement containingSwitchStatement =
PsiTreeUtil.getParentOfType(statement,
PsiSwitchStatement.class);
if (containingSwitchStatement == null) {
return;
}
final PsiMethod containingMethod =
PsiTreeUtil.getParentOfType(statement, PsiMethod.class);
final PsiMethod containingContainingMethod =
PsiTreeUtil.getParentOfType(containingSwitchStatement,
PsiMethod.class);
if (containingMethod == null ||
containingContainingMethod == null ||
!containingMethod.equals(containingContainingMethod)) {
return;
}
registerStatementError(statement);
}
示例2: visitSwitchStatement
import com.intellij.psi.PsiSwitchStatement; //导入依赖的package包/类
@Override
public void visitSwitchStatement(
@NotNull PsiSwitchStatement statement) {
final PsiCodeBlock body = statement.getBody();
if (body == null) {
return;
}
final int branchCount = SwitchUtils.calculateBranchCount(statement);
if (branchCount <= m_limit) {
return;
}
registerStatementError(statement, Integer.valueOf(branchCount));
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:14,代码来源:SwitchStatementWithTooManyBranchesInspection.java
示例3: visitSwitchStatement
import com.intellij.psi.PsiSwitchStatement; //导入依赖的package包/类
@Override
public void visitSwitchStatement(
@NotNull PsiSwitchStatement statement) {
super.visitSwitchStatement(statement);
final PsiCodeBlock body = statement.getBody();
if (body == null) {
return;
}
final PsiStatement[] statements = body.getStatements();
boolean labelSeen = false;
for (int i = statements.length - 1; i >= 0; i--) {
final PsiStatement child = statements[i];
if (child instanceof PsiSwitchLabelStatement) {
final PsiSwitchLabelStatement label =
(PsiSwitchLabelStatement)child;
if (label.isDefaultCase()) {
if (labelSeen) {
registerStatementError(label);
}
return;
}
else {
labelSeen = true;
}
}
}
}
示例4: visitSwitchStatement
import com.intellij.psi.PsiSwitchStatement; //导入依赖的package包/类
@Override
public void visitSwitchStatement(@NotNull PsiSwitchStatement statement) {
super.visitSwitchStatement(statement);
if (NestedSynchronizedStatementInspection.isNestedStatement(statement, PsiSwitchStatement.class)) {
registerStatementError(statement);
}
}
示例5: visitSwitchStatement
import com.intellij.psi.PsiSwitchStatement; //导入依赖的package包/类
@Override
public void visitSwitchStatement(@NotNull PsiSwitchStatement statement) {
final PsiCodeBlock body = statement.getBody();
if (body == null) {
return;
}
final int branchCount = SwitchUtils.calculateBranchCount(statement);
if (branchCount == 0) {
return; // // do not warn when no switch branches are present at all
}
if (branchCount >= m_limit) {
return;
}
registerStatementError(statement, Integer.valueOf(branchCount));
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:16,代码来源:SwitchStatementWithTooFewBranchesInspection.java
示例6: apply
import com.intellij.psi.PsiSwitchStatement; //导入依赖的package包/类
@Override
public void apply(Editor editor, JavaSmartEnterProcessor processor, PsiElement psiElement) throws IncorrectOperationException
{
if(psiElement instanceof PsiSwitchStatement)
{
final Document doc = editor.getDocument();
final PsiSwitchStatement switchStatement = (PsiSwitchStatement) psiElement;
final PsiJavaToken rParenth = switchStatement.getRParenth();
final PsiJavaToken lParenth = switchStatement.getLParenth();
final PsiExpression condition = switchStatement.getExpression();
if(condition == null)
{
if(lParenth == null || rParenth == null)
{
int stopOffset = doc.getLineEndOffset(doc.getLineNumber(switchStatement.getTextRange().getStartOffset()));
final PsiCodeBlock block = switchStatement.getBody();
if(block != null)
{
stopOffset = Math.min(stopOffset, block.getTextRange().getStartOffset());
}
doc.replaceString(switchStatement.getTextRange().getStartOffset(), stopOffset, "switch ()");
}
else
{
processor.registerUnresolvedError(lParenth.getTextRange().getEndOffset());
}
}
else if(rParenth == null)
{
doc.insertString(condition.getTextRange().getEndOffset(), ")");
}
}
}
示例7: visitSwitchStatement
import com.intellij.psi.PsiSwitchStatement; //导入依赖的package包/类
@Override
public void visitSwitchStatement(PsiSwitchStatement statement) {
mVisitor.report("PsiSwitchStatement", statement.getText(), statement);
super.visitStatement(statement);
}
示例8: visitSwitchStatement
import com.intellij.psi.PsiSwitchStatement; //导入依赖的package包/类
@Override
public void visitSwitchStatement(
@NotNull PsiSwitchStatement statement) {
super.visitSwitchStatement(statement);
registerStatementError(statement);
}