1 cananian 1.1.2.2 // ClassDataOutputStream.java, created Mon Jan 18 22:44:36 1999 by cananian
 2 cananian 1.1.2.1 // Copyright (C) 1998 C. Scott Ananian <cananian@alumni.princeton.edu>
 3 cananian 1.1.2.1 // Licensed under the terms of the GNU GPL; see COPYING for details.
 4 cananian 1.1.2.1 package harpoon.IR.RawClass;
 5 cananian 1.1.2.1 
 6 cananian 1.1.2.1 /**
 7 cananian 1.1.2.1  * A specialized output stream writer for java bytecode files.
 8 cananian 1.1.2.1  *
 9 cananian 1.1.2.1  * @author  C. Scott Ananian <cananian@alumni.princeton.edu>
10 cananian 1.2      * @version $Id: ClassDataOutputStream.java,v 1.2 2002/02/25 21:05:26 cananian Exp $
11 cananian 1.1.2.1  * @see ClassDataInputStream
12 cananian 1.1.2.1  */
13 cananian 1.1.2.1 public class ClassDataOutputStream extends java.io.DataOutputStream {
14 cananian 1.1.2.1 
15 cananian 1.1.2.1   /** Constructs a <code>ClassDataOutputStream</code> from a standard
16 cananian 1.1.2.1    *  <code>OutputStream</code>. */
17 cananian 1.1.2.1   public ClassDataOutputStream(java.io.OutputStream out) {
18 cananian 1.1.2.1     super(out);
19 cananian 1.1.2.1   }
20 cananian 1.1.2.1 
21 cananian 1.1.2.1   /** Write an unsigned one-byte quantity, high byte first. */
22 cananian 1.1.2.1   public final void write_u1(int v) throws java.io.IOException
23 cananian 1.1.2.1   { writeByte(v); }
24 cananian 1.1.2.1   /** Write an unsigned two-byte quantity, high byte first. */
25 cananian 1.1.2.1   public final void write_u2(int v) throws java.io.IOException
26 cananian 1.1.2.1   { writeShort(v); }
27 cananian 1.1.2.1   /** Write an unsigned four-byte quantity, high byte first. */
28 cananian 1.1.2.1   public final void write_u4(long v) throws java.io.IOException
29 cananian 1.1.2.1   { writeShort((int)((v>>16)&0xFFFF)); writeShort((int)(v&0xFFFF)); }
30 cananian 1.2     }