當前位置: 首頁>>代碼示例>>Java>>正文


Java PsiEmptyExpressionImpl類代碼示例

本文整理匯總了Java中com.intellij.psi.impl.source.tree.java.PsiEmptyExpressionImpl的典型用法代碼示例。如果您正苦於以下問題:Java PsiEmptyExpressionImpl類的具體用法?Java PsiEmptyExpressionImpl怎麽用?Java PsiEmptyExpressionImpl使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


PsiEmptyExpressionImpl類屬於com.intellij.psi.impl.source.tree.java包,在下文中一共展示了PsiEmptyExpressionImpl類的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: getCastedExpressionType

import com.intellij.psi.impl.source.tree.java.PsiEmptyExpressionImpl; //導入依賴的package包/類
@Nullable
private static PsiType getCastedExpressionType(PsiElement parenthesisOwner) {
  if (parenthesisOwner instanceof PsiTypeCastExpression) {
    final PsiExpression operand = ((PsiTypeCastExpression)parenthesisOwner).getOperand();
    return operand == null ? null : operand.getType();
  }

  if (parenthesisOwner instanceof PsiParenthesizedExpression) {
    PsiElement next = parenthesisOwner.getNextSibling();
    while (next != null && (next instanceof PsiEmptyExpressionImpl || next instanceof PsiErrorElement || next instanceof PsiWhiteSpace)) {
      next = next.getNextSibling();
    }
    if (next instanceof PsiExpression) {
      return ((PsiExpression)next).getType();
    }
  }
  return null;
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:19,代碼來源:SmartCastProvider.java

示例2: getCastedExpressionType

import com.intellij.psi.impl.source.tree.java.PsiEmptyExpressionImpl; //導入依賴的package包/類
@Nullable
private static PsiType getCastedExpressionType(PsiElement originalPosition) {
  if (INSIDE_TYPECAST_TYPE.accepts(originalPosition)) {
    final PsiTypeCastExpression cast = PsiTreeUtil.getParentOfType(originalPosition, PsiTypeCastExpression.class);
    if (cast != null) {
      final PsiExpression operand = cast.getOperand();
      return operand == null ? null : operand.getType();
    }
  }
  final PsiParenthesizedExpression parens = PsiTreeUtil.getParentOfType(originalPosition, PsiParenthesizedExpression.class, true, PsiStatement.class);
  if (parens != null) {
    final PsiExpression rightSide = parens.getExpression();
    if (rightSide != null) {
      return rightSide.getType();
    }
    PsiElement next = parens.getNextSibling();
    while (next != null && (next instanceof PsiEmptyExpressionImpl || next instanceof PsiErrorElement || next instanceof PsiWhiteSpace)) {
      next = next.getNextSibling();
    }
    if (next instanceof PsiExpression) {
      return ((PsiExpression)next).getType();
    }
    return null;
  }
  return null;
}
 
開發者ID:lshain-android-source,項目名稱:tools-idea,代碼行數:27,代碼來源:SmartCastProvider.java

示例3: getCastedExpression

import com.intellij.psi.impl.source.tree.java.PsiEmptyExpressionImpl; //導入依賴的package包/類
private static PsiExpression getCastedExpression(PsiElement parenthesisOwner)
{
	if(parenthesisOwner instanceof PsiTypeCastExpression)
	{
		return ((PsiTypeCastExpression) parenthesisOwner).getOperand();
	}

	if(parenthesisOwner instanceof PsiParenthesizedExpression)
	{
		PsiElement next = parenthesisOwner.getNextSibling();
		while(next != null && (next instanceof PsiEmptyExpressionImpl || next instanceof PsiErrorElement || next instanceof PsiWhiteSpace))
		{
			next = next.getNextSibling();
		}
		if(next instanceof PsiExpression)
		{
			return (PsiExpression) next;
		}
	}
	return null;
}
 
開發者ID:consulo,項目名稱:consulo-java,代碼行數:22,代碼來源:SmartCastProvider.java


注:本文中的com.intellij.psi.impl.source.tree.java.PsiEmptyExpressionImpl類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。