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


Java InitializationUtils類代碼示例

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


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

示例1: isInitializedInConstructors

import com.siyeh.ig.psiutils.InitializationUtils; //導入依賴的package包/類
private static boolean isInitializedInConstructors(
  @NotNull PsiField field, @NotNull PsiClass aClass) {
  final PsiMethod[] constructors = aClass.getConstructors();
  if (constructors.length == 0) {
    return false;
  }
  for (final PsiMethod constructor : constructors) {
    if (!InitializationUtils.methodAssignsVariableOrFails(
      constructor, field)) {
      return false;
    }
  }
  return true;
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:15,代碼來源:TransientFieldNotInitializedInspection.java

示例2: isInitializedInInitializer

import com.siyeh.ig.psiutils.InitializationUtils; //導入依賴的package包/類
private static boolean isInitializedInInitializer(
  @NotNull PsiField field, @NotNull PsiClass aClass) {
  final PsiClassInitializer[] initializers = aClass.getInitializers();
  for (final PsiClassInitializer initializer : initializers) {
    if (initializer.hasModifierProperty(PsiModifier.STATIC)) {
      continue;
    }
    final PsiCodeBlock body = initializer.getBody();
    if (InitializationUtils.blockAssignsVariableOrFails(body,
                                                        field)) {
      return true;
    }
  }
  return false;
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:16,代碼來源:TransientFieldNotInitializedInspection.java

示例3: isFieldInitialized

import com.siyeh.ig.psiutils.InitializationUtils; //導入依賴的package包/類
public static boolean isFieldInitialized(@NotNull PsiField field,
                                         @NotNull PsiMethod method) {
  if (field.hasModifierProperty(PsiModifier.STATIC)) {
    return true;
  }
  if (field.hasModifierProperty(PsiModifier.FINAL) &&
      field.getInitializer() != null) {
    return true;
  }
  return InitializationUtils.methodAssignsVariableOrFails(method,
                                                          field);
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:13,代碼來源:ReadObjectInitializationInspection.java

示例4: isInitializedInConstructors

import com.siyeh.ig.psiutils.InitializationUtils; //導入依賴的package包/類
private boolean isInitializedInConstructors(PsiField field,
                                            PsiClass aClass) {
  final PsiMethod[] constructors = aClass.getConstructors();
  if (constructors.length == 0) {
    return false;
  }
  for (final PsiMethod constructor : constructors) {
    if (!InitializationUtils.methodAssignsVariableOrFails(
      constructor, field)) {
      return false;
    }
  }
  return true;
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:15,代碼來源:InstanceVariableInitializationInspection.java

示例5: visitField

import com.siyeh.ig.psiutils.InitializationUtils; //導入依賴的package包/類
@Override
public void visitField(@NotNull PsiField field) {
  if (!field.hasModifierProperty(PsiModifier.STATIC) || field.hasModifierProperty(PsiModifier.FINAL)) {
    return;
  }
  if (field.getInitializer() != null) {
    return;
  }
  final PsiClass containingClass = field.getContainingClass();
  if (containingClass == null || containingClass.isEnum()) {
    return;
  }
  if (m_ignorePrimitives) {
    final PsiType type = field.getType();
    if (ClassUtils.isPrimitive(type)) {
      return;
    }
  }
  final PsiClassInitializer[] initializers = containingClass.getInitializers();
  for (final PsiClassInitializer initializer : initializers) {
    if (!initializer.hasModifierProperty(PsiModifier.STATIC)) {
      continue;
    }
    final PsiCodeBlock body = initializer.getBody();
    if (InitializationUtils.blockAssignsVariableOrFails(body, field)) {
      return;
    }
  }
  registerFieldError(field);
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:31,代碼來源:StaticVariableInitializationInspection.java

示例6: isStatementNeededForInitializationOfVariable

import com.siyeh.ig.psiutils.InitializationUtils; //導入依賴的package包/類
private static boolean isStatementNeededForInitializationOfVariable(
  PsiSwitchStatement switchStatement, PsiStatement statement) {
  if (!(statement instanceof PsiExpressionStatement)) {
    return false;
  }
  final PsiExpressionStatement expressionStatement =
    (PsiExpressionStatement)statement;
  final PsiExpression expression =
    expressionStatement.getExpression();
  if (!(expression instanceof PsiAssignmentExpression)) {
    return false;
  }
  final PsiAssignmentExpression assignmentExpression =
    (PsiAssignmentExpression)expression;
  final PsiExpression lhs = assignmentExpression.getLExpression();
  if (!(lhs instanceof PsiReferenceExpression)) {
    return false;
  }
  final PsiReferenceExpression referenceExpression =
    (PsiReferenceExpression)lhs;
  final PsiElement target = referenceExpression.resolve();
  if (!(target instanceof PsiLocalVariable)) {
    return false;
  }
  final PsiLocalVariable variable = (PsiLocalVariable)target;
  return InitializationUtils.switchStatementAssignsVariableOrFails(
    switchStatement, variable, true);
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:29,代碼來源:UnnecessaryDefaultInspection.java

示例7: visitField

import com.siyeh.ig.psiutils.InitializationUtils; //導入依賴的package包/類
@Override
public void visitField(@NotNull PsiField field) {
  if (!field.hasModifierProperty(PsiModifier.STATIC)) {
    return;
  }
  if (field.getInitializer() != null) {
    return;
  }
  final PsiClass containingClass = field.getContainingClass();
  if (containingClass == null) {
    return;
  }
  if (containingClass.isEnum()) {
    return;
  }
  if (m_ignorePrimitives) {
    final PsiType type = field.getType();
    if (ClassUtils.isPrimitive(type)) {
      return;
    }
  }
  final PsiClassInitializer[] initializers =
    containingClass.getInitializers();
  for (final PsiClassInitializer initializer : initializers) {
    if (initializer.hasModifierProperty(PsiModifier.STATIC)) {
      final PsiCodeBlock body = initializer.getBody();
      if (InitializationUtils.blockAssignsVariableOrFails(body,
                                                          field)) {
        return;
      }
    }
  }
  registerFieldError(field);
}
 
開發者ID:lshain-android-source,項目名稱:tools-idea,代碼行數:35,代碼來源:StaticVariableInitializationInspection.java

示例8: isInitializedInSetup

import com.siyeh.ig.psiutils.InitializationUtils; //導入依賴的package包/類
private boolean isInitializedInSetup(PsiField field,
                                     PsiClass aClass) {
  final PsiMethod setupMethod = getSetupMethod(aClass);
  return InitializationUtils.methodAssignsVariableOrFails(setupMethod,
                                                          field);
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:7,代碼來源:InstanceVariableInitializationInspection.java


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