aboutsummaryrefslogtreecommitdiffstats
path: root/org.eclipse.jdt.core
diff options
context:
space:
mode:
authorjhugunin <jhugunin>2003-01-03 19:13:35 +0000
committerjhugunin <jhugunin>2003-01-03 19:13:35 +0000
commit3fb52353cc63299ef545acd6540b90da084e35fa (patch)
tree7665086cd689a540b4ab6381c00b46c1716e1292 /org.eclipse.jdt.core
parentd43883b4f79b1e04783bc3c8726b3940ca964191 (diff)
downloadaspectj-3fb52353cc63299ef545acd6540b90da084e35fa.tar.gz
aspectj-3fb52353cc63299ef545acd6540b90da084e35fa.zip
horrible hack making this a subtype of SourceTypeBinding
Diffstat (limited to 'org.eclipse.jdt.core')
-rw-r--r--org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding.java23
1 files changed, 12 insertions, 11 deletions
diff --git a/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding.java b/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding.java
index d7bab4f9e..be7b1c096 100644
--- a/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding.java
+++ b/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding.java
@@ -7,6 +7,7 @@
*
* Contributors:
* IBM Corporation - initial API and implementation
+ * Palo Alto Research Center, Incorporated - AspectJ adaptation
******************************************************************************/
package org.eclipse.jdt.internal.compiler.lookup;
@@ -28,15 +29,15 @@ Non-public fields have accessors which should be used everywhere you expect the
null is NOT a valid value for a non-public field... it just means the field is not initialized.
*/
-
-public final class BinaryTypeBinding extends ReferenceBinding {
+//XXX extending SourceTypeBinding is a HORRIBLE hack
+public final class BinaryTypeBinding extends SourceTypeBinding {
// all of these fields are ONLY guaranteed to be initialized if accessed using their public accessor method
- private ReferenceBinding superclass;
+// private ReferenceBinding superclass;
private ReferenceBinding enclosingType;
- private ReferenceBinding[] superInterfaces;
- private FieldBinding[] fields;
- private MethodBinding[] methods;
- private ReferenceBinding[] memberTypes;
+// private ReferenceBinding[] superInterfaces;
+// private FieldBinding[] fields;
+// private MethodBinding[] methods;
+// private ReferenceBinding[] memberTypes;
// For the link with the principle structure
private LookupEnvironment environment;
@@ -285,7 +286,7 @@ public MethodBinding getExactConstructor(TypeBinding[] argumentTypes) {
// NOTE: the return type, arg & exception types of each method of a binary type are resolved when needed
// searches up the hierarchy as long as no potential (but not exact) match was found.
-public MethodBinding getExactMethod(char[] selector, TypeBinding[] argumentTypes) {
+public MethodBinding getExactMethodBase(char[] selector, TypeBinding[] argumentTypes) {
int argCount = argumentTypes.length;
int selectorLength = selector.length;
boolean foundNothing = true;
@@ -316,7 +317,7 @@ public MethodBinding getExactMethod(char[] selector, TypeBinding[] argumentTypes
}
// NOTE: the type of a field of a binary type is resolved when needed
-public FieldBinding getField(char[] fieldName) {
+public FieldBinding getFieldBase(char[] fieldName) {
int fieldLength = fieldName.length;
for (int f = fields.length; --f >= 0;) {
char[] name = fields[f].name;
@@ -327,7 +328,7 @@ public FieldBinding getField(char[] fieldName) {
}
// NOTE: the return type, arg & exception types of each method of a binary type are resolved when needed
-public MethodBinding[] getMethods(char[] selector) {
+public MethodBinding[] getMethodsBase(char[] selector) {
int count = 0;
int lastIndex = -1;
int selectorLength = selector.length;
@@ -386,7 +387,7 @@ private FieldBinding resolveTypeFor(FieldBinding field) {
field.type = resolveType(field.type);
return field;
}
-private MethodBinding resolveTypesFor(MethodBinding method) {
+public MethodBinding resolveTypesFor(MethodBinding method) {
if ((method.modifiers & AccUnresolved) == 0)
return method;