Java Code Examples for com.google.protobuf.CodedOutputStream#computeEnumSizeNoTag()
The following examples show how to use
com.google.protobuf.CodedOutputStream#computeEnumSizeNoTag() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: State.java From zetasketch with Apache License 2.0 | 6 votes |
public int getSerializedSize() { int size = 0; size += CodedOutputStream.computeUInt32SizeNoTag(TYPE_TAG); size += CodedOutputStream.computeEnumSizeNoTag(type.getNumber()); size += CodedOutputStream.computeUInt32SizeNoTag(NUM_VALUES_TAG); size += CodedOutputStream.computeInt64SizeNoTag(numValues); if (encodingVersion != DEFAULT_ENCODING_VERSION) { size += CodedOutputStream.computeUInt32SizeNoTag(ENCODING_VERSION_TAG); size += CodedOutputStream.computeInt32SizeNoTag(encodingVersion); } if (!valueType.equals(DEFAULT_VALUE_TYPE)) { size += CodedOutputStream.computeUInt32SizeNoTag(VALUE_TYPE_TAG); size += CodedOutputStream.computeEnumSizeNoTag(valueType.getNumber()); } int hllSize = getSerializedHllSize(); size += CodedOutputStream.computeUInt32SizeNoTag(HYPERLOGLOGPLUS_UNIQUE_STATE_TAG); size += CodedOutputStream.computeUInt32SizeNoTag(hllSize); size += hllSize; return size; }
Example 2
Source File: CodedConstant.java From jprotobuf with Apache License 2.0 | 4 votes |
/** * Compute the number of bytes that would be needed to encode a particular value of arbitrary type, excluding tag. * * @param type The field's type. * @param value Object representing the field's value. Must be of the exact type which would be returned by * {@link Message#getField(Descriptors.FieldDescriptor)} for this field. * @return the int */ public static int computeElementSizeNoTag(final WireFormat.FieldType type, final Object value) { switch (type) { // Note: Minor violation of 80-char limit rule here because this would // actually be harder to read if we wrapped the lines. case DOUBLE: return CodedOutputStream.computeDoubleSizeNoTag((Double) value); case FLOAT: return CodedOutputStream.computeFloatSizeNoTag((Float) value); case INT64: return CodedOutputStream.computeInt64SizeNoTag((Long) value); case UINT64: return CodedOutputStream.computeUInt64SizeNoTag((Long) value); case INT32: return CodedOutputStream.computeInt32SizeNoTag((Integer) value); case FIXED64: return CodedOutputStream.computeFixed64SizeNoTag((Long) value); case FIXED32: return CodedOutputStream.computeFixed32SizeNoTag((Integer) value); case BOOL: return CodedOutputStream.computeBoolSizeNoTag((Boolean) value); case STRING: return CodedOutputStream.computeStringSizeNoTag((String) value); case GROUP: return CodedOutputStream.computeGroupSizeNoTag((MessageLite) value); case BYTES: if (value instanceof ByteString) { return CodedOutputStream.computeBytesSizeNoTag((ByteString) value); } else { if (value instanceof Byte[]) { return computeLengthDelimitedFieldSize(((Byte[]) value).length); } return CodedOutputStream.computeByteArraySizeNoTag((byte[]) value); } case UINT32: return CodedOutputStream.computeUInt32SizeNoTag((Integer) value); case SFIXED32: return CodedOutputStream.computeSFixed32SizeNoTag((Integer) value); case SFIXED64: return CodedOutputStream.computeSFixed64SizeNoTag((Long) value); case SINT32: return CodedOutputStream.computeSInt32SizeNoTag((Integer) value); case SINT64: return CodedOutputStream.computeSInt64SizeNoTag((Long) value); case MESSAGE: if (value instanceof LazyField) { return CodedOutputStream.computeLazyFieldSizeNoTag((LazyField) value); } else { return computeObjectSizeNoTag(value); } case ENUM: if (value instanceof Internal.EnumLite) { return CodedOutputStream.computeEnumSizeNoTag(((Internal.EnumLite) value).getNumber()); } else { if (value instanceof EnumReadable) { return CodedOutputStream.computeEnumSizeNoTag(((EnumReadable) value).value()); } else if (value instanceof Enum) { return CodedOutputStream.computeEnumSizeNoTag(((Enum) value).ordinal()); } return CodedOutputStream.computeEnumSizeNoTag((Integer) value); } } throw new RuntimeException("There is no way to get here, but the compiler thinks otherwise."); }