blob: 613d437fd8773d9456a073d47265566d6b5208dc [file] [log] [blame]
/*******************************************************************************
* 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
}