/******************************************************************************* * Copyright (c) 2000, 2004 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Common Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/cpl-v10.html * * Contributors: * IBM Corporation - initial API and implementation *******************************************************************************/ package org.eclipse.jdt.internal.compiler.lookup; import org.eclipse.jdt.internal.compiler.ast.ASTNode; public interface TagBits { // Tag bits in the tagBits int of every TypeBinding final int IsArrayType = ASTNode.Bit1; final int IsBaseType = ASTNode.Bit2; final int IsNestedType = ASTNode.Bit3; final int IsMemberType = ASTNode.Bit4; final int MemberTypeMask = IsNestedType | IsMemberType; final int IsLocalType = ASTNode.Bit5; final int LocalTypeMask = IsNestedType | IsLocalType; final int IsAnonymousType = ASTNode.Bit6; final int AnonymousTypeMask = LocalTypeMask | IsAnonymousType; final int IsBinaryBinding = ASTNode.Bit7; // for the type hierarchy check used by ClassScope final int BeginHierarchyCheck = ASTNode.Bit9; final int EndHierarchyCheck = ASTNode.Bit10; // test bit to see if default abstract methods were computed final int KnowsDefaultAbstractMethods = ASTNode.Bit11; // Reusable bit currently used by Scopes final int InterfaceVisited = ASTNode.Bit12; // test bits to see if parts of binary types are faulted final int AreFieldsComplete = ASTNode.Bit13; final int AreMethodsComplete = ASTNode.Bit14; // test bit to avoid asking a type for a member type (includes inherited member types) final int HasNoMemberTypes = ASTNode.Bit15; // test bit to identify if the type's hierarchy is inconsistent final int HierarchyHasProblems = ASTNode.Bit16; // set for parameterized type NOT of the form X<?,?> final int IsBoundParameterizedType = ASTNode.Bit24; // used by BinaryTypeBinding final int HasUnresolvedTypeVariables = ASTNode.Bit25; final int HasUnresolvedSuperclass = ASTNode.Bit26; final int HasUnresolvedSuperinterfaces = ASTNode.Bit27; final int HasUnresolvedEnclosingType = ASTNode.Bit28; final int HasUnresolvedMemberTypes = ASTNode.Bit29; final int HasTypeVariable = ASTNode.Bit30; // set either for type variables (direct) or parameterized types indirectly referencing type variables final int HasWildcard = ASTNode.Bit31; // set either for wildcards (direct) or parameterized types indirectly referencing wildcards }