Package com.googlecode.aviator.asm
Class ByteVector
java.lang.Object
com.googlecode.aviator.asm.ByteVector
A dynamically extensible vector of bytes. This class is roughly equivalent to a DataOutputStream
on top of a ByteArrayOutputStream, but is more efficient.
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionConstructs a newByteVectorwith a default initial size.ByteVector(int initialSize) Constructs a newByteVectorwith the given initial size. -
Method Summary
Modifier and TypeMethodDescriptionprivate voidenlarge(int size) Enlarge this byte vector so that it can receive n more bytes.(package private) ByteVectorput11(int b1, int b2) Puts two bytes into this byte vector.(package private) ByteVectorput12(int b, int s) Puts a byte and a short into this byte vector.putByte(int b) Puts a byte into this byte vector.putByteArray(byte[] b, int off, int len) Puts an array of bytes into this byte vector.putInt(int i) Puts an int into this byte vector.putLong(long l) Puts a long into this byte vector.putShort(int s) Puts a short into this byte vector.Puts an UTF8 string into this byte vector.
-
Field Details
-
data
byte[] dataThe content of this vector. -
length
int lengthActual number of bytes in this vector.
-
-
Constructor Details
-
ByteVector
public ByteVector()Constructs a newByteVectorwith a default initial size. -
ByteVector
public ByteVector(int initialSize) Constructs a newByteVectorwith the given initial size.- Parameters:
initialSize- the initial size of the byte vector to be constructed.
-
-
Method Details
-
putByte
Puts a byte into this byte vector. The byte vector is automatically enlarged if necessary.- Parameters:
b- a byte.- Returns:
- this byte vector.
-
put11
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
Puts a short into this byte vector. The byte vector is automatically enlarged if necessary.- Parameters:
s- a short.- Returns:
- this byte vector.
-
put12
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
Puts an int into this byte vector. The byte vector is automatically enlarged if necessary.- Parameters:
i- an int.- Returns:
- this byte vector.
-
putLong
Puts a long into this byte vector. The byte vector is automatically enlarged if necessary.- Parameters:
l- a long.- Returns:
- this byte vector.
-
putUTF8
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
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.
-