Java Code Examples for org.eclipse.jdt.internal.compiler.ast.TypeDeclaration#ENUM_DECL
The following examples show how to use
org.eclipse.jdt.internal.compiler.ast.TypeDeclaration#ENUM_DECL .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: Extractor.java From javaide with GNU General Public License v3.0 | 6 votes |
@NonNull public static ClassKind forType(@Nullable TypeDeclaration declaration) { if (declaration == null) { return CLASS; } switch (TypeDeclaration.kind(declaration.modifiers)) { case TypeDeclaration.INTERFACE_DECL: return INTERFACE; case TypeDeclaration.ANNOTATION_TYPE_DECL: return ANNOTATION; case TypeDeclaration.ENUM_DECL: return ENUM; default: return CLASS; } }
Example 2
Source File: SourceIndexerRequestor.java From Eclipse-Postfix-Code-Completion with Eclipse Public License 1.0 | 6 votes |
/** * @see ISourceElementRequestor#enterType(ISourceElementRequestor.TypeInfo) */ public void enterType(TypeInfo typeInfo) { // TODO (jerome) might want to merge the 4 methods switch (TypeDeclaration.kind(typeInfo.modifiers)) { case TypeDeclaration.CLASS_DECL: enterClass(typeInfo); break; case TypeDeclaration.ANNOTATION_TYPE_DECL: enterAnnotationType(typeInfo); break; case TypeDeclaration.INTERFACE_DECL: enterInterface(typeInfo); break; case TypeDeclaration.ENUM_DECL: enterEnum(typeInfo); break; } }
Example 3
Source File: NameLookup.java From Eclipse-Postfix-Code-Completion with Eclipse Public License 1.0 | 6 votes |
/** * Returns true if:<ul> * <li>the given type is an existing class and the flag's <code>ACCEPT_CLASSES</code> * bit is on * <li>the given type is an existing interface and the <code>ACCEPT_INTERFACES</code> * bit is on * <li>neither the <code>ACCEPT_CLASSES</code> or <code>ACCEPT_INTERFACES</code> * bit is on * </ul> * Otherwise, false is returned. */ protected boolean acceptType(IType type, int acceptFlags, boolean isSourceType) { if (acceptFlags == 0 || acceptFlags == ACCEPT_ALL) return true; // no flags or all flags, always accepted try { int kind = isSourceType ? TypeDeclaration.kind(((SourceTypeElementInfo) ((SourceType) type).getElementInfo()).getModifiers()) : TypeDeclaration.kind(((IBinaryType) ((BinaryType) type).getElementInfo()).getModifiers()); switch (kind) { case TypeDeclaration.CLASS_DECL : return (acceptFlags & ACCEPT_CLASSES) != 0; case TypeDeclaration.INTERFACE_DECL : return (acceptFlags & ACCEPT_INTERFACES) != 0; case TypeDeclaration.ENUM_DECL : return (acceptFlags & ACCEPT_ENUMS) != 0; default: //case IGenericType.ANNOTATION_TYPE : return (acceptFlags & ACCEPT_ANNOTATIONS) != 0; } } catch (JavaModelException npe) { return false; // the class is not present, do not accept. } }
Example 4
Source File: RecoveredType.java From Eclipse-Postfix-Code-Completion with Eclipse Public License 1.0 | 6 votes |
public RecoveredType(TypeDeclaration typeDeclaration, RecoveredElement parent, int bracketBalance){ super(typeDeclaration, parent, bracketBalance); this.typeDeclaration = typeDeclaration; if(typeDeclaration.allocation != null && typeDeclaration.allocation.type == null) { // an enum constant body can not exist if there is no opening brace this.foundOpeningBrace = true; } else { this.foundOpeningBrace = !bodyStartsAtHeaderEnd(); } this.insideEnumConstantPart = TypeDeclaration.kind(typeDeclaration.modifiers) == TypeDeclaration.ENUM_DECL; if(this.foundOpeningBrace) { this.bracketBalance++; } this.preserveContent = parser().methodRecoveryActivated || parser().statementRecoveryActivated; }
Example 5
Source File: JavaDerivedStateComputer.java From xtext-extras with Eclipse Public License 2.0 | 5 votes |
public JvmDeclaredType createType(TypeDeclaration type, String packageName) { JvmDeclaredType jvmType = null; switch (TypeDeclaration.kind(type.modifiers)) { case TypeDeclaration.CLASS_DECL: jvmType = TypesFactory.eINSTANCE.createJvmGenericType(); break; case TypeDeclaration.INTERFACE_DECL: jvmType = TypesFactory.eINSTANCE.createJvmGenericType(); ((JvmGenericType) jvmType).setInterface(true); break; case TypeDeclaration.ENUM_DECL: jvmType = TypesFactory.eINSTANCE.createJvmEnumerationType(); break; case TypeDeclaration.ANNOTATION_TYPE_DECL: jvmType = TypesFactory.eINSTANCE.createJvmAnnotationType(); break; default: throw new IllegalArgumentException("Cannot handle type " + type.toString()); } jvmType.setPackageName(packageName); jvmType.setSimpleName(String.valueOf(type.name)); if (jvmType instanceof JvmGenericType) { if (type.typeParameters != null) { for (TypeParameter typeParam : type.typeParameters) { JvmTypeParameter jvmTypeParam = TypesFactory.eINSTANCE.createJvmTypeParameter(); jvmTypeParam.setName(String.valueOf(typeParam.name)); ((JvmGenericType) jvmType).getTypeParameters().add(jvmTypeParam); } } } if (type.memberTypes != null) { for (TypeDeclaration nestedType : type.memberTypes) { JvmDeclaredType nested = createType(nestedType, null); jvmType.getMembers().add(nested); } } return jvmType; }
Example 6
Source File: ClassFileMatchLocator.java From Eclipse-Postfix-Code-Completion with Eclipse Public License 1.0 | 5 votes |
boolean matchTypeDeclaration(TypeDeclarationPattern pattern, Object binaryInfo, IBinaryType enclosingBinaryType) { if (!(binaryInfo instanceof IBinaryType)) return false; IBinaryType type = (IBinaryType) binaryInfo; char[] fullyQualifiedTypeName = convertClassFileFormat(type.getName()); boolean qualifiedPattern = pattern instanceof QualifiedTypeDeclarationPattern; if (pattern.enclosingTypeNames == null || qualifiedPattern) { char[] simpleName = (pattern.getMatchMode() == SearchPattern.R_PREFIX_MATCH) ? CharOperation.concat(pattern.simpleName, IIndexConstants.ONE_STAR) : pattern.simpleName; char[] pkg = qualifiedPattern ? ((QualifiedTypeDeclarationPattern)pattern).qualification : pattern.pkg; if (!checkTypeName(simpleName, pkg, fullyQualifiedTypeName, pattern.isCaseSensitive(), pattern.isCamelCase())) return false; } else { char[] enclosingTypeName = CharOperation.concatWith(pattern.enclosingTypeNames, '.'); char[] patternString = pattern.pkg == null ? enclosingTypeName : CharOperation.concat(pattern.pkg, enclosingTypeName, '.'); if (!checkTypeName(pattern.simpleName, patternString, fullyQualifiedTypeName, pattern.isCaseSensitive(), pattern.isCamelCase())) return false; } int kind = TypeDeclaration.kind(type.getModifiers()); switch (pattern.typeSuffix) { case CLASS_SUFFIX: return kind == TypeDeclaration.CLASS_DECL; case INTERFACE_SUFFIX: return kind == TypeDeclaration.INTERFACE_DECL; case ENUM_SUFFIX: return kind == TypeDeclaration.ENUM_DECL; case ANNOTATION_TYPE_SUFFIX: return kind == TypeDeclaration.ANNOTATION_TYPE_DECL; case CLASS_AND_INTERFACE_SUFFIX: return kind == TypeDeclaration.CLASS_DECL || kind == TypeDeclaration.INTERFACE_DECL; case CLASS_AND_ENUM_SUFFIX: return kind == TypeDeclaration.CLASS_DECL || kind == TypeDeclaration.ENUM_DECL; case INTERFACE_AND_ANNOTATION_SUFFIX: return kind == TypeDeclaration.INTERFACE_DECL || kind == TypeDeclaration.ANNOTATION_TYPE_DECL; case TYPE_SUFFIX: // nothing } return true; }
Example 7
Source File: HierarchyBinaryType.java From Eclipse-Postfix-Code-Completion with Eclipse Public License 1.0 | 5 votes |
public String toString() { StringBuffer buffer = new StringBuffer(); if (this.modifiers == ClassFileConstants.AccPublic) { buffer.append("public "); //$NON-NLS-1$ } switch (TypeDeclaration.kind(this.modifiers)) { case TypeDeclaration.CLASS_DECL : buffer.append("class "); //$NON-NLS-1$ break; case TypeDeclaration.INTERFACE_DECL : buffer.append("interface "); //$NON-NLS-1$ break; case TypeDeclaration.ENUM_DECL : buffer.append("enum "); //$NON-NLS-1$ break; } if (this.name != null) { buffer.append(this.name); } if (this.superclass != null) { buffer.append("\n extends "); //$NON-NLS-1$ buffer.append(this.superclass); } int length; if (this.superInterfaces != null && (length = this.superInterfaces.length) != 0) { buffer.append("\n implements "); //$NON-NLS-1$ for (int i = 0; i < length; i++) { buffer.append(this.superInterfaces[i]); if (i != length - 1) { buffer.append(", "); //$NON-NLS-1$ } } } return buffer.toString(); }
Example 8
Source File: HierarchyBuilder.java From Eclipse-Postfix-Code-Completion with Eclipse Public License 1.0 | 5 votes |
/** * Looks up and returns a handle for the given binary info. */ protected IType lookupBinaryHandle(IBinaryType typeInfo) { int flag; String qualifiedName; switch (TypeDeclaration.kind(typeInfo.getModifiers())) { case TypeDeclaration.CLASS_DECL : flag = NameLookup.ACCEPT_CLASSES; break; case TypeDeclaration.INTERFACE_DECL : flag = NameLookup.ACCEPT_INTERFACES; break; case TypeDeclaration.ENUM_DECL : flag = NameLookup.ACCEPT_ENUMS; break; default: //case IGenericType.ANNOTATION : flag = NameLookup.ACCEPT_ANNOTATIONS; break; } char[] bName = typeInfo.getName(); qualifiedName = new String(ClassFile.translatedName(bName)); if (qualifiedName.equals(this.focusQualifiedName)) return getType(); NameLookup.Answer answer = this.nameLookup.findType(qualifiedName, false, flag, true/* consider secondary types */, false/* do NOT wait for indexes */, false/*don't check restrictions*/, null); return answer == null || answer.type == null || !answer.type.isBinary() ? null : answer.type; }
Example 9
Source File: HierarchyBuilder.java From Eclipse-Postfix-Code-Completion with Eclipse Public License 1.0 | 4 votes |
/** * Connect the supplied type to its superclass & superinterfaces. * The superclass & superinterfaces are the identical binary or source types as * supplied by the name environment. */ public void connect( IGenericType type, IType typeHandle, IType superclassHandle, IType[] superinterfaceHandles) { /* * Temporary workaround for 1G2O5WK: ITPJCORE:WINNT - NullPointerException when selecting "Show in Type Hierarchy" for a inner class */ if (typeHandle == null) return; if (TypeHierarchy.DEBUG) { System.out.println( "Connecting: " + ((JavaElement) typeHandle).toStringWithAncestors()); //$NON-NLS-1$ System.out.println( " to superclass: " //$NON-NLS-1$ + (superclassHandle == null ? "<None>" //$NON-NLS-1$ : ((JavaElement) superclassHandle).toStringWithAncestors())); System.out.print(" and superinterfaces:"); //$NON-NLS-1$ if (superinterfaceHandles == null || superinterfaceHandles.length == 0) { System.out.println(" <None>"); //$NON-NLS-1$ } else { System.out.println(); for (int i = 0, length = superinterfaceHandles.length; i < length; i++) { if (superinterfaceHandles[i] == null) continue; System.out.println( " " + ((JavaElement) superinterfaceHandles[i]).toStringWithAncestors()); //$NON-NLS-1$ } } } // now do the caching switch (TypeDeclaration.kind(type.getModifiers())) { case TypeDeclaration.CLASS_DECL : case TypeDeclaration.ENUM_DECL : if (superclassHandle == null) { this.hierarchy.addRootClass(typeHandle); } else { this.hierarchy.cacheSuperclass(typeHandle, superclassHandle); } break; case TypeDeclaration.INTERFACE_DECL : case TypeDeclaration.ANNOTATION_TYPE_DECL : // https://bugs.eclipse.org/bugs/show_bug.cgi?id=329663 if (this.hierarchy.typeToSuperInterfaces.get(typeHandle) == null) this.hierarchy.addInterface(typeHandle); break; } if (superinterfaceHandles == null) { superinterfaceHandles = TypeHierarchy.NO_TYPE; } this.hierarchy.cacheSuperInterfaces(typeHandle, superinterfaceHandles); // record flags this.hierarchy.cacheFlags(typeHandle, type.getModifiers()); }
Example 10
Source File: SourceType.java From Eclipse-Postfix-Code-Completion with Eclipse Public License 1.0 | 4 votes |
/** * @see IType#isEnum() * @since 3.0 */ public boolean isEnum() throws JavaModelException { SourceTypeElementInfo info = (SourceTypeElementInfo) getElementInfo(); return TypeDeclaration.kind(info.getModifiers()) == TypeDeclaration.ENUM_DECL; }
Example 11
Source File: BinaryType.java From Eclipse-Postfix-Code-Completion with Eclipse Public License 1.0 | 4 votes |
/** * @see IType#isEnum() * @since 3.0 */ public boolean isEnum() throws JavaModelException { IBinaryType info = (IBinaryType) getElementInfo(); return TypeDeclaration.kind(info.getModifiers()) == TypeDeclaration.ENUM_DECL; }