Package com.iizigo.java.problem
Class JavaProblem
java.lang.Object
org.eclipse.jdt.core.compiler.CategorizedProblem
com.iizigo.java.problem.JavaProblem
- All Implemented Interfaces:
org.eclipse.jdt.core.compiler.IProblem
- Direct Known Subclasses:
AnnotationProblem
,TypeProblem
public abstract class JavaProblem extends org.eclipse.jdt.core.compiler.CategorizedProblem
Abstract class for errors produced in the Annotation and Type/Method parsers.
- Author:
- Mikael Andersson, Christopher Mindus
Field Summary
Modifier and TypeFieldDescriptionstatic final int
Category for problems related to field or variables referenced by IIZI annotations.static final int
Optional annotated cast to field or variables referenced by IIZI annotations.static final int
Category for problems related to reference problems in IIZI annotations.static final int
Category for problems related to syntax of IIZI annotations.static final int
Category for problems related to class type referenced by IIZI annotations.protected final int
static final String[]
static final Object[]
protected final int
static final int
Fields inherited from class org.eclipse.jdt.core.compiler.CategorizedProblem
CAT_BUILDPATH, CAT_CODE_STYLE, CAT_COMPLIANCE, CAT_DEPRECATION, CAT_IMPORT, CAT_INTERNAL, CAT_JAVADOC, CAT_MEMBER, CAT_MODULE, CAT_NAME_SHADOWING_CONFLICT, CAT_NLS, CAT_POTENTIAL_PROGRAMMING_PROBLEM, CAT_PREVIEW_RELATED, CAT_RESTRICTION, CAT_UNCHECKED_RAW, CAT_UNNECESSARY_CODE, CAT_UNSPECIFIED
Fields inherited from interface org.eclipse.jdt.core.compiler.IProblem
AbstractMethodCannotBeOverridden, AbstractMethodInAbstractClass, AbstractMethodInEnum, AbstractMethodMustBeImplemented, AbstractMethodMustBeImplementedOverConcreteMethod, AbstractMethodsInConcreteClass, AbstractServiceImplementation, AmbiguousConstructor, AmbiguousConstructorInDefaultConstructor, AmbiguousConstructorInImplicitConstructorCall, AmbiguousField, AmbiguousMethod, AmbiguousType, AnnotatedTypeArgumentToUnannotated, AnnotatedTypeArgumentToUnannotatedSuperHint, AnnotationCannotOverrideMethod, AnnotationCircularity, AnnotationCircularitySelfReference, AnnotationFieldNeedConstantInitialization, AnnotationMembersCannotHaveParameters, AnnotationMembersCannotHaveTypeParameters, AnnotationTypeDeclarationCannotHaveConstructor, AnnotationTypeDeclarationCannotHaveSuperclass, AnnotationTypeDeclarationCannotHaveSuperinterfaces, AnnotationTypeUsedAsSuperInterface, AnnotationValueMustBeAnEnumConstant, AnnotationValueMustBeAnnotation, AnnotationValueMustBeArrayInitializer, AnnotationValueMustBeClassLiteral, AnnotationValueMustBeConstant, AnonymousClassCannotExtendFinalClass, ApplicableMethodOverriddenByInapplicable, ArgumentHidingField, ArgumentHidingLocalVariable, ArgumentIsNeverUsed, ArgumentTypeAmbiguous, ArgumentTypeCannotBeVoid, ArgumentTypeCannotBeVoidArray, ArgumentTypeInheritedNameHidesEnclosingName, ArgumentTypeInternalNameProvided, ArgumentTypeNotFound, ArgumentTypeNotVisible, ArrayConstantsOnlyInArrayInitializers, ArrayReferencePotentialNullReference, ArrayReferenceRequired, ArrowInCaseStatementsNotSupported, AssignmentHasNoEffect, AssignmentToMultiCatchParameter, AssignmentToResource, AutoManagedResourceNotBelow17, AutoManagedVariableResourceNotBelow9, BinaryLiteralNotBelow17, BodyForAbstractMethod, BodyForNativeMethod, BoundCannotBeArray, BoundHasConflictingArguments, BoundMustBeAnInterface, BoxingConversion, BytecodeExceeds64KLimit, BytecodeExceeds64KLimitForClinit, BytecodeExceeds64KLimitForConstructor, BytecodeExceeds64KLimitForSwitchTable, CannotAllocateVoidArray, CannotDeclareEnumSpecialMethod, CannotDefineAnnotationInLocalType, CannotDefineDimensionExpressionsWithInit, CannotDefineEnumInLocalType, CannotDefineInterfaceInLocalType, CannotDefineStaticInitializerInLocalType, CannotExtendEnum, CannotHideAnInstanceMethodWithAStaticMethod, CannotImplementIncompatibleNullness, CannotImportPackage, CannotInferElidedTypes, CannotInferInvocationType, CannotInvokeSuperConstructorInEnum, CannotMixNullAndNonTypePattern, CannotMixPatternAndDefault, CannotOverrideAStaticMethodWithAnInstanceMethod, CannotReadSource, CannotReturnInInitializer, CannotThrowNull, CannotThrowType, CannotUseDiamondWithAnonymousClasses, CannotUseDiamondWithExplicitTypeArguments, CannotUseSuperInCodeSnippet, ClassExtendFinalClass, ClassExtendFinalRecord, CodeCannotBeReached, CodeSnippetMissingClass, CodeSnippetMissingMethod, ComparingIdentical, Compliance, ConflictingImport, ConflictingInheritedNullAnnotations, ConflictingNullAnnotations, ConflictingPackageFromModules, ConflictingPackageFromOtherModules, ConflictingPackageInModules, ConstantWithPatternIncompatible, ConstNonNullFieldComparisonYieldsFalse, ConstructedArrayIncompatible, ConstructionTypeMismatch, ConstructorReferenceNotBelow18, ConstructorRelated, ConstructorVarargsArgumentNeedCast, ContainerAnnotationTypeHasNonDefaultMembers, ContainerAnnotationTypeHasShorterRetention, ContainerAnnotationTypeHasWrongValueType, ContainerAnnotationTypeMustHaveValue, ContradictoryNullAnnotations, ContradictoryNullAnnotationsInferred, ContradictoryNullAnnotationsInferredFunctionType, ContradictoryNullAnnotationsOnBound, CorruptedSignature, CyclicModuleDependency, DanglingReference, DeadCode, DefaultMethodNotBelow18, DefaultMethodOverridesObjectMethod, DereferencingNullableExpression, DiamondNotBelow17, DirectInvocationOfAbstractMethod, DisallowedExplicitThisParameter, DisallowedTargetForAnnotation, DisallowedTargetForContainerAnnotationType, DiscouragedReference, DiscouragedValueBasedTypeSynchronization, DuplicateAnnotation, DuplicateAnnotationMember, DuplicateAnnotationNotMarkedRepeatable, DuplicateBlankFinalFieldInitialization, DuplicateBoundInIntersectionCast, DuplicateBounds, DuplicateCase, DuplicateDefaultCase, DuplicateExports, DuplicateField, DuplicateFinalLocalInitialization, DuplicateImport, DuplicateInheritedDefaultMethods, DuplicateInheritedMethods, DuplicateLabel, DuplicateMethod, DuplicateMethodErasure, DuplicateModifierForArgument, DuplicateModifierForField, DuplicateModifierForMethod, DuplicateModifierForType, DuplicateModifierForVariable, DuplicateModuleRef, DuplicateNestedType, DuplicateOpens, DuplicateParameterizedMethods, DuplicateRequires, DuplicateResource, DuplicateServices, DuplicateSuperInterface, DuplicateTargetInTargetAnnotation, DuplicateTotalPattern, DuplicateTypes, DuplicateTypeVariable, DuplicateUses, EmptyControlFlowStatement, EnclosingInstanceInConstructorCall, EndOfSource, EnhancedSwitchMissingDefault, EnumAbstractMethodMustBeImplemented, EnumConstantCannotDefineAbstractMethod, EnumConstantMustImplementAbstractMethod, EnumConstantsCannotBeSurroundedByParenthesis, EnumStaticFieldInInInitializerContext, EnumSwitchCannotTargetField, ErrorUseOfUnderscoreAsAnIdentifier, ExceptionParameterIsNeverUsed, ExceptionTypeAmbiguous, ExceptionTypeInheritedNameHidesEnclosingName, ExceptionTypeInternalNameProvided, ExceptionTypeNotFound, ExceptionTypeNotVisible, ExplicitAnnotationTargetRequired, ExplicitlyClosedAutoCloseable, ExplicitThisParameterNotBelow18, ExplicitThisParameterNotInLambda, ExportingForeignPackage, ExpressionShouldBeAVariable, ExternalProblemFixable, ExternalProblemNotFixable, FallthroughCase, FeatureNotSupported, FieldComparisonYieldsFalse, FieldHidingField, FieldHidingLocalVariable, FieldMissingDeprecatedAnnotation, FieldMustBeFinal, FieldRelated, FieldTypeAmbiguous, FieldTypeInheritedNameHidesEnclosingName, FieldTypeInternalNameProvided, FieldTypeNotFound, FieldTypeNotVisible, FinalBoundForTypeVariable, FinalFieldAssignment, FinallyMustCompleteNormally, FinalMethodCannotBeOverridden, FinalOuterLocalAssignment, ForbiddenReference, GenericConstructorTypeArgumentMismatch, GenericInferenceError, GenericMethodTypeArgumentMismatch, GenericTypeCannotExtendThrowable, HidingEnclosingType, HierarchyCircularity, HierarchyCircularitySelfReference, HierarchyHasProblems, IgnoreCategoriesMask, IllegalAbstractModifierCombinationForMethod, IllegalAccessFromTypeVariable, IllegalAnnotationForBaseType, IllegalArrayOfUnionType, IllegalArrayTypeInIntersectionCast, IllegalBasetypeInIntersectionCast, IllegalCast, IllegalClassLiteralForTypeVariable, IllegalDeclarationOfThisParameter, IllegalDefaultModifierSpecification, IllegalDefinitionToNonNullParameter, IllegalDimension, IllegalEnclosingInstanceSpecification, IllegalExtendedDimensions, IllegalExtendedDimensionsForVarArgs, IllegalFallthroughToPattern, IllegalGenericArray, IllegalHexaLiteral, IllegalInstanceofParameterizedType, IllegalInstanceofTypeParameter, IllegalModifierCombinationFinalAbstractForClass, IllegalModifierCombinationFinalVolatileForField, IllegalModifierCombinationForInterfaceMethod, IllegalModifierCombinationForPrivateInterfaceMethod9, IllegalModifierForAnnotationField, IllegalModifierForAnnotationMemberType, IllegalModifierForAnnotationMethod, IllegalModifierForAnnotationType, IllegalModifierForArgument, IllegalModifierForClass, IllegalModifierForConstructor, IllegalModifierForEnum, IllegalModifierForEnumConstant, IllegalModifierForEnumConstructor, IllegalModifierForField, IllegalModifierForInterface, IllegalModifierForInterfaceField, IllegalModifierForInterfaceMethod, IllegalModifierForInterfaceMethod18, IllegalModifierForInterfaceMethod9, IllegalModifierForLocalClass, IllegalModifierForLocalEnum, IllegalModifierForLocalEnumDeclaration, IllegalModifierForMemberClass, IllegalModifierForMemberEnum, IllegalModifierForMemberInterface, IllegalModifierForMethod, IllegalModifierForModule, IllegalModifierForPatternVariable, IllegalModifierForVariable, IllegalModifiers, IllegalModifiersForElidedType, IllegalParameterNullityRedefinition, IllegalPrimitiveOrArrayTypeForEnclosingInstance, IllegalQualifiedEnumConstantLabel, IllegalQualifiedParameterizedTypeAllocation, IllegalQualifierForExplicitThis, IllegalQualifierForExplicitThis2, IllegalRedefinitionOfTypeVariable, IllegalRedefinitionToNonNullParameter, IllegalReturnNullityRedefinition, IllegalReturnNullityRedefinitionFreeTypeVariable, IllegalStaticModifierForMemberType, IllegalStrictfpForAbstractInterfaceMethod, IllegalTotalPatternWithDefault, IllegalTypeAnnotationsInStaticMemberAccess, IllegalTypeArgumentsInRawConstructorReference, IllegalTypeForExplicitThis, IllegalTypeVariableSuperReference, IllegalUnderscorePosition, IllegalUsageOfQualifiedTypeReference, IllegalUsageOfTypeAnnotations, IllegalUseOfUnderscoreAsAnIdentifier, IllegalVararg, IllegalVarargInLambda, IllegalVisibilityModifierCombinationForField, IllegalVisibilityModifierCombinationForMemberType, IllegalVisibilityModifierCombinationForMethod, IllegalVisibilityModifierForInterfaceMemberType, illFormedParameterizationOfFunctionalInterface, ImplicitObjectBoundNoNullDefault, ImportAmbiguous, ImportInheritedNameHidesEnclosingName, ImportInternalNameProvided, ImportNotFound, ImportNotVisible, ImportRelated, IncompatibleExceptionInInheritedMethodThrowsClause, IncompatibleExceptionInThrowsClause, IncompatibleExceptionInThrowsClauseForNonInheritedInterfaceMethod, IncompatibleLambdaParameterType, IncompatibleMethodReference, IncompatibleReturnType, IncompatibleReturnTypeForNonInheritedInterfaceMethod, IncompatibleTypesInConditionalOperator, IncompatibleTypesInEqualityOperator, IncompatibleTypesInForeach, IncorrectArityForParameterizedConstructor, IncorrectArityForParameterizedMethod, IncorrectArityForParameterizedType, IncorrectEnclosingInstanceReference, IncorrectSwitchType, IncorrectSwitchType17, IndirectAccessToStaticField, IndirectAccessToStaticMethod, IndirectAccessToStaticType, InheritedDefaultMethodConflictsWithOtherInherited, InheritedFieldHidesEnclosingName, InheritedIncompatibleReturnType, InheritedMethodHidesEnclosingName, InheritedMethodReducesVisibility, InheritedParameterLackingNonNullAnnotation, InheritedTypeHidesEnclosingName, InitializerMustCompleteNormally, InstanceFieldDuringConstructorInvocation, InstanceMethodDuringConstructorInvocation, InterfaceAmbiguous, InterfaceCannotHaveConstructors, InterfaceCannotHaveInitializers, InterfaceInheritedNameHidesEnclosingName, InterfaceInternalNameProvided, InterfaceNotFound, InterfaceNotFunctionalInterface, InterfaceNotVisible, InterfaceStaticMethodInvocationNotBelow18, InterfaceSuperInvocationNotBelow18, Internal, InternalTypeNameProvided, IntersectionCastNotBelow18, InvalidAnnotationMemberType, InvalidArrayConstructorReference, InvalidBinary, InvalidBreak, InvalidCatchBlockSequence, InvalidCharacterConstant, InvalidClassInstantiation, InvalidContinue, InvalidDigit, InvalidEncoding, InvalidEscape, InvalidExplicitConstructorCall, InvalidExpressionAsStatement, InvalidFileNameForPackageAnnotations, InvalidFloat, InvalidHexa, InvalidHighSurrogate, InvalidInput, InvalidLowSurrogate, InvalidNullToSynchronized, InvalidOctal, InvalidOpensStatement, InvalidOperator, InvalidParameterizedExceptionType, InvalidParenthesizedExpression, InvalidServiceImplType, InvalidServiceIntfType, InvalidTypeArguments, InvalidTypeExpression, InvalidTypeForCollection, InvalidTypeForCollectionTarget14, InvalidTypeForStaticImport, InvalidTypeToSynchronized, InvalidTypeVariableExceptionType, InvalidUnaryExpression, InvalidUnicodeEscape, InvalidUnionTypeReferenceSequence, InvalidUsageOfAnnotationDeclarations, InvalidUsageOfAnnotations, InvalidUsageOfEnumDeclarations, InvalidUsageOfForeachStatements, InvalidUsageOfStaticImports, InvalidUsageOfTypeAnnotations, InvalidUsageOfTypeArguments, InvalidUsageOfTypeParameters, InvalidUsageOfTypeParametersForAnnotationDeclaration, InvalidUsageOfTypeParametersForEnumDeclaration, InvalidUsageOfVarargs, InvalidUsageOfWildcard, InvalidVoidExpression, IsClassPathCorrect, Javadoc, JavadocAmbiguousConstructor, JavadocAmbiguousField, JavadocAmbiguousMethod, JavadocAmbiguousMethodReference, JavadocAmbiguousType, JavadocDuplicateParamName, JavadocDuplicateProvidesTag, JavadocDuplicateReturnTag, JavadocDuplicateTag, JavadocDuplicateThrowsClassName, JavadocDuplicateUsesTag, JavadocEmptyReturnTag, JavadocGenericConstructorTypeArgumentMismatch, JavadocGenericMethodTypeArgumentMismatch, JavadocHiddenReference, JavadocIncorrectArityForParameterizedConstructor, JavadocIncorrectArityForParameterizedMethod, JavadocInheritedFieldHidesEnclosingName, JavadocInheritedMethodHidesEnclosingName, JavadocInheritedNameHidesEnclosingTypeName, JavadocInternalTypeNameProvided, JavadocInvalidMemberTypeQualification, JavadocInvalidModule, JavadocInvalidModuleQualification, JavadocInvalidParamName, JavadocInvalidParamTagName, JavadocInvalidParamTagTypeParameter, JavadocInvalidProvidesClass, JavadocInvalidProvidesClassName, JavadocInvalidSeeArgs, JavadocInvalidSeeHref, JavadocInvalidSeeReference, JavadocInvalidSeeUrlReference, JavadocInvalidSnippet, JavadocInvalidSnippetContentNewLine, JavadocInvalidSnippetDuplicateRegions, JavadocInvalidSnippetMissingColon, JavadocInvalidSnippetRegexSubstringTogether, JavadocInvalidSnippetRegionNotClosed, JavadocInvalidTag, JavadocInvalidThrowsClass, JavadocInvalidThrowsClassName, JavadocInvalidUsesClass, JavadocInvalidUsesClassName, JavadocInvalidValueReference, JavadocMalformedSeeReference, JavadocMessagePrefix, JavadocMissing, JavadocMissingHashCharacter, JavadocMissingIdentifier, JavadocMissingParamName, JavadocMissingParamTag, JavadocMissingProvidesClassName, JavadocMissingProvidesTag, JavadocMissingReturnTag, JavadocMissingSeeReference, JavadocMissingTagDescription, JavadocMissingThrowsClassName, JavadocMissingThrowsTag, JavadocMissingUsesClassName, JavadocMissingUsesTag, JavadocNoMessageSendOnArrayType, JavadocNoMessageSendOnBaseType, JavadocNonGenericConstructor, JavadocNonGenericMethod, JavadocNonStaticTypeFromStaticInvocation, JavadocNotAccessibleType, JavadocNotVisibleConstructor, JavadocNotVisibleField, JavadocNotVisibleMethod, JavadocNotVisibleType, JavadocParameterizedConstructorArgumentTypeMismatch, JavadocParameterizedMethodArgumentTypeMismatch, JavadocParameterMismatch, JavadocTypeArgumentsForRawGenericConstructor, JavadocTypeArgumentsForRawGenericMethod, JavadocUndefinedConstructor, JavadocUndefinedField, JavadocUndefinedMethod, JavadocUndefinedType, JavadocUnexpectedTag, JavadocUnexpectedText, JavadocUnterminatedInlineTag, JavadocUsingDeprecatedConstructor, JavadocUsingDeprecatedField, JavadocUsingDeprecatedMethod, JavadocUsingDeprecatedType, LambdaDescriptorMentionsUnmentionable, LambdaExpressionNotBelow18, lambdaParameterTypeMismatched, LambdaRedeclaresArgument, LambdaRedeclaresLocal, LambdaShapeComputationError, lambdaSignatureMismatched, LocalReferencedInGuardMustBeEffectivelyFinal, LocalStaticsIllegalVisibilityModifierForInterfaceLocalType, LocalVariableCannotBeNull, LocalVariableCanOnlyBeNull, LocalVariableHidingField, LocalVariableHidingLocalVariable, LocalVariableIsNeverUsed, LocalVariableMayBeNull, MaskedCatch, MethodButWithConstructorName, MethodCanBePotentiallyStatic, MethodCanBeStatic, MethodMissingDeprecatedAnnotation, MethodMustOverride, MethodMustOverrideOrImplement, MethodNameClash, MethodNameClashHidden, MethodReducesVisibility, MethodReferenceNotBelow18, MethodReferenceSwingsBothWays, MethodRelated, MethodRequiresBody, MethodReturnsVoid, MethodVarargsArgumentNeedCast, MisplacedTypeAnnotations, MissingArgumentsForParameterizedMemberType, MissingDefaultCase, MissingEnclosingInstance, MissingEnclosingInstanceForConstructorCall, MissingEnumConstantCase, MissingEnumConstantCaseDespiteDefault, MissingEnumDefaultCase, MissingNonNullByDefaultAnnotationOnPackage, MissingNonNullByDefaultAnnotationOnType, MissingNullAnnotationImplicitlyUsed, MissingOverrideAnnotation, MissingOverrideAnnotationForInterfaceMethodImplementation, MissingRequiresTransitiveForTypeInAPI, MissingReturnType, MissingSemiColon, MissingSerialVersion, MissingSynchronizedModifierInInheritedMethod, MissingTypeInConstructor, MissingTypeInLambda, MissingTypeInMethod, MissingValueForAnnotationMember, MissingValueFromLambda, ModuleRelated, MultiCatchNotBelow17, MultiConstantCaseLabelsNotSupported, MultipleFunctionalInterfaces, MustDefineEitherDimensionExpressionsOrInitializer, MustSpecifyPackage, NativeMethodsCannotBeStrictfp, NeedToEmulateConstructorAccess, NeedToEmulateFieldReadAccess, NeedToEmulateFieldWriteAccess, NeedToEmulateMethodAccess, NestedServiceImpl, NoAdditionalBoundAfterTypeVariable, NoFieldOnBaseType, NoGenericLambda, NoImplicitStringConversionForCharArrayExpression, NoMessageSendOnArrayType, NoMessageSendOnBaseType, NonBlankFinalLocalAssignment, NonConstantExpression, NonDenotableTypeArgumentForAnonymousDiamond, NonExternalizedStringLiteral, NonGenericConstructor, NonGenericMethod, NonGenericType, NonNullDefaultDetailIsNotEvaluated, NonNullExpressionComparisonYieldsFalse, NonNullLocalVariableComparisonYieldsFalse, NonNullMessageSendComparisonYieldsFalse, NonNullMethodTypeVariableFromLegacyMethod, NonNullSpecdFieldComparisonYieldsFalse, NonNullTypeVariableFromLegacyMethod, NonPublicTypeInAPI, NonStaticAccessToStaticField, NonStaticAccessToStaticMethod, NonStaticContextForEnumMemberType, NonStaticFieldFromStaticInvocation, NonStaticOrAlienTypeReceiver, NonStaticTypeFromStaticInvocation, NoSuperInInterfaceContext, NotAccessibleConstructor, NotAccessibleField, NotAccessibleMethod, NotAccessiblePackage, NotAccessibleType, NotAnnotationType, NotExportedTypeInAPI, NotVisibleConstructor, NotVisibleConstructorInDefaultConstructor, NotVisibleConstructorInImplicitConstructorCall, NotVisibleField, NotVisibleMethod, NotVisibleType, NullableFieldReference, NullAnnotationAtQualifyingType, NullAnnotationUnsupportedLocation, NullAnnotationUnsupportedLocationAtType, NullExpressionReference, NullityMismatchAgainstFreeTypeVariable, NullityMismatchingTypeAnnotation, NullityMismatchingTypeAnnotationSuperHint, NullityMismatchTypeArgument, NullityUncheckedTypeAnnotationDetail, NullityUncheckedTypeAnnotationDetailSuperHint, NullLocalVariableComparisonYieldsFalse, NullLocalVariableInstanceofYieldsFalse, NullLocalVariableReference, NullNotCompatibleToFreeTypeVariable, NullSourceString, NullUnboxing, NumericValueOutOfRange, ObjectCannotBeGeneric, ObjectCannotHaveSuperTypes, ObjectHasNoSuperclass, ObjectMustBeClass, OnlyOnePatternCaseLabelAllowed, OuterLocalMustBeEffectivelyFinal, OuterLocalMustBeFinal, OverridingDeprecatedMethod, OverridingDeprecatedSinceVersionMethod, OverridingMethodWithoutSuperInvocation, OverridingNonVisibleMethod, OverridingTerminallyDeprecatedMethod, OverridingTerminallyDeprecatedSinceVersionMethod, PackageCollidesWithType, PackageDoesNotExistOrIsEmpty, PackageIsNotExpectedPackage, ParameterAssignment, ParameterizedConstructorArgumentTypeMismatch, ParameterizedMethodArgumentTypeMismatch, ParameterLackingNonNullAnnotation, ParameterLackingNullableAnnotation, ParameterMismatch, ParsingError, ParsingErrorDeleteToken, ParsingErrorDeleteTokens, ParsingErrorInsertToComplete, ParsingErrorInsertToCompletePhrase, ParsingErrorInsertToCompleteScope, ParsingErrorInsertTokenAfter, ParsingErrorInsertTokenBefore, ParsingErrorInvalidToken, ParsingErrorMergeTokens, ParsingErrorMisplacedConstruct, ParsingErrorNoSuggestion, ParsingErrorNoSuggestionForTokens, ParsingErrorOnKeyword, ParsingErrorOnKeywordNoSuggestion, ParsingErrorReplaceTokens, ParsingErrorUnexpectedEOF, PatternDominated, PatternSubtypeOfExpression, PatternTypeMismatch, PatternVariableNotInScope, PatternVariableRedeclared, PatternVariableRedefined, PolymorphicMethodNotBelow17, PossibleAccidentalBooleanAssignment, PotentialHeapPollutionFromVararg, PotentiallyUnclosedCloseable, PotentiallyUnclosedCloseableAtExit, PotentialNullExpressionReference, PotentialNullLocalVariableReference, PotentialNullMessageSendReference, PotentialNullUnboxing, PreviewAPIUsed, PreviewFeatureDisabled, PreviewFeatureNotSupported, PreviewFeaturesNotAllowed, PreviewFeatureUsed, PreviewRelated, ProblemNotAnalysed, ProviderMethodOrConstructorRequiredForServiceImpl, PublicClassMustMatchFileName, RawMemberTypeCannotBeParameterized, RawTypeReference, RecordAccessorMethodHasThrowsClause, RecordAccessorMethodShouldBePublic, RecordAccessorMethodShouldNotBeGeneric, RecordAccessorMethodShouldNotBeStatic, RecordCannotDefineRecordInLocalType, RecordCannotExtendRecord, RecordCanonicalConstructorHasExplicitConstructorCall, RecordCanonicalConstructorHasReturnStatement, RecordCanonicalConstructorHasThrowsClause, RecordCanonicalConstructorShouldNotBeGeneric, RecordCanonicalConstructorVisibilityReduced, RecordCompactConstructorHasExplicitConstructorCall, RecordCompactConstructorHasReturnStatement, RecordComponentCannotBeVoid, RecordComponentsCannotHaveModifiers, RecordDuplicateComponent, RecordErasureIncompatibilityInCanonicalConstructor, RecordIllegalAccessorReturnType, RecordIllegalComponentNameInRecord, RecordIllegalExplicitFinalFieldAssignInCompactConstructor, RecordIllegalExtendedDimensionsForRecordComponent, RecordIllegalModifierForInnerRecord, RecordIllegalModifierForLocalRecord, RecordIllegalModifierForRecord, RecordIllegalNativeModifierInRecord, RecordIllegalParameterNameInCanonicalConstructor, RecordIllegalStaticModifierForLocalClassOrInterface, RecordIllegalVararg, RecordInstanceInitializerBlockInRecord, RecordMissingExplicitConstructorCallInNonCanonicalConstructor, RecordMultipleCanonicalConstructors, RecordNestedRecordInherentlyStatic, RecordNonStaticFieldDeclarationInRecord, RecordPatternMismatch, RecordStaticReferenceToOuterLocalVariable, RecursiveConstructorInvocation, RedefinedArgument, RedefinedLocal, RedundantLocalVariableNullAssignment, RedundantNullAnnotation, RedundantNullCheckAgainstNonNullType, RedundantNullCheckOnConstNonNullField, RedundantNullCheckOnField, RedundantNullCheckOnNonNullExpression, RedundantNullCheckOnNonNullLocalVariable, RedundantNullCheckOnNonNullMessageSend, RedundantNullCheckOnNonNullSpecdField, RedundantNullCheckOnNullLocalVariable, RedundantNullCheckOnSpecdNonNullLocalVariable, RedundantNullDefaultAnnotation, RedundantNullDefaultAnnotationField, RedundantNullDefaultAnnotationLocal, RedundantNullDefaultAnnotationMethod, RedundantNullDefaultAnnotationModule, RedundantNullDefaultAnnotationPackage, RedundantNullDefaultAnnotationType, RedundantSpecificationOfTypeArguments, RedundantSuperinterface, ReferenceExpressionParameterNullityMismatch, ReferenceExpressionParameterNullityUnchecked, ReferenceExpressionReturnNullRedef, ReferenceExpressionReturnNullRedefUnchecked, ReferenceToForwardField, ReferenceToForwardTypeVariable, RepeatableAnnotationTypeIsDocumented, RepeatableAnnotationTypeIsInherited, RepeatableAnnotationTypeTargetMismatch, RepeatableAnnotationWithRepeatingContainerAnnotation, RepeatedAnnotationWithContainerAnnotation, RequiredNonNullButProvidedFreeTypeVariable, RequiredNonNullButProvidedNull, RequiredNonNullButProvidedPotentialNull, RequiredNonNullButProvidedSpecdNullable, RequiredNonNullButProvidedUnknown, ResourceHasToImplementAutoCloseable, RestrictedTypeName, ReturnTypeAmbiguous, ReturnTypeCannotBeVoidArray, ReturnTypeInheritedNameHidesEnclosingName, ReturnTypeInternalNameProvided, ReturnTypeMismatch, ReturnTypeNotFound, ReturnTypeNotVisible, SafeVarargsOnFixedArityMethod, SafeVarargsOnNonFinalInstanceMethod, SafeVarargsOnSyntheticRecordAccessor, SealedAnonymousClassCannotExtendSealedType, SealedDisAllowedNonSealedModifierInClass, SealedDisAllowedNonSealedModifierInInterface, SealedDuplicateTypeInPermits, SealedInterfaceIsSealedAndNonSealed, SealedLocalDirectSuperTypeSealed, SealedMissingClassModifier, SealedMissingInterfaceModifier, SealedMissingSealedModifier, SealedNotDirectSuperClass, SealedNotDirectSuperInterface, SealedPermittedTypeOutsideOfModule, SealedPermittedTypeOutsideOfPackage, SealedSealedTypeMissingPermits, SealedSuperClassDoesNotPermit, SealedSuperInterfaceDoesNotPermit, SealedSuperTypeDisallowed, SealedSuperTypeInDifferentPackage, ServiceImplDefaultConstructorNotPublic, ServiceImplNotDefinedByModule, ShouldImplementHashcode, ShouldReturnValue, ShouldReturnValueHintMissingDefault, SpecdNonNullLocalVariableComparisonYieldsFalse, StaticInheritedMethodConflicts, StaticInterfaceMethodNotBelow18, StaticMemberOfParameterizedType, StaticMethodRequested, StaticMethodShouldBeAccessedStatically, StrictfpNotRequired, StringConstantIsExceedingUtf8Limit, SuperAccessCannotBypassDirectSuper, SuperCallCannotBypassOverride, SuperclassAmbiguous, SuperclassInheritedNameHidesEnclosingName, SuperclassInternalNameProvided, SuperclassMustBeAClass, SuperclassNotFound, SuperclassNotVisible, SuperfluousSemicolon, SuperInterfaceMustBeAnInterface, SuperInterfacesCollide, SuperTypeUsingWildcard, SwitchExpressionaYieldSwitchLabeledBlockCompletesNormally, SwitchExpressionBreakMissingValue, SwitchExpressionIllegalLastStatement, SwitchExpressionLastStatementCompletesNormally, SwitchExpressionMissingDefaultCase, SwitchExpressionMissingEnumConstantCase, SwitchExpressionsBreakOutOfSwitchExpression, SwitchExpressionsContinueOutOfSwitchExpression, SwitchExpressionsEmptySwitchBlock, SwitchExpressionsIncompatibleResultExpressionTypes, SwitchExpressionsNoResultExpression, SwitchExpressionsNotSupported, SwitchExpressionsReturnWithinSwitchExpression, SwitchExpressionSwitchLabeledBlockCompletesNormally, SwitchExpressionsYieldBreakNotAllowed, SwitchExpressionsYieldEmptySwitchBlock, SwitchExpressionsYieldIllegalLastStatement, SwitchExpressionsYieldIllegalStatement, SwitchExpressionsYieldIncompatibleResultExpressionTypes, SwitchExpressionsYieldLastStatementCompletesNormally, SwitchExpressionsYieldMissingDefaultCase, SwitchExpressionsYieldMissingEnumConstantCase, SwitchExpressionsYieldMissingValue, SwitchExpressionsYieldNoResultExpression, SwitchExpressionsYieldOutsideSwitchExpression, SwitchExpressionsYieldRestrictedGeneralWarning, SwitchExpressionsYieldTrailingSwitchLabels, SwitchExpressionsYieldTypeDeclarationError, SwitchExpressionsYieldTypeDeclarationWarning, SwitchExpressionsYieldUnqualifiedMethodError, SwitchExpressionsYieldUnqualifiedMethodWarning, SwitchExpressionTrailingSwitchLabels, switchMixedCase, SwitchOnEnumNotBelow15, SwitchOnStringsNotBelow17, SwitchPreviewMixedCase, Syntax, TargetTypeNotAFunctionalInterface, Task, ThisInStaticContext, ThisSuperDuringConstructorInvocation, ToleratedMisplacedTypeAnnotations, TooManyArgumentSlots, TooManyArrayDimensions, TooManyBytesForStringConstant, TooManyConstantsInConstantPool, TooManyFields, TooManyLocalVariableSlots, TooManyMethods, TooManyParametersForSyntheticMethod, TooManySyntheticArgumentSlots, TypeAnnotationAtQualifiedName, TypeArgumentMismatch, TypeArgumentsForRawGenericConstructor, TypeArgumentsForRawGenericMethod, TypeCollidesWithPackage, TypeHidingType, TypeHidingTypeParameterFromMethod, TypeHidingTypeParameterFromType, TypeMismatch, TypeMissingDeprecatedAnnotation, TypeParameterHidingType, TypeRelated, UnboxingConversion, UncheckedAccessOfValueOfFreeTypeVariable, Unclassified, UnclosedCloseable, UnclosedCloseableAtExit, UndefinedAnnotationMember, UndefinedConstructor, UndefinedConstructorInDefaultConstructor, UndefinedConstructorInImplicitConstructorCall, UndefinedField, UndefinedLabel, UndefinedMethod, UndefinedModule, UndefinedModuleAddReads, UndefinedName, UndefinedType, UndefinedTypeVariable, UnderscoresInLiteralsNotBelow17, UndocumentedEmptyBlock, UnexpectedStaticModifierForField, UnexpectedStaticModifierForMethod, UnexpectedTypeinRecordPattern, UnexpectedTypeinSwitchPattern, UnhandledException, UnhandledExceptionInDefaultConstructor, UnhandledExceptionInImplicitConstructorCall, UnhandledExceptionOnAutoClose, UnhandledWarningToken, UninitializedBlankFinalField, UninitializedBlankFinalFieldHintMissingDefault, UninitializedFreeTypeVariableField, UninitializedFreeTypeVariableFieldHintMissingDefault, UninitializedLocalVariable, UninitializedLocalVariableHintMissingDefault, UninitializedNonNullField, UninitializedNonNullFieldHintMissingDefault, UninternedIdentityComparison, UnlikelyCollectionMethodArgumentType, UnlikelyEqualsArgumentType, UnmatchedBracket, UnnamedPackageInNamedModule, UnnecessaryArgumentCast, UnnecessaryCast, UnnecessaryElse, UnnecessaryInstanceof, UnnecessaryNLSTag, UnnecessaryNullCaseInSwitchOverNonNull, UnqualifiedFieldAccess, UnreachableCatch, UnresolvedVariable, UnsafeCast, UnsafeElementTypeConversion, UnsafeGenericArrayForVarargs, UnsafeGenericCast, UnsafeNullnessCast, UnsafeRawConstructorInvocation, UnsafeRawFieldAssignment, UnsafeRawGenericConstructorInvocation, UnsafeRawGenericMethodInvocation, UnsafeRawMethodInvocation, UnsafeReturnTypeOverride, UnsafeTypeConversion, UnstableAutoModuleName, UnterminatedComment, UnterminatedString, UnterminatedTextBlock, UnusedConstructorDeclaredThrownException, UnusedImport, UnusedLabel, UnusedMethodDeclaredThrownException, UnusedObjectAllocation, UnusedPrivateConstructor, UnusedPrivateField, UnusedPrivateMethod, UnusedPrivateType, UnusedTypeArgumentsForConstructorInvocation, UnusedTypeArgumentsForMethodInvocation, UnusedTypeParameter, UnusedWarningToken, UseAssertAsAnIdentifier, UseEnumAsAnIdentifier, UsingDeprecatedConstructor, UsingDeprecatedField, UsingDeprecatedMethod, UsingDeprecatedModule, UsingDeprecatedPackage, UsingDeprecatedSinceVersionConstructor, UsingDeprecatedSinceVersionField, UsingDeprecatedSinceVersionMethod, UsingDeprecatedSinceVersionModule, UsingDeprecatedSinceVersionPackage, UsingDeprecatedSinceVersionType, UsingDeprecatedType, UsingTerminallyDeprecatedConstructor, UsingTerminallyDeprecatedField, UsingTerminallyDeprecatedMethod, UsingTerminallyDeprecatedModule, UsingTerminallyDeprecatedPackage, UsingTerminallyDeprecatedSinceVersionConstructor, UsingTerminallyDeprecatedSinceVersionField, UsingTerminallyDeprecatedSinceVersionMethod, UsingTerminallyDeprecatedSinceVersionModule, UsingTerminallyDeprecatedSinceVersionPackage, UsingTerminallyDeprecatedSinceVersionType, UsingTerminallyDeprecatedType, VarargsConflict, VarargsElementTypeNotVisible, VarargsElementTypeNotVisibleForConstructor, VarCannotBeMixedWithNonVarParams, VariableTypeCannotBeVoid, VariableTypeCannotBeVoidArray, VarIsNotAllowedHere, VarIsReserved, VarIsReservedInFuture, VarLocalCannotBeArray, VarLocalCannotBeArrayInitalizers, VarLocalCannotBeLambda, VarLocalCannotBeMethodReference, VarLocalInitializedToNull, VarLocalInitializedToVoid, VarLocalMultipleDeclarators, VarLocalReferencesItself, VarLocalWithoutInitizalier, VoidMethodReturnsValue, WildcardConstructorInvocation, WildcardFieldAssignment, WildcardMethodInvocation
Constructor Summary
ConstructorDescriptionJavaProblem
(int category, int problem, String message, int start, int end, int line) Constructor without quick fixes.JavaProblem
(int category, int problem, String message, int start, int end, int line, IQuickFix... fixes) Constructor withIQuickFix
.JavaProblem
(int category, int problem, String message, int start, int end, int line, String... fixIds) Constructor with quick fix IDs.Method Summary
Modifier and TypeMethodDescriptionvoid
Add an array of quick fixes.void
Add an array of quick fix IDs.boolean
Checks for equality.String[]
Answer back the original arguments recorded into the problem.int
Returns the integer identifying the category of this problem.String[]
Returns the names of the extra marker attributes associated to this problem when persisted into a marker by the JavaBuilder.Object[]
Returns the respective values for the extra marker attributes associated to this problem when persisted into a marker by the JavaBuilder.int
getID()
Returns the problem idabstract String
Returns the marker type associated to this problem, if it gets persisted into a marker by the JavaBuilder Standard Java problems are associated to marker type "org.eclipse.jdt.core.problem").Answer a localized, human-readable message string which describes the problem.char[]
Answer the file name in which the problem was found.int
Answer the end position of the problem (inclusive), or -1 if unknown.int
Answer the line number in source where the problem begins.int
Answer the start position of the problem (inclusive), or -1 if unknown.int
hashCode()
Gets the hash code of this instance.void
setOriginatingFileName
(char[] name) Set the name of the file where the problem was found.void
setOriginatingFileName
(String name) Set the name of the file where the problem was found.void
setSourceEnd
(int sourceEnd) Set the end position of the problem (inclusive), or -1 if unknown.void
setSourceLineNumber
(int lineNumber) Set the line number in source where the problem begins.void
setSourceStart
(int sourceStart) Set the start position of the problem (inclusive), or -1 if unknown.Methods inherited from class org.eclipse.jdt.core.compiler.CategorizedProblem
isInfo
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.eclipse.jdt.core.compiler.IProblem
isError, isWarning
Field Details
CAT_SYNTAX
public static final int CAT_SYNTAXCategory for problems related to syntax of IIZI annotations.- See Also:
CAT_REF
public static final int CAT_REFCategory for problems related to reference problems in IIZI annotations.- See Also:
CAT_TYPE
public static final int CAT_TYPECategory for problems related to class type referenced by IIZI annotations.- See Also:
CAT_FIELD_VARIABLE
public static final int CAT_FIELD_VARIABLECategory for problems related to field or variables referenced by IIZI annotations.- See Also:
CAT_OPTIONAL_FIELD_VARIABLE
public static final int CAT_OPTIONAL_FIELD_VARIABLEOptional annotated cast to field or variables referenced by IIZI annotations.- See Also:
EMPTY_KEYS
EMPTY_VALUES
UNASSIGNED
public static final int UNASSIGNED- See Also:
category
protected final int categoryproblem
protected final int problem
Constructor Details
JavaProblem
Constructor without quick fixes.- Parameters:
category
- The problem categoryproblem
- The problem IDmessage
- The message associated with the problemstart
- The problem location startend
- The problem location endline
- The (text file) line number
JavaProblem
public JavaProblem(int category, int problem, String message, int start, int end, int line, String... fixIds) Constructor with quick fix IDs.- Parameters:
category
- The problem categoryproblem
- The problem IDmessage
- The message associated with the problemstart
- The problem location startend
- The problem location endline
- The (text file) line numberfixIds
- The quick fix IDs associated with the problem
JavaProblem
public JavaProblem(int category, int problem, String message, int start, int end, int line, IQuickFix... fixes) Constructor withIQuickFix
.- Parameters:
category
- The problem categoryproblem
- The problem IDmessage
- The message associated with the problemstart
- The problem location startend
- The problem location endline
- The (text file) line numberfixes
- The quick fixes associated with the problem
Method Details
equals
Checks for equality.hashCode
public int hashCode()Gets the hash code of this instance.getCategoryID
public int getCategoryID()Returns the integer identifying the category of this problem. Categories, like problem IDs are defined in the context of some marker type. Custom implementations ofCategorizedProblem
may choose arbitrary values for problem/category IDs, as long as they are associated with a different marker type. Standard Java problem markers (i.e. marker type is "org.eclipse.jdt.core.problem") carry an attribute "categoryId" persisting the originating problem category ID as defined by this method).- Specified by:
getCategoryID
in classorg.eclipse.jdt.core.compiler.CategorizedProblem
- Returns:
- id - an integer identifying the category of this problem
getMarkerType
Returns the marker type associated to this problem, if it gets persisted into a marker by the JavaBuilder Standard Java problems are associated to marker type "org.eclipse.jdt.core.problem"). Note: problem markers are expected to extend "org.eclipse.core.resources.problemmarker" marker type.- Specified by:
getMarkerType
in classorg.eclipse.jdt.core.compiler.CategorizedProblem
- Returns:
- The type of the marker which would be associated to the problem.
addFixId
Add an array of quick fix IDs. Create the ArrayList if necessary.- Parameters:
fixIds
- Array of IDs.
addFixId
Add an array of quick fixes. Create the ArrayList if necessary.- Parameters:
fixes
- Array ofIQuickFix
getExtraMarkerAttributeNames
Returns the names of the extra marker attributes associated to this problem when persisted into a marker by the JavaBuilder. Extra attributes are only optional, and are allowing client customization of generated markers. By default, no EXTRA attributes is persisted, and a categorized problem only persists the following attributes:IMarker#MESSAGE
->IProblem.getMessage()
IMarker#SEVERITY
->IMarker#SEVERITY_ERROR
orIMarker#SEVERITY_WARNING
depending onIProblem.isError()
orIProblem.isWarning()
IJavaModelMarker#ID
->IProblem.getID()
IMarker#CHAR_START
->IProblem.getSourceStart()
IMarker#CHAR_END
->IProblem.getSourceEnd()
IMarker#LINE_NUMBER
->IProblem.getSourceLineNumber()
IJavaModelMarker#ARGUMENTS
-> someString[]
used to compute quick fixesIJavaModelMarker#CATEGORY_ID
->CategorizedProblem.getCategoryID()
IMarker#setAttributes(String[], Object[])
, and there must be as many names as values according togetExtraMarkerAttributeValues()
. Note that extra marker attributes will be inserted after default ones (as described inCategorizedProblem.getMarkerType()
, and thus could be used to override defaults.- Overrides:
getExtraMarkerAttributeNames
in classorg.eclipse.jdt.core.compiler.CategorizedProblem
- Returns:
- the names of the corresponding marker attributes
getExtraMarkerAttributeValues
Returns the respective values for the extra marker attributes associated to this problem when persisted into a marker by the JavaBuilder. Each value must correspond to a matching attribute name, as defined bygetExtraMarkerAttributeNames()
.The values must be eligible for marker creation, as defined by
IMarker#setAttributes(String[], Object[])
.- Overrides:
getExtraMarkerAttributeValues
in classorg.eclipse.jdt.core.compiler.CategorizedProblem
- Returns:
- the values of the corresponding extra marker attributes
getArguments
Answer back the original arguments recorded into the problem.- Returns:
- the original arguments recorded into the problem
getID
public int getID()Returns the problem id- Returns:
- the problem id
getMessage
Answer a localized, human-readable message string which describes the problem.- Returns:
- a localized, human-readable message string which describes the problem
setOriginatingFileName
public void setOriginatingFileName(char[] name) Set the name of the file where the problem was found.- Parameters:
name
- The file name
setOriginatingFileName
Set the name of the file where the problem was found.- Parameters:
name
- The file name
getOriginatingFileName
public char[] getOriginatingFileName()Answer the file name in which the problem was found.- Returns:
- the file name in which the problem was found
setSourceEnd
public void setSourceEnd(int sourceEnd) Set the end position of the problem (inclusive), or -1 if unknown. Used for shifting problem positions.- Parameters:
sourceEnd
- the given end position
setSourceLineNumber
public void setSourceLineNumber(int lineNumber) Set the line number in source where the problem begins.- Parameters:
lineNumber
- the given line number
setSourceStart
public void setSourceStart(int sourceStart) Set the start position of the problem (inclusive), or -1 if unknown. Used for shifting problem positions.- Parameters:
sourceStart
- the given start position
getSourceEnd
public int getSourceEnd()Answer the end position of the problem (inclusive), or -1 if unknown.- Returns:
- the end position of the problem (inclusive), or -1 if unknown
getSourceLineNumber
public int getSourceLineNumber()Answer the line number in source where the problem begins.- Returns:
- the line number in source where the problem begins
getSourceStart
public int getSourceStart()Answer the start position of the problem (inclusive), or -1 if unknown.- Returns:
- the start position of the problem (inclusive), or -1 if unknown