Example usage for org.eclipse.jdt.internal.compiler.util HashtableOfObject HashtableOfObject

List of usage examples for org.eclipse.jdt.internal.compiler.util HashtableOfObject HashtableOfObject

Introduction

In this page you can find the example usage for org.eclipse.jdt.internal.compiler.util HashtableOfObject HashtableOfObject.

Prototype

public HashtableOfObject(int size) 

Source Link

Usage

From source file:org.eclipse.jdt.internal.compiler.lookup.MethodVerifier15.java

License:Open Source License

void verify() {
    if (this.type.isAnnotationType())
        this.type.detectAnnotationCycle();

    super.verify();

    reportRawReferences();/* w w w .ja v a2s. co  m*/

    for (int i = this.type.typeVariables.length; --i >= 0;) {
        TypeVariableBinding var = this.type.typeVariables[i];
        // must verify bounds if the variable has more than 1
        if (var.superInterfaces == Binding.NO_SUPERINTERFACES)
            continue;
        if (var.superInterfaces.length == 1 && var.superclass.id == TypeIds.T_JavaLangObject)
            continue;

        this.currentMethods = new HashtableOfObject(0);
        ReferenceBinding superclass = var.superclass();
        if (superclass.kind() == Binding.TYPE_PARAMETER)
            superclass = (ReferenceBinding) superclass.erasure();
        ReferenceBinding[] itsInterfaces = var.superInterfaces();
        ReferenceBinding[] superInterfaces = new ReferenceBinding[itsInterfaces.length];
        for (int j = itsInterfaces.length; --j >= 0;) {
            superInterfaces[j] = itsInterfaces[j].kind() == Binding.TYPE_PARAMETER
                    ? (ReferenceBinding) itsInterfaces[j].erasure()
                    : itsInterfaces[j];
        }
        computeInheritedMethods(superclass, superInterfaces);
        checkTypeVariableMethods(this.type.scope.referenceContext.typeParameters[i]);
    }
}