public final class CodedOutputStream extends Object
This class contains two kinds of methods: methods that write specific protocol message constructs and field types (e.g. writeTag(int, int) and writeInt32(int, int)) and methods that write low-level values (e.g. writeRawVarint32(int) and writeRawBytes(com.google.protobuf.ByteString)). If you are writing encoded protocol messages, you should use the former methods, but if you are writing some other format of your own design, use the latter.
This class is totally unsynchronized.
| Modifier and Type | Class and Description |
|---|---|
static class |
CodedOutputStream
If you create a CodedOutputStream around a simple flat array, you must not attempt to write more bytes than the array has space.
|
| Modifier and Type | Field and Description |
|---|---|
static int |
DEFAULT_BUFFER_SIZE
The buffer size used in
newInstance(OutputStream).
|
static int |
LITTLE_ENDIAN_32_SIZE
|
static int |
LITTLE_ENDIAN_64_SIZE
|
| Modifier and Type | Method and Description |
|---|---|
void |
checkNoSpaceLeft()
Verifies that
spaceLeft() returns zero.
|
static int |
computeBoolSize(int fieldNumber, boolean value)
Compute the number of bytes that would be needed to encode a
bool field, including tag.
|
static int |
computeBoolSizeNoTag(boolean value)
Compute the number of bytes that would be needed to encode a
bool field.
|
static int |
computeByteArraySize(int fieldNumber, byte[] value)
Compute the number of bytes that would be needed to encode a
bytes field, including tag.
|
static int |
computeByteArraySizeNoTag(byte[] value)
Compute the number of bytes that would be needed to encode a
bytes field.
|
static int |
computeByteBufferSize(int fieldNumber, ByteBuffer
Compute the number of bytes that would be needed to encode a
bytes field, including tag.
|
static int |
computeByteBufferSizeNoTag(ByteBuffer
Compute the number of bytes that would be needed to encode a
bytes field.
|
static int |
computeBytesSize(int fieldNumber, ByteString
Compute the number of bytes that would be needed to encode a
bytes field, including tag.
|
static int |
computeBytesSizeNoTag(ByteString
Compute the number of bytes that would be needed to encode a
bytes field.
|
static int |
computeDoubleSize(int fieldNumber, double value)
Compute the number of bytes that would be needed to encode a
double field, including tag.
|
static int |
computeDoubleSizeNoTag(double value)
Compute the number of bytes that would be needed to encode a
double field, including tag.
|
static int |
computeEnumSize(int fieldNumber, int value)
Compute the number of bytes that would be needed to encode an enum field, including tag.
|
static int |
computeEnumSizeNoTag(int value)
Compute the number of bytes that would be needed to encode an enum field.
|
static int |
computeFixed32Size(int fieldNumber, int value)
Compute the number of bytes that would be needed to encode a
fixed32 field, including tag.
|
static int |
computeFixed32SizeNoTag(int value)
Compute the number of bytes that would be needed to encode a
fixed32 field.
|
static int |
computeFixed64Size(int fieldNumber, long value)
Compute the number of bytes that would be needed to encode a
fixed64 field, including tag.
|
static int |
computeFixed64SizeNoTag(long value)
Compute the number of bytes that would be needed to encode a
fixed64 field.
|
static int |
computeFloatSize(int fieldNumber, float value)
Compute the number of bytes that would be needed to encode a
float field, including tag.
|
static int |
computeFloatSizeNoTag(float value)
Compute the number of bytes that would be needed to encode a
float field, including tag.
|
static int |
computeGroupSize(int fieldNumber, MessageLite
Compute the number of bytes that would be needed to encode a
group field, including tag.
|
static int |
computeGroupSizeNoTag(MessageLite
Compute the number of bytes that would be needed to encode a
group field.
|
static int |
computeInt32Size(int fieldNumber, int value)
Compute the number of bytes that would be needed to encode an
int32 field, including tag.
|
static int |
computeInt32SizeNoTag(int value)
Compute the number of bytes that would be needed to encode an
int32 field, including tag.
|
static int |
computeInt64Size(int fieldNumber, long value)
Compute the number of bytes that would be needed to encode an
int64 field, including tag.
|
static int |
computeInt64SizeNoTag(long value)
Compute the number of bytes that would be needed to encode an
int64 field, including tag.
|
static int |
computeLazyFieldMessageSetExtensionSize(int fieldNumber, LazyFieldLite
Compute the number of bytes that would be needed to encode an lazily parsed MessageSet extension field to the stream.
|
static int |
computeLazyFieldSize(int fieldNumber, LazyFieldLite
Compute the number of bytes that would be needed to encode an embedded message in lazy field, including tag.
|
static int |
computeLazyFieldSizeNoTag(LazyFieldLite
Compute the number of bytes that would be needed to encode an embedded message stored in lazy field.
|
static int |
computeMessageSetExtensionSize(int fieldNumber, MessageLite
Compute the number of bytes that would be needed to encode a MessageSet extension to the stream.
|
static int |
computeMessageSize(int fieldNumber, MessageLite
Compute the number of bytes that would be needed to encode an embedded message field, including tag.
|
static int |
computeMessageSizeNoTag(MessageLite
Compute the number of bytes that would be needed to encode an embedded message field.
|
static int |
computeRawMessageSetExtensionSize(int fieldNumber, ByteString
Compute the number of bytes that would be needed to encode an unparsed MessageSet extension field to the stream.
|
static int |
computeRawVarint32Size(int value)
Compute the number of bytes that would be needed to encode a varint.
|
static int |
computeRawVarint64Size(long value)
Compute the number of bytes that would be needed to encode a varint.
|
static int |
computeSFixed32Size(int fieldNumber, int value)
Compute the number of bytes that would be needed to encode an
sfixed32 field, including tag.
|
static int |
computeSFixed32SizeNoTag(int value)
Compute the number of bytes that would be needed to encode an
sfixed32 field.
|
static int |
computeSFixed64Size(int fieldNumber, long value)
Compute the number of bytes that would be needed to encode an
sfixed64 field, including tag.
|
static int |
computeSFixed64SizeNoTag(long value)
Compute the number of bytes that would be needed to encode an
sfixed64 field.
|
static int |
computeSInt32Size(int fieldNumber, int value)
Compute the number of bytes that would be needed to encode an
sint32 field, including tag.
|
static int |
computeSInt32SizeNoTag(int value)
Compute the number of bytes that would be needed to encode an
sint32 field.
|
static int |
computeSInt64Size(int fieldNumber, long value)
Compute the number of bytes that would be needed to encode an
sint64 field, including tag.
|
static int |
computeSInt64SizeNoTag(long value)
Compute the number of bytes that would be needed to encode an
sint64 field.
|
static int |
computeStringSize(int fieldNumber, String
Compute the number of bytes that would be needed to encode a
string field, including tag.
|
static int |
computeStringSizeNoTag(String
Compute the number of bytes that would be needed to encode a
string field.
|
static int |
computeTagSize(int fieldNumber)
Compute the number of bytes that would be needed to encode a tag.
|
static int |
computeUInt32Size(int fieldNumber, int value)
Compute the number of bytes that would be needed to encode a
uint32 field, including tag.
|
static int |
computeUInt32SizeNoTag(int value)
Compute the number of bytes that would be needed to encode a
uint32 field.
|
static int |
computeUInt64Size(int fieldNumber, long value)
Compute the number of bytes that would be needed to encode a
uint64 field, including tag.
|
static int |
computeUInt64SizeNoTag(long value)
Compute the number of bytes that would be needed to encode a
uint64 field, including tag.
|
static int |
computeUnknownGroupSize(int fieldNumber, MessageLite
Deprecated.
UnknownFieldSet now implements MessageLite, so you can just call
computeGroupSize(int, com.google.protobuf.MessageLite).
|
static int |
computeUnknownGroupSizeNoTag(MessageLite
Deprecated.
UnknownFieldSet now implements MessageLite, so you can just call
computeUnknownGroupSizeNoTag(com.google.protobuf.MessageLite).
|
static int |
encodeZigZag32(int n)
Encode a ZigZag-encoded 32-bit value.
|
static long |
encodeZigZag64(long n)
Encode a ZigZag-encoded 64-bit value.
|
void |
flush()
Flushes the stream and forces any buffered bytes to be written.
|
int |
getTotalBytesWritten()
Get the total number of bytes successfully written to this stream.
|
static CodedOutputStream |
newInstance(byte[] flatArray)
Create a new
CodedOutputStream that writes directly to the given byte array.
|
static CodedOutputStream |
newInstance(byte[] flatArray, int offset, int length)
Create a new
CodedOutputStream that writes directly to the given byte array slice.
|
static CodedOutputStream |
newInstance(ByteBuffer
Create a new
CodedOutputStream that writes to the given ByteBuffer.
|
static CodedOutputStream |
newInstance(ByteBuffer
Create a new
CodedOutputStream that writes to the given ByteBuffer.
|
static CodedOutputStream |
newInstance(OutputStream
Create a new
CodedOutputStream wrapping the given
OutputStream.
|
static CodedOutputStream |
newInstance(OutputStream
Create a new
CodedOutputStream wrapping the given
OutputStream with a given buffer size.
|
int |
spaceLeft()
If writing to a flat array, return the space left in the array.
|
void |
writeBool(int fieldNumber, boolean value)
Write a
bool field, including tag, to the stream.
|
void |
writeBoolNoTag(boolean value)
Write a
bool field to the stream.
|
void |
writeByteArray(int fieldNumber, byte[] value)
Write a
bytes field, including tag, to the stream.
|
void |
writeByteArray(int fieldNumber, byte[] value, int offset, int length)
Write a
bytes field, including tag, to the stream.
|
void |
writeByteArrayNoTag(byte[] value)
Write a
bytes field to the stream.
|
void |
writeByteArrayNoTag(byte[] value, int offset, int length)
Write a
bytes field to the stream.
|
void |
writeByteBuffer(int fieldNumber, ByteBuffer
Write a
bytes field, including tag, to the stream.
|
void |
writeByteBufferNoTag(ByteBuffer
Write a
bytes field to the stream.
|
void |
writeBytes(int fieldNumber, ByteString
Write a
bytes field, including tag, to the stream.
|
void |
writeBytesNoTag(ByteString
Write a
bytes field to the stream.
|
void |
writeDouble(int fieldNumber, double value)
Write a
double field, including tag, to the stream.
|
void |
writeDoubleNoTag(double value)
Write a
double field to the stream.
|
void |
writeEnum(int fieldNumber, int value)
Write an enum field, including tag, to the stream.
|
void |
writeEnumNoTag(int value)
Write an enum field to the stream.
|
void |
writeFixed32(int fieldNumber, int value)
Write a
fixed32 field, including tag, to the stream.
|
void |
writeFixed32NoTag(int value)
Write a
fixed32 field to the stream.
|
void |
writeFixed64(int fieldNumber, long value)
Write a
fixed64 field, including tag, to the stream.
|
void |
writeFixed64NoTag(long value)
Write a
fixed64 field to the stream.
|
void |
writeFloat(int fieldNumber, float value)
Write a
float field, including tag, to the stream.
|
void |
writeFloatNoTag(float value)
Write a
float field to the stream.
|
void |
writeGroup(int fieldNumber, MessageLite
Write a
group field, including tag, to the stream.
|
void |
writeGroupNoTag(MessageLite
Write a
group field to the stream.
|
void |
writeInt32(int fieldNumber, int value)
Write an
int32 field, including tag, to the stream.
|
void |
writeInt32NoTag(int value)
Write an
int32 field to the stream.
|
void |
writeInt64(int fieldNumber, long value)
Write an
int64 field, including tag, to the stream.
|
void |
writeInt64NoTag(long value)
Write an
int64 field to the stream.
|
void |
writeMessage(int fieldNumber, MessageLite
Write an embedded message field, including tag, to the stream.
|
void |
writeMessageNoTag(MessageLite
Write an embedded message field to the stream.
|
void |
writeMessageSetExtension(int fieldNumber, MessageLite
Write a MessageSet extension field to the stream.
|
void |
writeRawByte(byte value)
Write a single byte.
|
void |
writeRawByte(int value)
Write a single byte, represented by an integer value.
|
void |
writeRawBytes(byte[] value)
Write an array of bytes.
|
void |
writeRawBytes(byte[] value, int offset, int length)
Write part of an array of bytes.
|
void |
writeRawBytes(ByteBuffer
Write a ByteBuffer.
|
void |
writeRawBytes(ByteString
Write a byte string.
|
void |
writeRawBytes(ByteString
Write part of a byte string.
|
void |
writeRawLittleEndian32(int value)
Write a little-endian 32-bit integer.
|
void |
writeRawLittleEndian64(long value)
Write a little-endian 64-bit integer.
|
void |
writeRawMessageSetExtension(int fieldNumber, ByteString
Write an unparsed MessageSet extension field to the stream.
|
void |
writeRawVarint32(int value)
Encode and write a varint.
|
void |
writeRawVarint64(long value)
Encode and write a varint.
|
void |
writeSFixed32(int fieldNumber, int value)
Write an
sfixed32 field, including tag, to the stream.
|
void |
writeSFixed32NoTag(int value)
Write an
sfixed32 field to the stream.
|
void |
writeSFixed64(int fieldNumber, long value)
Write an
sfixed64 field, including tag, to the stream.
|
void |
writeSFixed64NoTag(long value)
Write an
sfixed64 field to the stream.
|
void |
writeSInt32(int fieldNumber, int value)
Write an
sint32 field, including tag, to the stream.
|
void |
writeSInt32NoTag(int value)
Write an
sint32 field to the stream.
|
void |
writeSInt64(int fieldNumber, long value)
Write an
sint64 field, including tag, to the stream.
|
void |
writeSInt64NoTag(long value)
Write an
sint64 field to the stream.
|
void |
writeString(int fieldNumber, String
Write a
string field, including tag, to the stream.
|
void |
writeStringNoTag(String
Write a
string field to the stream.
|
void |
writeTag(int fieldNumber, int wireType)
Encode and write a tag.
|
void |
writeUInt32(int fieldNumber, int value)
Write a
uint32 field, including tag, to the stream.
|
void |
writeUInt32NoTag(int value)
Write a
uint32 field to the stream.
|
void |
writeUInt64(int fieldNumber, long value)
Write a
uint64 field, including tag, to the stream.
|
void |
writeUInt64NoTag(long value)
Write a
uint64 field to the stream.
|
void |
writeUnknownGroup(int fieldNumber, MessageLite
Deprecated.
UnknownFieldSet now implements MessageLite, so you can just call
writeGroup(int, com.google.protobuf.MessageLite).
|
void |
writeUnknownGroupNoTag(MessageLite
Deprecated.
UnknownFieldSet now implements MessageLite, so you can just call
writeGroupNoTag(com.google.protobuf.MessageLite).
|
public static final int DEFAULT_BUFFER_SIZE
newInstance(OutputStream).
public static final int LITTLE_ENDIAN_32_SIZE
public static final int LITTLE_ENDIAN_64_SIZE
public static CodedOutputStreamnewInstance(OutputStream output)
CodedOutputStream wrapping the given
OutputStream.
public static CodedOutputStreamnewInstance(OutputStream output, int bufferSize)
CodedOutputStream wrapping the given
OutputStream with a given buffer size.
public static CodedOutputStreamnewInstance(byte[] flatArray)
CodedOutputStream that writes directly to the given byte array. If more bytes are written than fit in the array,
CodedOutputStream.OutOfSpaceException will be thrown. Writing directly to a flat array is faster than writing to an
OutputStream. See also
ByteString.newCodedBuilder(int) .
public static CodedOutputStreamnewInstance(byte[] flatArray, int offset, int length)
CodedOutputStream that writes directly to the given byte array slice. If more bytes are written than fit in the slice,
CodedOutputStream.OutOfSpaceException will be thrown. Writing directly to a flat array is faster than writing to an
OutputStream. See also
ByteString.newCodedBuilder(int) .
public static CodedOutputStreamnewInstance(ByteBuffer byteBuffer)
CodedOutputStream that writes to the given ByteBuffer.
public static CodedOutputStreamnewInstance(ByteBuffer byteBuffer, int bufferSize)
CodedOutputStream that writes to the given ByteBuffer.
public void writeDouble(int fieldNumber,
double value)
throws IOException
double field, including tag, to the stream.
IOException
public void writeFloat(int fieldNumber,
float value)
throws IOException
float field, including tag, to the stream.
IOException
public void writeUInt64(int fieldNumber,
long value)
throws IOException
uint64 field, including tag, to the stream.
IOException
public void writeInt64(int fieldNumber,
long value)
throws IOException
int64 field, including tag, to the stream.
IOException
public void writeInt32(int fieldNumber,
int value)
throws IOException
int32 field, including tag, to the stream.
IOException
public void writeFixed64(int fieldNumber,
long value)
throws IOException
fixed64 field, including tag, to the stream.
IOException
public void writeFixed32(int fieldNumber,
int value)
throws IOException
fixed32 field, including tag, to the stream.
IOException
public void writeBool(int fieldNumber,
boolean value)
throws IOException
bool field, including tag, to the stream.
IOException
public void writeString(int fieldNumber,
String value)
throws IOException
string field, including tag, to the stream.
IOException
public void writeGroup(int fieldNumber,
MessageLite value)
throws IOException
group field, including tag, to the stream.
IOException
@Deprecated public void writeUnknownGroup(int fieldNumber, MessageLitevalue) throws IOException
writeGroup(int, com.google.protobuf.MessageLite).
UnknownFieldSet.
IOException
public void writeMessage(int fieldNumber,
MessageLite value)
throws IOException
IOException
public void writeBytes(int fieldNumber,
ByteString value)
throws IOException
bytes field, including tag, to the stream.
IOException
public void writeByteArray(int fieldNumber,
byte[] value)
throws IOException
bytes field, including tag, to the stream.
IOException
public void writeByteArray(int fieldNumber,
byte[] value,
int offset,
int length)
throws IOException
bytes field, including tag, to the stream.
IOException
public void writeByteBuffer(int fieldNumber,
ByteBuffer value)
throws IOException
bytes field, including tag, to the stream. This method will write all content of the ByteBuffer regardless of the current position and limit (i.e., the number of bytes to be written is value.capacity(), not value.remaining()). Furthermore, this method doesn't alter the state of the passed-in ByteBuffer. Its position, limit, mark, etc. will remain unchanged. If you only want to write the remaining bytes of a ByteBuffer, you can call
writeByteBuffer(fieldNumber, byteBuffer.slice()).
IOException
public void writeUInt32(int fieldNumber,
int value)
throws IOException
uint32 field, including tag, to the stream.
IOException
public void writeEnum(int fieldNumber,
int value)
throws IOException
IOException
public void writeSFixed32(int fieldNumber,
int value)
throws IOException
sfixed32 field, including tag, to the stream.
IOException
public void writeSFixed64(int fieldNumber,
long value)
throws IOException
sfixed64 field, including tag, to the stream.
IOException
public void writeSInt32(int fieldNumber,
int value)
throws IOException
sint32 field, including tag, to the stream.
IOException
public void writeSInt64(int fieldNumber,
long value)
throws IOException
sint64 field, including tag, to the stream.
IOException
public void writeMessageSetExtension(int fieldNumber,
MessageLite value)
throws IOException
IOException
public void writeRawMessageSetExtension(int fieldNumber,
ByteString value)
throws IOException
IOException
public void writeDoubleNoTag(double value)
throws IOException
double field to the stream.
IOException
public void writeFloatNoTag(float value)
throws IOException
float field to the stream.
IOException
public void writeUInt64NoTag(long value)
throws IOException
uint64 field to the stream.
IOException
public void writeInt64NoTag(long value)
throws IOException
int64 field to the stream.
IOException
public void writeInt32NoTag(int value)
throws IOException
int32 field to the stream.
IOException
public void writeFixed64NoTag(long value)
throws IOException
fixed64 field to the stream.
IOException
public void writeFixed32NoTag(int value)
throws IOException
fixed32 field to the stream.
IOException
public void writeBoolNoTag(boolean value)
throws IOException
bool field to the stream.
IOException
public void writeStringNoTag(Stringvalue) throws IOException
string field to the stream.
IOException
public void writeGroupNoTag(MessageLitevalue) throws IOException
group field to the stream.
IOException
@Deprecated public void writeUnknownGroupNoTag(MessageLitevalue) throws IOException
writeGroupNoTag(com.google.protobuf.MessageLite).
UnknownFieldSet.
IOException
public void writeMessageNoTag(MessageLitevalue) throws IOException
IOException
public void writeBytesNoTag(ByteStringvalue) throws IOException
bytes field to the stream.
IOException
public void writeByteArrayNoTag(byte[] value)
throws IOException
bytes field to the stream.
IOException
public void writeByteArrayNoTag(byte[] value,
int offset,
int length)
throws IOException
bytes field to the stream.
IOException
public void writeByteBufferNoTag(ByteBuffervalue) throws IOException
bytes field to the stream. This method will write all content of the ByteBuffer regardless of the current position and limit (i.e., the number of bytes to be written is value.capacity(), not value.remaining()). Furthermore, this method doesn't alter the state of the passed-in ByteBuffer. Its position, limit, mark, etc. will remain unchanged. If you only want to write the remaining bytes of a ByteBuffer, you can call
writeByteBufferNoTag(byteBuffer.slice()).
IOException
public void writeUInt32NoTag(int value)
throws IOException
uint32 field to the stream.
IOException
public void writeEnumNoTag(int value)
throws IOException
IOException
public void writeSFixed32NoTag(int value)
throws IOException
sfixed32 field to the stream.
IOException
public void writeSFixed64NoTag(long value)
throws IOException
sfixed64 field to the stream.
IOException
public void writeSInt32NoTag(int value)
throws IOException
sint32 field to the stream.
IOException
public void writeSInt64NoTag(long value)
throws IOException
sint64 field to the stream.
IOException
public static int computeDoubleSize(int fieldNumber,
double value)
double field, including tag.
public static int computeFloatSize(int fieldNumber,
float value)
float field, including tag.
public static int computeUInt64Size(int fieldNumber,
long value)
uint64 field, including tag.
public static int computeInt64Size(int fieldNumber,
long value)
int64 field, including tag.
public static int computeInt32Size(int fieldNumber,
int value)
int32 field, including tag.
public static int computeFixed64Size(int fieldNumber,
long value)
fixed64 field, including tag.
public static int computeFixed32Size(int fieldNumber,
int value)
fixed32 field, including tag.
public static int computeBoolSize(int fieldNumber,
boolean value)
bool field, including tag.
public static int computeStringSize(int fieldNumber,
String value)
string field, including tag.
public static int computeGroupSize(int fieldNumber,
MessageLite value)
group field, including tag.
@Deprecated public static int computeUnknownGroupSize(int fieldNumber, MessageLitevalue)
computeGroupSize(int, com.google.protobuf.MessageLite).
group field represented by an
UnknownFieldSet, including tag.
public static int computeMessageSize(int fieldNumber,
MessageLite value)
public static int computeBytesSize(int fieldNumber,
ByteString value)
bytes field, including tag.
public static int computeByteArraySize(int fieldNumber,
byte[] value)
bytes field, including tag.
public static int computeByteBufferSize(int fieldNumber,
ByteBuffer value)
bytes field, including tag.
public static int computeLazyFieldSize(int fieldNumber,
LazyFieldLite value)
public static int computeUInt32Size(int fieldNumber,
int value)
uint32 field, including tag.
public static int computeEnumSize(int fieldNumber,
int value)
public static int computeSFixed32Size(int fieldNumber,
int value)
sfixed32 field, including tag.
public static int computeSFixed64Size(int fieldNumber,
long value)
sfixed64 field, including tag.
public static int computeSInt32Size(int fieldNumber,
int value)
sint32 field, including tag.
public static int computeSInt64Size(int fieldNumber,
long value)
sint64 field, including tag.
public static int computeMessageSetExtensionSize(int fieldNumber,
MessageLite value)
public static int computeRawMessageSetExtensionSize(int fieldNumber,
ByteString value)
public static int computeLazyFieldMessageSetExtensionSize(int fieldNumber,
LazyFieldLite value)
public static int computeDoubleSizeNoTag(double value)
double field, including tag.
public static int computeFloatSizeNoTag(float value)
float field, including tag.
public static int computeUInt64SizeNoTag(long value)
uint64 field, including tag.
public static int computeInt64SizeNoTag(long value)
int64 field, including tag.
public static int computeInt32SizeNoTag(int value)
int32 field, including tag.
public static int computeFixed64SizeNoTag(long value)
fixed64 field.
public static int computeFixed32SizeNoTag(int value)
fixed32 field.
public static int computeBoolSizeNoTag(boolean value)
bool field.
public static int computeStringSizeNoTag(Stringvalue)
string field.
public static int computeGroupSizeNoTag(MessageLitevalue)
group field.
@Deprecated public static int computeUnknownGroupSizeNoTag(MessageLitevalue)
computeUnknownGroupSizeNoTag(com.google.protobuf.MessageLite).
group field represented by an
UnknownFieldSet, including tag.
public static int computeMessageSizeNoTag(MessageLitevalue)
public static int computeLazyFieldSizeNoTag(LazyFieldLitevalue)
public static int computeBytesSizeNoTag(ByteStringvalue)
bytes field.
public static int computeByteArraySizeNoTag(byte[] value)
bytes field.
public static int computeByteBufferSizeNoTag(ByteBuffervalue)
bytes field.
public static int computeUInt32SizeNoTag(int value)
uint32 field.
public static int computeEnumSizeNoTag(int value)
public static int computeSFixed32SizeNoTag(int value)
sfixed32 field.
public static int computeSFixed64SizeNoTag(long value)
sfixed64 field.
public static int computeSInt32SizeNoTag(int value)
sint32 field.
public static int computeSInt64SizeNoTag(long value)
sint64 field.
public void flush()
throws IOException
IOException
public int spaceLeft()
UnsupportedOperationException.
public void checkNoSpaceLeft()
spaceLeft() returns zero. It's common to create a byte array that is exactly big enough to hold a message, then write to it with a
CodedOutputStream. Calling
checkNoSpaceLeft() after writing verifies that the message was actually as big as expected, which can help catch bugs.
public int getTotalBytesWritten()
public void writeRawByte(byte value)
throws IOException
IOException
public void writeRawByte(int value)
throws IOException
IOException
public void writeRawBytes(ByteStringvalue) throws IOException
IOException
public void writeRawBytes(byte[] value)
throws IOException
IOException
public void writeRawBytes(ByteBuffervalue) throws IOException
writeRawBytes(byteBuffer.slice()).
IOException
public void writeRawBytes(byte[] value,
int offset,
int length)
throws IOException
IOException
public void writeRawBytes(ByteStringvalue, int offset, int length) throws IOException
IOException
public void writeTag(int fieldNumber,
int wireType)
throws IOException
IOException
public static int computeTagSize(int fieldNumber)
public void writeRawVarint32(int value)
throws IOException
value is treated as unsigned, so it won't be sign-extended if negative.
IOException
public static int computeRawVarint32Size(int value)
value is treated as unsigned, so it won't be sign-extended if negative.
public void writeRawVarint64(long value)
throws IOException
IOException
public static int computeRawVarint64Size(long value)
public void writeRawLittleEndian32(int value)
throws IOException
IOException
public void writeRawLittleEndian64(long value)
throws IOException
IOException
public static int encodeZigZag32(int n)
n - A signed 32-bit integer.
public static long encodeZigZag64(long n)
n - A signed 64-bit integer.