Community
Participate
Working Groups
int IllegalModifierForMemberEnum = TypeRelated + 753;
/** @since 3.1 */
int CannotDeclareEnumSpecialMethod = MethodRelated + 754;
int CannotUseQualifiedEnumConstantInCaseLabe = FieldRelated + 755;
/**
* Var args
this.isEnumConstant = true;
if (constantExpression instanceof NameReference
&& (constantExpression.bits & RestrictiveFlagMASK) == Binding.FIELD) {
if (constantExpression instanceof QualifiedNameReference) {
scope.problemReporter().cannotUseQualifiedEnumConstantInCaseLabel(constantExpression);
}
return Constant.fromValue(((NameReference)constantExpression).fieldBinding().id); // ordinal value
} else {
reference.sourceStart,
reference.sourceEnd);
public void cannotUseQualifiedEnumConstantInCaseLabel(Expression expression) {
this.handle(
IProblem.CannotUseQualifiedEnumConstantInCaseLabe,
NoArgument,
expression.sourceStart,
expression.sourceEnd);
public void caseExpressionMustBeConstant(Expression expression) {
IProblem.NonConstantExpression,
752 = Illegal modifier for the local enum {0}; only one of abstract or final is permitted
753 = Illegal modifier for the member enum {0}; only public, protected, private, static, abstract & final are permitted
754 = The enum {1} already defines the method {0}({2}) implicitly
755 = An case label must not be the qualified name of an enumeration constant
### VARARGS
800 = Extended dimensions are illegal for a variable argument
801 = Varargs argument {0} should be cast to {1} when passed to the method {2}({3}) from type {4}