Package com.googlecode.aviator.asm
Class ByteVector
- java.lang.Object
-
- com.googlecode.aviator.asm.ByteVector
-
public class ByteVector extends java.lang.Object
A dynamically extensible vector of bytes. This class is roughly equivalent to a DataOutputStream on top of a ByteArrayOutputStream, but is more efficient.
-
-
Constructor Summary
Constructors Constructor Description ByteVector()
Constructs a newByteVector
with a default initial size.ByteVector(int initialSize)
Constructs a newByteVector
with the given initial size.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
enlarge(int size)
Enlarge this byte vector so that it can receive n more bytes.(package private) ByteVector
put11(int b1, int b2)
Puts two bytes into this byte vector.(package private) ByteVector
put12(int b, int s)
Puts a byte and a short into this byte vector.ByteVector
putByte(int b)
Puts a byte into this byte vector.ByteVector
putByteArray(byte[] b, int off, int len)
Puts an array of bytes into this byte vector.ByteVector
putInt(int i)
Puts an int into this byte vector.ByteVector
putLong(long l)
Puts a long into this byte vector.ByteVector
putShort(int s)
Puts a short into this byte vector.ByteVector
putUTF8(java.lang.String s)
Puts an UTF8 string into this byte vector.
-
-
-
Constructor Detail
-
ByteVector
public ByteVector()
Constructs a newByteVector
with a default initial size.
-
ByteVector
public ByteVector(int initialSize)
Constructs a newByteVector
with the given initial size.- Parameters:
initialSize
- the initial size of the byte vector to be constructed.
-
-
Method Detail
-
putByte
public ByteVector putByte(int b)
Puts a byte into this byte vector. The byte vector is automatically enlarged if necessary.- Parameters:
b
- a byte.- Returns:
- this byte vector.
-
put11
ByteVector put11(int b1, int b2)
Puts two bytes into this byte vector. The byte vector is automatically enlarged if necessary.- Parameters:
b1
- a byte.b2
- another byte.- Returns:
- this byte vector.
-
putShort
public ByteVector putShort(int s)
Puts a short into this byte vector. The byte vector is automatically enlarged if necessary.- Parameters:
s
- a short.- Returns:
- this byte vector.
-
put12
ByteVector put12(int b, int s)
Puts a byte and a short into this byte vector. The byte vector is automatically enlarged if necessary.- Parameters:
b
- a byte.s
- a short.- Returns:
- this byte vector.
-
putInt
public ByteVector putInt(int i)
Puts an int into this byte vector. The byte vector is automatically enlarged if necessary.- Parameters:
i
- an int.- Returns:
- this byte vector.
-
putLong
public ByteVector putLong(long l)
Puts a long into this byte vector. The byte vector is automatically enlarged if necessary.- Parameters:
l
- a long.- Returns:
- this byte vector.
-
putUTF8
public ByteVector putUTF8(java.lang.String s)
Puts an UTF8 string into this byte vector. The byte vector is automatically enlarged if necessary.- Parameters:
s
- a String.- Returns:
- this byte vector.
-
putByteArray
public ByteVector putByteArray(byte[] b, int off, int len)
Puts an array of bytes into this byte vector. The byte vector is automatically enlarged if necessary.- Parameters:
b
- an array of bytes. May be null to put len null bytes into this byte vector.off
- index of the fist byte of b that must be copied.len
- number of bytes of b that must be copied.- Returns:
- this byte vector.
-
enlarge
private void enlarge(int size)
Enlarge this byte vector so that it can receive n more bytes.- Parameters:
size
- number of additional bytes that this byte vector should be able to receive.
-
-