summaryrefslogtreecommitdiffstats
path: root/dx/src/com/android/dx/rop/cst/CstMemberRef.java
diff options
context:
space:
mode:
Diffstat (limited to 'dx/src/com/android/dx/rop/cst/CstMemberRef.java')
-rw-r--r--dx/src/com/android/dx/rop/cst/CstMemberRef.java122
1 files changed, 0 insertions, 122 deletions
diff --git a/dx/src/com/android/dx/rop/cst/CstMemberRef.java b/dx/src/com/android/dx/rop/cst/CstMemberRef.java
deleted file mode 100644
index dbaad47eb..000000000
--- a/dx/src/com/android/dx/rop/cst/CstMemberRef.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*
- * Copyright (C) 2007 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.dx.rop.cst;
-
-/**
- * Constants of type <code>CONSTANT_*ref_info</code>.
- */
-public abstract class CstMemberRef extends TypedConstant {
- /** non-null; the type of the defining class */
- private final CstType definingClass;
-
- /** non-null; the name-and-type */
- private final CstNat nat;
-
- /**
- * Constructs an instance.
- *
- * @param definingClass non-null; the type of the defining class
- * @param nat non-null; the name-and-type
- */
- /*package*/ CstMemberRef(CstType definingClass, CstNat nat) {
- if (definingClass == null) {
- throw new NullPointerException("definingClass == null");
- }
-
- if (nat == null) {
- throw new NullPointerException("nat == null");
- }
-
- this.definingClass = definingClass;
- this.nat = nat;
- }
-
- /** {@inheritDoc} */
- @Override
- public final boolean equals(Object other) {
- if ((other == null) || (getClass() != other.getClass())) {
- return false;
- }
-
- CstMemberRef otherRef = (CstMemberRef) other;
- return definingClass.equals(otherRef.definingClass) &&
- nat.equals(otherRef.nat);
- }
-
- /** {@inheritDoc} */
- @Override
- public final int hashCode() {
- return (definingClass.hashCode() * 31) ^ nat.hashCode();
- }
-
- /**
- * {@inheritDoc}
- *
- * <p><b>Note:</b> This implementation just compares the defining
- * class and name, and it is up to subclasses to compare the rest
- * after calling <code>super.compareTo0()</code>.</p>
- */
- @Override
- protected int compareTo0(Constant other) {
- CstMemberRef otherMember = (CstMemberRef) other;
- int cmp = definingClass.compareTo(otherMember.definingClass);
-
- if (cmp != 0) {
- return cmp;
- }
-
- CstUtf8 thisName = nat.getName();
- CstUtf8 otherName = otherMember.nat.getName();
-
- return thisName.compareTo(otherName);
- }
-
- /** {@inheritDoc} */
- @Override
- public final String toString() {
- return typeName() + '{' + toHuman() + '}';
- }
-
- /** {@inheritDoc} */
- @Override
- public final boolean isCategory2() {
- return false;
- }
-
- /** {@inheritDoc} */
- public final String toHuman() {
- return definingClass.toHuman() + '.' + nat.toHuman();
- }
-
- /**
- * Gets the type of the defining class.
- *
- * @return non-null; the type of defining class
- */
- public final CstType getDefiningClass() {
- return definingClass;
- }
-
- /**
- * Gets the defining name-and-type.
- *
- * @return non-null; the name-and-type
- */
- public final CstNat getNat() {
- return nat;
- }
-}