FOREIGN MODULE java_nio;

IMPORT
    sun_misc := "sun.misc",
    java_lang := "java.lang",
    java_io := "java.io",
    sun_nio_ch := "sun.nio.ch";

TYPE

  Buffer* = POINTER TO ABSTRACT RECORD (java_lang.Object)    (* Typebound Procedures *)
            END;

  BufferOverflowException* = POINTER TO EXTENSIBLE RECORD (java_lang.RuntimeException)
                             STATIC
                               PROCEDURE Init*() : BufferOverflowException,CONSTRUCTOR;
                             END;

  BufferUnderflowException* = POINTER TO EXTENSIBLE RECORD (java_lang.RuntimeException)
                              STATIC
                                PROCEDURE Init*() : BufferUnderflowException,CONSTRUCTOR;
                              END;

  ByteBuffer* = POINTER TO ABSTRACT RECORD (Buffer + java_lang.Comparable)    (* Typebound Procedures *)
                STATIC
                  PROCEDURE allocate*(p0 : INTEGER) : ByteBuffer;
                  PROCEDURE allocateDirect*(p0 : INTEGER) : ByteBuffer;
                  PROCEDURE wrap*(IN  p0 : ARRAY OF BYTE) : ByteBuffer;
                  PROCEDURE wrap*(IN  p0 : ARRAY OF BYTE;
                                      p1 : INTEGER;
                                      p2 : INTEGER) : ByteBuffer;
                END;

  ByteOrder* = POINTER TO RECORD (java_lang.Object)    (* Typebound Procedures *)
               STATIC
                 BIG_ENDIAN*    : ByteOrder;
                 LITTLE_ENDIAN* : ByteOrder;
                 PROCEDURE nativeOrder*() : ByteOrder;
               END;

  CharBuffer* = POINTER TO ABSTRACT RECORD (Buffer + java_lang.Comparable + java_lang.Appendable + java_lang.CharSequence + java_lang.Readable)    (* Typebound Procedures *)
                STATIC
                  PROCEDURE allocate*(p0 : INTEGER) : CharBuffer;
                  PROCEDURE wrap*(p0 : java_lang.CharSequence;
                                  p1 : INTEGER;
                                  p2 : INTEGER) : CharBuffer;
                  PROCEDURE wrap*(p0 : java_lang.CharSequence) : CharBuffer;
                  PROCEDURE wrap*(IN  p0 : ARRAY OF CHAR;
                                      p1 : INTEGER;
                                      p2 : INTEGER) : CharBuffer;
                  PROCEDURE wrap*(IN  p0 : ARRAY OF CHAR) : CharBuffer;
                END;

  DoubleBuffer* = POINTER TO ABSTRACT RECORD (Buffer + java_lang.Comparable)    (* Typebound Procedures *)
                  STATIC
                    PROCEDURE allocate*(p0 : INTEGER) : DoubleBuffer;
                    PROCEDURE wrap*(IN  p0 : ARRAY OF REAL) : DoubleBuffer;
                    PROCEDURE wrap*(IN  p0 : ARRAY OF REAL;
                                        p1 : INTEGER;
                                        p2 : INTEGER) : DoubleBuffer;
                  END;

  FloatBuffer* = POINTER TO ABSTRACT RECORD (Buffer + java_lang.Comparable)    (* Typebound Procedures *)
                 STATIC
                   PROCEDURE allocate*(p0 : INTEGER) : FloatBuffer;
                   PROCEDURE wrap*(IN  p0 : ARRAY OF SHORTREAL) : FloatBuffer;
                   PROCEDURE wrap*(IN  p0 : ARRAY OF SHORTREAL;
                                       p1 : INTEGER;
                                       p2 : INTEGER) : FloatBuffer;
                 END;

  IntBuffer* = POINTER TO ABSTRACT RECORD (Buffer + java_lang.Comparable)    (* Typebound Procedures *)
               STATIC
                 PROCEDURE allocate*(p0 : INTEGER) : IntBuffer;
                 PROCEDURE wrap*(IN  p0 : ARRAY OF INTEGER) : IntBuffer;
                 PROCEDURE wrap*(IN  p0 : ARRAY OF INTEGER;
                                     p1 : INTEGER;
                                     p2 : INTEGER) : IntBuffer;
               END;

  InvalidMarkException* = POINTER TO EXTENSIBLE RECORD (java_lang.IllegalStateException)
                          STATIC
                            PROCEDURE Init*() : InvalidMarkException,CONSTRUCTOR;
                          END;

  LongBuffer* = POINTER TO ABSTRACT RECORD (Buffer + java_lang.Comparable)    (* Typebound Procedures *)
                STATIC
                  PROCEDURE allocate*(p0 : INTEGER) : LongBuffer;
                  PROCEDURE wrap*(IN  p0 : ARRAY OF LONGINT) : LongBuffer;
                  PROCEDURE wrap*(IN  p0 : ARRAY OF LONGINT;
                                      p1 : INTEGER;
                                      p2 : INTEGER) : LongBuffer;
                END;

  MappedByteBuffer* = POINTER TO ABSTRACT RECORD (ByteBuffer)    (* Typebound Procedures *)
                      END;

  ReadOnlyBufferException* = POINTER TO EXTENSIBLE RECORD (java_lang.UnsupportedOperationException)
                             STATIC
                               PROCEDURE Init*() : ReadOnlyBufferException,CONSTRUCTOR;
                             END;

  ShortBuffer* = POINTER TO ABSTRACT RECORD (Buffer + java_lang.Comparable)    (* Typebound Procedures *)
                 STATIC
                   PROCEDURE allocate*(p0 : INTEGER) : ShortBuffer;
                   PROCEDURE wrap*(IN  p0 : ARRAY OF SHORTINT) : ShortBuffer;
                   PROCEDURE wrap*(IN  p0 : ARRAY OF SHORTINT;
                                       p1 : INTEGER;
                                       p2 : INTEGER) : ShortBuffer;
                 END;




PROCEDURE (self:Buffer) array*() : java_lang.Object,NEW,ABSTRACT;

PROCEDURE (self:Buffer) arrayOffset*() : INTEGER,NEW,ABSTRACT;

PROCEDURE (self:Buffer) capacity*() : INTEGER,NEW;

PROCEDURE (self:Buffer) clear*() : Buffer,NEW;

PROCEDURE (self:Buffer) flip*() : Buffer,NEW;

PROCEDURE (self:Buffer) hasArray*() : BOOLEAN,NEW,ABSTRACT;

PROCEDURE (self:Buffer) hasRemaining*() : BOOLEAN,NEW;

PROCEDURE (self:Buffer) isDirect*() : BOOLEAN,NEW,ABSTRACT;

PROCEDURE (self:Buffer) isReadOnly*() : BOOLEAN,NEW,ABSTRACT;

PROCEDURE (self:Buffer) limit*(p0 : INTEGER) : Buffer,NEW;

PROCEDURE (self:Buffer) limit*() : INTEGER,NEW;

PROCEDURE (self:Buffer) mark*() : Buffer,NEW;

PROCEDURE (self:Buffer) position*() : INTEGER,NEW;

PROCEDURE (self:Buffer) position*(p0 : INTEGER) : Buffer,NEW;

PROCEDURE (self:Buffer) remaining*() : INTEGER,NEW;

PROCEDURE (self:Buffer) reset*() : Buffer,NEW;

PROCEDURE (self:Buffer) rewind*() : Buffer,NEW;

PROCEDURE (self:ByteBuffer) array*() : POINTER TO ARRAY OF BYTE,NEW;

PROCEDURE (self:ByteBuffer) array*() : java_lang.Object,EXTENSIBLE;

PROCEDURE (self:ByteBuffer) arrayOffset*() : INTEGER;

PROCEDURE (self:ByteBuffer) asCharBuffer*() : CharBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) asDoubleBuffer*() : DoubleBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) asFloatBuffer*() : FloatBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) asIntBuffer*() : IntBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) asLongBuffer*() : LongBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) asReadOnlyBuffer*() : ByteBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) asShortBuffer*() : ShortBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) compact*() : ByteBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) compareTo*(p0 : java_lang.Object) : INTEGER,NEW,EXTENSIBLE;

PROCEDURE (self:ByteBuffer) compareTo*(p0 : ByteBuffer) : INTEGER,NEW,EXTENSIBLE;

PROCEDURE (self:ByteBuffer) duplicate*() : ByteBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) equals*(p0 : java_lang.Object) : BOOLEAN,EXTENSIBLE;

PROCEDURE (self:ByteBuffer) get*(IN  p0 : ARRAY OF BYTE) : ByteBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:ByteBuffer) get*(p0 : INTEGER) : BYTE,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) get*(IN  p0 : ARRAY OF BYTE;
                                     p1 : INTEGER;
                                     p2 : INTEGER) : ByteBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:ByteBuffer) get*() : BYTE,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) getChar*() : CHAR,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) getChar*(p0 : INTEGER) : CHAR,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) getDouble*(p0 : INTEGER) : REAL,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) getDouble*() : REAL,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) getFloat*(p0 : INTEGER) : SHORTREAL,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) getFloat*() : SHORTREAL,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) getInt*(p0 : INTEGER) : INTEGER,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) getInt*() : INTEGER,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) getLong*(p0 : INTEGER) : LONGINT,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) getLong*() : LONGINT,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) getShort*(p0 : INTEGER) : SHORTINT,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) getShort*() : SHORTINT,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) hasArray*() : BOOLEAN;

PROCEDURE (self:ByteBuffer) hashCode*() : INTEGER,EXTENSIBLE;

PROCEDURE (self:ByteBuffer) isDirect*() : BOOLEAN,ABSTRACT;

PROCEDURE (self:ByteBuffer) order*(p0 : ByteOrder) : ByteBuffer,NEW;

PROCEDURE (self:ByteBuffer) order*() : ByteOrder,NEW;

PROCEDURE (self:ByteBuffer) put*(p0 : BYTE) : ByteBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) put*(p0 : ByteBuffer) : ByteBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:ByteBuffer) put*(IN  p0 : ARRAY OF BYTE) : ByteBuffer,NEW;

PROCEDURE (self:ByteBuffer) put*(IN  p0 : ARRAY OF BYTE;
                                     p1 : INTEGER;
                                     p2 : INTEGER) : ByteBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:ByteBuffer) put*(p0 : INTEGER;
                                 p1 : BYTE) : ByteBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) putChar*(p0 : CHAR) : ByteBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) putChar*(p0 : INTEGER;
                                     p1 : CHAR) : ByteBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) putDouble*(p0 : INTEGER;
                                       p1 : REAL) : ByteBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) putDouble*(p0 : REAL) : ByteBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) putFloat*(p0 : INTEGER;
                                      p1 : SHORTREAL) : ByteBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) putFloat*(p0 : SHORTREAL) : ByteBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) putInt*(p0 : INTEGER;
                                    p1 : INTEGER) : ByteBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) putInt*(p0 : INTEGER) : ByteBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) putLong*(p0 : INTEGER;
                                     p1 : LONGINT) : ByteBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) putLong*(p0 : LONGINT) : ByteBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) putShort*(p0 : SHORTINT) : ByteBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) putShort*(p0 : INTEGER;
                                      p1 : SHORTINT) : ByteBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) slice*() : ByteBuffer,NEW,ABSTRACT;

PROCEDURE (self:ByteBuffer) toString*() : java_lang.String,EXTENSIBLE;

PROCEDURE (self:ByteOrder) toString*() : java_lang.String,EXTENSIBLE;

PROCEDURE (self:CharBuffer) append*(p0 : CHAR) : CharBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:CharBuffer) append*(p0 : java_lang.CharSequence;
                                    p1 : INTEGER;
                                    p2 : INTEGER) : CharBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:CharBuffer) append*(p0 : java_lang.CharSequence) : CharBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:CharBuffer) append*(p0 : java_lang.CharSequence;
                                    p1 : INTEGER;
                                    p2 : INTEGER) : java_lang.Appendable,NEW,EXTENSIBLE;

PROCEDURE (self:CharBuffer) append*(p0 : java_lang.CharSequence) : java_lang.Appendable,NEW,EXTENSIBLE;

PROCEDURE (self:CharBuffer) append*(p0 : CHAR) : java_lang.Appendable,NEW,EXTENSIBLE;

PROCEDURE (self:CharBuffer) array*() : POINTER TO ARRAY OF CHAR,NEW;

PROCEDURE (self:CharBuffer) array*() : java_lang.Object,EXTENSIBLE;

PROCEDURE (self:CharBuffer) arrayOffset*() : INTEGER;

PROCEDURE (self:CharBuffer) asReadOnlyBuffer*() : CharBuffer,NEW,ABSTRACT;

PROCEDURE (self:CharBuffer) charAt*(p0 : INTEGER) : CHAR,NEW;

PROCEDURE (self:CharBuffer) compact*() : CharBuffer,NEW,ABSTRACT;

PROCEDURE (self:CharBuffer) compareTo*(p0 : CharBuffer) : INTEGER,NEW,EXTENSIBLE;

PROCEDURE (self:CharBuffer) compareTo*(p0 : java_lang.Object) : INTEGER,NEW,EXTENSIBLE;

PROCEDURE (self:CharBuffer) duplicate*() : CharBuffer,NEW,ABSTRACT;

PROCEDURE (self:CharBuffer) equals*(p0 : java_lang.Object) : BOOLEAN,EXTENSIBLE;

PROCEDURE (self:CharBuffer) get*() : CHAR,NEW,ABSTRACT;

PROCEDURE (self:CharBuffer) get*(p0 : INTEGER) : CHAR,NEW,ABSTRACT;

PROCEDURE (self:CharBuffer) get*(IN  p0 : ARRAY OF CHAR;
                                     p1 : INTEGER;
                                     p2 : INTEGER) : CharBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:CharBuffer) get*(IN  p0 : ARRAY OF CHAR) : CharBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:CharBuffer) hasArray*() : BOOLEAN;

PROCEDURE (self:CharBuffer) hashCode*() : INTEGER,EXTENSIBLE;

PROCEDURE (self:CharBuffer) isDirect*() : BOOLEAN,ABSTRACT;

PROCEDURE (self:CharBuffer) length*() : INTEGER,NEW;

PROCEDURE (self:CharBuffer) order*() : ByteOrder,NEW,ABSTRACT;

PROCEDURE (self:CharBuffer) put*(p0 : java_lang.String;
                                 p1 : INTEGER;
                                 p2 : INTEGER) : CharBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:CharBuffer) put*(p0 : CharBuffer) : CharBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:CharBuffer) put*(p0 : java_lang.String) : CharBuffer,NEW;

PROCEDURE (self:CharBuffer) put*(p0 : INTEGER;
                                 p1 : CHAR) : CharBuffer,NEW,ABSTRACT;

PROCEDURE (self:CharBuffer) put*(IN  p0 : ARRAY OF CHAR;
                                     p1 : INTEGER;
                                     p2 : INTEGER) : CharBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:CharBuffer) put*(IN  p0 : ARRAY OF CHAR) : CharBuffer,NEW;

PROCEDURE (self:CharBuffer) put*(p0 : CHAR) : CharBuffer,NEW,ABSTRACT;

PROCEDURE (self:CharBuffer) read*(p0 : CharBuffer) : INTEGER,NEW,EXTENSIBLE;

PROCEDURE (self:CharBuffer) slice*() : CharBuffer,NEW,ABSTRACT;

PROCEDURE (self:CharBuffer) subSequence*(p0 : INTEGER;
                                         p1 : INTEGER) : java_lang.CharSequence,NEW,ABSTRACT;

PROCEDURE (self:CharBuffer) toString*() : java_lang.String,EXTENSIBLE;

PROCEDURE (self:DoubleBuffer) array*() : java_lang.Object,EXTENSIBLE;

PROCEDURE (self:DoubleBuffer) array*() : POINTER TO ARRAY OF REAL,NEW;

PROCEDURE (self:DoubleBuffer) arrayOffset*() : INTEGER;

PROCEDURE (self:DoubleBuffer) asReadOnlyBuffer*() : DoubleBuffer,NEW,ABSTRACT;

PROCEDURE (self:DoubleBuffer) compact*() : DoubleBuffer,NEW,ABSTRACT;

PROCEDURE (self:DoubleBuffer) compareTo*(p0 : DoubleBuffer) : INTEGER,NEW,EXTENSIBLE;

PROCEDURE (self:DoubleBuffer) compareTo*(p0 : java_lang.Object) : INTEGER,NEW,EXTENSIBLE;

PROCEDURE (self:DoubleBuffer) duplicate*() : DoubleBuffer,NEW,ABSTRACT;

PROCEDURE (self:DoubleBuffer) equals*(p0 : java_lang.Object) : BOOLEAN,EXTENSIBLE;

PROCEDURE (self:DoubleBuffer) get*() : REAL,NEW,ABSTRACT;

PROCEDURE (self:DoubleBuffer) get*(p0 : INTEGER) : REAL,NEW,ABSTRACT;

PROCEDURE (self:DoubleBuffer) get*(IN  p0 : ARRAY OF REAL) : DoubleBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:DoubleBuffer) get*(IN  p0 : ARRAY OF REAL;
                                       p1 : INTEGER;
                                       p2 : INTEGER) : DoubleBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:DoubleBuffer) hasArray*() : BOOLEAN;

PROCEDURE (self:DoubleBuffer) hashCode*() : INTEGER,EXTENSIBLE;

PROCEDURE (self:DoubleBuffer) isDirect*() : BOOLEAN,ABSTRACT;

PROCEDURE (self:DoubleBuffer) order*() : ByteOrder,NEW,ABSTRACT;

PROCEDURE (self:DoubleBuffer) put*(p0 : DoubleBuffer) : DoubleBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:DoubleBuffer) put*(p0 : INTEGER;
                                   p1 : REAL) : DoubleBuffer,NEW,ABSTRACT;

PROCEDURE (self:DoubleBuffer) put*(p0 : REAL) : DoubleBuffer,NEW,ABSTRACT;

PROCEDURE (self:DoubleBuffer) put*(IN  p0 : ARRAY OF REAL) : DoubleBuffer,NEW;

PROCEDURE (self:DoubleBuffer) put*(IN  p0 : ARRAY OF REAL;
                                       p1 : INTEGER;
                                       p2 : INTEGER) : DoubleBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:DoubleBuffer) slice*() : DoubleBuffer,NEW,ABSTRACT;

PROCEDURE (self:DoubleBuffer) toString*() : java_lang.String,EXTENSIBLE;

PROCEDURE (self:FloatBuffer) array*() : java_lang.Object,EXTENSIBLE;

PROCEDURE (self:FloatBuffer) array*() : POINTER TO ARRAY OF SHORTREAL,NEW;

PROCEDURE (self:FloatBuffer) arrayOffset*() : INTEGER;

PROCEDURE (self:FloatBuffer) asReadOnlyBuffer*() : FloatBuffer,NEW,ABSTRACT;

PROCEDURE (self:FloatBuffer) compact*() : FloatBuffer,NEW,ABSTRACT;

PROCEDURE (self:FloatBuffer) compareTo*(p0 : FloatBuffer) : INTEGER,NEW,EXTENSIBLE;

PROCEDURE (self:FloatBuffer) compareTo*(p0 : java_lang.Object) : INTEGER,NEW,EXTENSIBLE;

PROCEDURE (self:FloatBuffer) duplicate*() : FloatBuffer,NEW,ABSTRACT;

PROCEDURE (self:FloatBuffer) equals*(p0 : java_lang.Object) : BOOLEAN,EXTENSIBLE;

PROCEDURE (self:FloatBuffer) get*() : SHORTREAL,NEW,ABSTRACT;

PROCEDURE (self:FloatBuffer) get*(p0 : INTEGER) : SHORTREAL,NEW,ABSTRACT;

PROCEDURE (self:FloatBuffer) get*(IN  p0 : ARRAY OF SHORTREAL) : FloatBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:FloatBuffer) get*(IN  p0 : ARRAY OF SHORTREAL;
                                      p1 : INTEGER;
                                      p2 : INTEGER) : FloatBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:FloatBuffer) hasArray*() : BOOLEAN;

PROCEDURE (self:FloatBuffer) hashCode*() : INTEGER,EXTENSIBLE;

PROCEDURE (self:FloatBuffer) isDirect*() : BOOLEAN,ABSTRACT;

PROCEDURE (self:FloatBuffer) order*() : ByteOrder,NEW,ABSTRACT;

PROCEDURE (self:FloatBuffer) put*(p0 : FloatBuffer) : FloatBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:FloatBuffer) put*(p0 : INTEGER;
                                  p1 : SHORTREAL) : FloatBuffer,NEW,ABSTRACT;

PROCEDURE (self:FloatBuffer) put*(p0 : SHORTREAL) : FloatBuffer,NEW,ABSTRACT;

PROCEDURE (self:FloatBuffer) put*(IN  p0 : ARRAY OF SHORTREAL) : FloatBuffer,NEW;

PROCEDURE (self:FloatBuffer) put*(IN  p0 : ARRAY OF SHORTREAL;
                                      p1 : INTEGER;
                                      p2 : INTEGER) : FloatBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:FloatBuffer) slice*() : FloatBuffer,NEW,ABSTRACT;

PROCEDURE (self:FloatBuffer) toString*() : java_lang.String,EXTENSIBLE;

PROCEDURE (self:IntBuffer) array*() : java_lang.Object,EXTENSIBLE;

PROCEDURE (self:IntBuffer) array*() : POINTER TO ARRAY OF INTEGER,NEW;

PROCEDURE (self:IntBuffer) arrayOffset*() : INTEGER;

PROCEDURE (self:IntBuffer) asReadOnlyBuffer*() : IntBuffer,NEW,ABSTRACT;

PROCEDURE (self:IntBuffer) compact*() : IntBuffer,NEW,ABSTRACT;

PROCEDURE (self:IntBuffer) compareTo*(p0 : IntBuffer) : INTEGER,NEW,EXTENSIBLE;

PROCEDURE (self:IntBuffer) compareTo*(p0 : java_lang.Object) : INTEGER,NEW,EXTENSIBLE;

PROCEDURE (self:IntBuffer) duplicate*() : IntBuffer,NEW,ABSTRACT;

PROCEDURE (self:IntBuffer) equals*(p0 : java_lang.Object) : BOOLEAN,EXTENSIBLE;

PROCEDURE (self:IntBuffer) get*() : INTEGER,NEW,ABSTRACT;

PROCEDURE (self:IntBuffer) get*(p0 : INTEGER) : INTEGER,NEW,ABSTRACT;

PROCEDURE (self:IntBuffer) get*(IN  p0 : ARRAY OF INTEGER) : IntBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:IntBuffer) get*(IN  p0 : ARRAY OF INTEGER;
                                    p1 : INTEGER;
                                    p2 : INTEGER) : IntBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:IntBuffer) hasArray*() : BOOLEAN;

PROCEDURE (self:IntBuffer) hashCode*() : INTEGER,EXTENSIBLE;

PROCEDURE (self:IntBuffer) isDirect*() : BOOLEAN,ABSTRACT;

PROCEDURE (self:IntBuffer) order*() : ByteOrder,NEW,ABSTRACT;

PROCEDURE (self:IntBuffer) put*(p0 : IntBuffer) : IntBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:IntBuffer) put*(p0 : INTEGER;
                                p1 : INTEGER) : IntBuffer,NEW,ABSTRACT;

PROCEDURE (self:IntBuffer) put*(p0 : INTEGER) : IntBuffer,NEW,ABSTRACT;

PROCEDURE (self:IntBuffer) put*(IN  p0 : ARRAY OF INTEGER) : IntBuffer,NEW;

PROCEDURE (self:IntBuffer) put*(IN  p0 : ARRAY OF INTEGER;
                                    p1 : INTEGER;
                                    p2 : INTEGER) : IntBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:IntBuffer) slice*() : IntBuffer,NEW,ABSTRACT;

PROCEDURE (self:IntBuffer) toString*() : java_lang.String,EXTENSIBLE;

PROCEDURE (self:LongBuffer) array*() : java_lang.Object,EXTENSIBLE;

PROCEDURE (self:LongBuffer) array*() : POINTER TO ARRAY OF LONGINT,NEW;

PROCEDURE (self:LongBuffer) arrayOffset*() : INTEGER;

PROCEDURE (self:LongBuffer) asReadOnlyBuffer*() : LongBuffer,NEW,ABSTRACT;

PROCEDURE (self:LongBuffer) compact*() : LongBuffer,NEW,ABSTRACT;

PROCEDURE (self:LongBuffer) compareTo*(p0 : LongBuffer) : INTEGER,NEW,EXTENSIBLE;

PROCEDURE (self:LongBuffer) compareTo*(p0 : java_lang.Object) : INTEGER,NEW,EXTENSIBLE;

PROCEDURE (self:LongBuffer) duplicate*() : LongBuffer,NEW,ABSTRACT;

PROCEDURE (self:LongBuffer) equals*(p0 : java_lang.Object) : BOOLEAN,EXTENSIBLE;

PROCEDURE (self:LongBuffer) get*() : LONGINT,NEW,ABSTRACT;

PROCEDURE (self:LongBuffer) get*(p0 : INTEGER) : LONGINT,NEW,ABSTRACT;

PROCEDURE (self:LongBuffer) get*(IN  p0 : ARRAY OF LONGINT) : LongBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:LongBuffer) get*(IN  p0 : ARRAY OF LONGINT;
                                     p1 : INTEGER;
                                     p2 : INTEGER) : LongBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:LongBuffer) hasArray*() : BOOLEAN;

PROCEDURE (self:LongBuffer) hashCode*() : INTEGER,EXTENSIBLE;

PROCEDURE (self:LongBuffer) isDirect*() : BOOLEAN,ABSTRACT;

PROCEDURE (self:LongBuffer) order*() : ByteOrder,NEW,ABSTRACT;

PROCEDURE (self:LongBuffer) put*(p0 : LongBuffer) : LongBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:LongBuffer) put*(p0 : INTEGER;
                                 p1 : LONGINT) : LongBuffer,NEW,ABSTRACT;

PROCEDURE (self:LongBuffer) put*(p0 : LONGINT) : LongBuffer,NEW,ABSTRACT;

PROCEDURE (self:LongBuffer) put*(IN  p0 : ARRAY OF LONGINT) : LongBuffer,NEW;

PROCEDURE (self:LongBuffer) put*(IN  p0 : ARRAY OF LONGINT;
                                     p1 : INTEGER;
                                     p2 : INTEGER) : LongBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:LongBuffer) slice*() : LongBuffer,NEW,ABSTRACT;

PROCEDURE (self:LongBuffer) toString*() : java_lang.String,EXTENSIBLE;

PROCEDURE (self:MappedByteBuffer) force*() : MappedByteBuffer,NEW;

PROCEDURE (self:MappedByteBuffer) isLoaded*() : BOOLEAN,NEW;

PROCEDURE (self:MappedByteBuffer) load*() : MappedByteBuffer,NEW;

PROCEDURE (self:ShortBuffer) array*() : java_lang.Object,EXTENSIBLE;

PROCEDURE (self:ShortBuffer) array*() : POINTER TO ARRAY OF SHORTINT,NEW;

PROCEDURE (self:ShortBuffer) arrayOffset*() : INTEGER;

PROCEDURE (self:ShortBuffer) asReadOnlyBuffer*() : ShortBuffer,NEW,ABSTRACT;

PROCEDURE (self:ShortBuffer) compact*() : ShortBuffer,NEW,ABSTRACT;

PROCEDURE (self:ShortBuffer) compareTo*(p0 : ShortBuffer) : INTEGER,NEW,EXTENSIBLE;

PROCEDURE (self:ShortBuffer) compareTo*(p0 : java_lang.Object) : INTEGER,NEW,EXTENSIBLE;

PROCEDURE (self:ShortBuffer) duplicate*() : ShortBuffer,NEW,ABSTRACT;

PROCEDURE (self:ShortBuffer) equals*(p0 : java_lang.Object) : BOOLEAN,EXTENSIBLE;

PROCEDURE (self:ShortBuffer) get*() : SHORTINT,NEW,ABSTRACT;

PROCEDURE (self:ShortBuffer) get*(p0 : INTEGER) : SHORTINT,NEW,ABSTRACT;

PROCEDURE (self:ShortBuffer) get*(IN  p0 : ARRAY OF SHORTINT) : ShortBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:ShortBuffer) get*(IN  p0 : ARRAY OF SHORTINT;
                                      p1 : INTEGER;
                                      p2 : INTEGER) : ShortBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:ShortBuffer) hasArray*() : BOOLEAN;

PROCEDURE (self:ShortBuffer) hashCode*() : INTEGER,EXTENSIBLE;

PROCEDURE (self:ShortBuffer) isDirect*() : BOOLEAN,ABSTRACT;

PROCEDURE (self:ShortBuffer) order*() : ByteOrder,NEW,ABSTRACT;

PROCEDURE (self:ShortBuffer) put*(p0 : ShortBuffer) : ShortBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:ShortBuffer) put*(p0 : INTEGER;
                                  p1 : SHORTINT) : ShortBuffer,NEW,ABSTRACT;

PROCEDURE (self:ShortBuffer) put*(p0 : SHORTINT) : ShortBuffer,NEW,ABSTRACT;

PROCEDURE (self:ShortBuffer) put*(IN  p0 : ARRAY OF SHORTINT) : ShortBuffer,NEW;

PROCEDURE (self:ShortBuffer) put*(IN  p0 : ARRAY OF SHORTINT;
                                      p1 : INTEGER;
                                      p2 : INTEGER) : ShortBuffer,NEW,EXTENSIBLE;

PROCEDURE (self:ShortBuffer) slice*() : ShortBuffer,NEW,ABSTRACT;

PROCEDURE (self:ShortBuffer) toString*() : java_lang.String,EXTENSIBLE;

END java_nio.