hotspot/agent/src/share/classes/sun/jvm/hotspot/types/Field.java

Print this page
rev 611 : Merge
   1 /*
   2  * Copyright 2000 Sun Microsystems, Inc.  All Rights Reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.
   8  *
   9  * This code is distributed in the hope that it will be useful, but WITHOUT
  10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12  * version 2 for more details (a copy is included in the LICENSE file that
  13  * accompanied this code).
  14  *
  15  * You should have received a copy of the GNU General Public License version
  16  * 2 along with this work; if not, write to the Free Software Foundation,
  17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18  *
  19  * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
  20  * CA 95054 USA or visit www.sun.com if you need additional information or
  21  * have any questions.
  22  *  


  92       fact, be an OopHandle. Specifically, in a reflective system,
  93       dereferencing operations applied to the OopHandle must be
  94       performed atomically with respect to GC. </P>
  95 
  96       <P> See @see CIntegerType for a description of why all C integer
  97       types are bundled into the category "CIntegerType". </P>
  98   */
  99   public boolean   getJBoolean (Address addr) throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 100   public byte      getJByte    (Address addr) throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 101   public char      getJChar    (Address addr) throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 102   public short     getJShort   (Address addr) throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 103   public int       getJInt     (Address addr) throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 104   public long      getJLong    (Address addr) throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 105   public float     getJFloat   (Address addr) throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 106   public double    getJDouble  (Address addr) throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 107   public long      getCInteger (Address addr, CIntegerType type)
 108     throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 109   public Address   getAddress  (Address addr) throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 110   public OopHandle getOopHandle(Address addr)
 111     throws UnmappedAddressException, UnalignedAddressException, WrongTypeException, NotInHeapException;


 112 
 113   /** <P> These accessors require that the field be static; otherwise,
 114       a WrongTypeException will be thrown. Note that type checking is
 115       not performed by these accessors in order to allow manual type
 116       coercion of field data. For better protection when accessing
 117       primitive fields, use the get(Type)Field accessors in
 118       Type.java. </P>
 119 
 120       <P> NOTE that the Address passed in to these routines may, in
 121       fact, be an OopHandle. Specifically, in a reflective system,
 122       dereferencing operations applied to the OopHandle must be
 123       performed atomically with respect to GC. </P>
 124 
 125       <P> See @see CIntegerType for a description of why all C integer
 126       types are bundled into the category "CIntegerType". </P>
 127   */
 128   public boolean   getJBoolean () throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 129   public byte      getJByte    () throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 130   public char      getJChar    () throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 131   public float     getJFloat   () throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 132   public double    getJDouble  () throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 133   public int       getJInt     () throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 134   public long      getJLong    () throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 135   public short     getJShort   () throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 136   public long      getCInteger (CIntegerType type)
 137     throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 138   public Address   getAddress  () throws UnmappedAddressException, UnalignedAddressException;
 139   public OopHandle getOopHandle()
 140     throws UnmappedAddressException, UnalignedAddressException, NotInHeapException;


 141 }
   1 /*
   2  * Copyright 2000-2008 Sun Microsystems, Inc.  All Rights Reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.
   8  *
   9  * This code is distributed in the hope that it will be useful, but WITHOUT
  10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12  * version 2 for more details (a copy is included in the LICENSE file that
  13  * accompanied this code).
  14  *
  15  * You should have received a copy of the GNU General Public License version
  16  * 2 along with this work; if not, write to the Free Software Foundation,
  17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18  *
  19  * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
  20  * CA 95054 USA or visit www.sun.com if you need additional information or
  21  * have any questions.
  22  *  


  92       fact, be an OopHandle. Specifically, in a reflective system,
  93       dereferencing operations applied to the OopHandle must be
  94       performed atomically with respect to GC. </P>
  95 
  96       <P> See @see CIntegerType for a description of why all C integer
  97       types are bundled into the category "CIntegerType". </P>
  98   */
  99   public boolean   getJBoolean (Address addr) throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 100   public byte      getJByte    (Address addr) throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 101   public char      getJChar    (Address addr) throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 102   public short     getJShort   (Address addr) throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 103   public int       getJInt     (Address addr) throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 104   public long      getJLong    (Address addr) throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 105   public float     getJFloat   (Address addr) throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 106   public double    getJDouble  (Address addr) throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 107   public long      getCInteger (Address addr, CIntegerType type)
 108     throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 109   public Address   getAddress  (Address addr) throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 110   public OopHandle getOopHandle(Address addr)
 111     throws UnmappedAddressException, UnalignedAddressException, WrongTypeException, NotInHeapException;
 112   public OopHandle getNarrowOopHandle(Address addr)
 113     throws UnmappedAddressException, UnalignedAddressException, WrongTypeException, NotInHeapException;
 114 
 115   /** <P> These accessors require that the field be static; otherwise,
 116       a WrongTypeException will be thrown. Note that type checking is
 117       not performed by these accessors in order to allow manual type
 118       coercion of field data. For better protection when accessing
 119       primitive fields, use the get(Type)Field accessors in
 120       Type.java. </P>
 121 
 122       <P> NOTE that the Address passed in to these routines may, in
 123       fact, be an OopHandle. Specifically, in a reflective system,
 124       dereferencing operations applied to the OopHandle must be
 125       performed atomically with respect to GC. </P>
 126 
 127       <P> See @see CIntegerType for a description of why all C integer
 128       types are bundled into the category "CIntegerType". </P>
 129   */
 130   public boolean   getJBoolean () throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 131   public byte      getJByte    () throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 132   public char      getJChar    () throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 133   public float     getJFloat   () throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 134   public double    getJDouble  () throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 135   public int       getJInt     () throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 136   public long      getJLong    () throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 137   public short     getJShort   () throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 138   public long      getCInteger (CIntegerType type)
 139     throws UnmappedAddressException, UnalignedAddressException, WrongTypeException;
 140   public Address   getAddress  () throws UnmappedAddressException, UnalignedAddressException;
 141   public OopHandle getOopHandle()
 142     throws UnmappedAddressException, UnalignedAddressException, NotInHeapException;
 143   public OopHandle getNarrowOopHandle()
 144     throws UnmappedAddressException, UnalignedAddressException, NotInHeapException;
 145 }