// @(#)$Id: Field.refines-spec,v 1.5 2005/12/23 17:02:03 chalin Exp $ // Copyright (C) 2005 Iowa State University // // This file is part of the runtime library of the Java Modeling Language. // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public License // as published by the Free Software Foundation; either version 2.1, // of the License, or (at your option) any later version. // // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU // Lesser General Public License for more details. // // You should have received a copy of the GNU Lesser General Public License // along with JML; see the file LesserGPL.txt. If not, write to the Free // Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA // 02110-1301 USA. package java.lang.reflect; public final class Field extends AccessibleObject implements Member { Field(Class declaringClass, String name, Class type, int modifiers, int slot); Field copy(); public /*@ pure @*/ Class getDeclaringClass(); public /*@ pure @*/ String getName(); public /*@ pure @*/ int getModifiers(); public /*@ pure @*/ Class getType(); public /*@ pure @*/ boolean equals(/*@ nullable @*/ Object obj); public /*@ pure @*/ int hashCode(); public /*@ pure non_null @*/ String toString(); public /*@ pure @*/ Object get(Object obj) throws IllegalArgumentException, IllegalAccessException; public /*@ pure @*/ boolean getBoolean(Object obj) throws IllegalArgumentException, IllegalAccessException; public /*@ pure @*/ byte getByte(Object obj) throws IllegalArgumentException, IllegalAccessException; public /*@ pure @*/ char getChar(Object obj) throws IllegalArgumentException, IllegalAccessException; public /*@ pure @*/ short getShort(Object obj) throws IllegalArgumentException, IllegalAccessException; public /*@ pure @*/ int getInt(Object obj) throws IllegalArgumentException, IllegalAccessException; public /*@ pure @*/ long getLong(Object obj) throws IllegalArgumentException, IllegalAccessException; public /*@ pure @*/ float getFloat(Object obj) throws IllegalArgumentException, IllegalAccessException; public /*@ pure @*/ double getDouble(Object obj) throws IllegalArgumentException, IllegalAccessException; public void set(Object obj, Object value) throws IllegalArgumentException, IllegalAccessException; public void setBoolean(Object obj, boolean z) throws IllegalArgumentException, IllegalAccessException; public void setByte(Object obj, byte b) throws IllegalArgumentException, IllegalAccessException; public void setChar(Object obj, char c) throws IllegalArgumentException, IllegalAccessException; public void setShort(Object obj, short s) throws IllegalArgumentException, IllegalAccessException; public void setInt(Object obj, int i) throws IllegalArgumentException, IllegalAccessException; public void setLong(Object obj, long l) throws IllegalArgumentException, IllegalAccessException; public void setFloat(Object obj, float f) throws IllegalArgumentException, IllegalAccessException; public void setDouble(Object obj, double d) throws IllegalArgumentException, IllegalAccessException; static /*@ pure @*/ String getTypeName(Class type); }