com.google.protobuf

## Class GeneratedMessageLite.ExtendableMessage<MessageType extends GeneratedMessageLite.ExtendableMessage<MessageType,BuilderType>,BuilderType extends GeneratedMessageLite.ExtendableBuilder<MessageType,BuilderType>>

- java.lang.Object
- - com.google.protobuf.AbstractMessageLite<MessageType,BuilderType>
  - - com.google.protobuf.GeneratedMessageLite<MessageType,BuilderType>
    - - com.google.protobuf.GeneratedMessageLite.ExtendableMessage<MessageType,BuilderType>

- All Implemented Interfaces:
    GeneratedMessageLite.ExtendableMessageOrBuilder<MessageType,BuilderType>, MessageLite, MessageLiteOrBuilder
  Enclosing class:
    GeneratedMessageLite<MessageType extends GeneratedMessageLite<MessageType,BuilderType>,BuilderType extends GeneratedMessageLite.Builder<MessageType,BuilderType>>

      public abstract static class GeneratedMessageLite.ExtendableMessage<MessageType extends GeneratedMessageLite.ExtendableMessage<MessageType,BuilderType>,BuilderType extends GeneratedMessageLite.ExtendableBuilder<MessageType,BuilderType>>
      extends GeneratedMessageLite<MessageType,BuilderType>
      implements GeneratedMessageLite.ExtendableMessageOrBuilder<MessageType,BuilderType>

  Lite equivalent of `GeneratedMessage.ExtendableMessage`.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `protected class` | `GeneratedMessageLite.ExtendableMessage.ExtensionWriter` Used by subclasses to serialize extensions.

    - ### Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessageLite

      `GeneratedMessageLite.Builder<MessageType extends GeneratedMessageLite<MessageType,BuilderType>,BuilderType extends GeneratedMessageLite.Builder<MessageType,BuilderType>>, GeneratedMessageLite.DefaultInstanceBasedParser<T extends GeneratedMessageLite<T,?>>, GeneratedMessageLite.ExtendableBuilder<MessageType extends GeneratedMessageLite.ExtendableMessage<MessageType,BuilderType>,BuilderType extends GeneratedMessageLite.ExtendableBuilder<MessageType,BuilderType>>, GeneratedMessageLite.ExtendableMessage<MessageType extends GeneratedMessageLite.ExtendableMessage<MessageType,BuilderType>,BuilderType extends GeneratedMessageLite.ExtendableBuilder<MessageType,BuilderType>>, GeneratedMessageLite.ExtendableMessageOrBuilder<MessageType extends GeneratedMessageLite.ExtendableMessage<MessageType,BuilderType>,BuilderType extends GeneratedMessageLite.ExtendableBuilder<MessageType,BuilderType>>, GeneratedMessageLite.GeneratedExtension<ContainingType extends MessageLite,Type>, GeneratedMessageLite.MergeFromVisitor, GeneratedMessageLite.MethodToInvoke, GeneratedMessageLite.SerializedForm, GeneratedMessageLite.Visitor`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected com.google.protobuf.FieldSet<com.google.protobuf.GeneratedMessageLite.ExtensionDescriptor>` | `extensions` Represents the set of extensions on this message.

    - ### Fields inherited from class com.google.protobuf.GeneratedMessageLite

      `memoizedSerializedSize, unknownFields`

    - ### Fields inherited from class com.google.protobuf.AbstractMessageLite

      `memoizedHashCode`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `GeneratedMessageLite.ExtendableMessage()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected boolean` | `extensionsAreInitialized()` Called by subclasses to check if all extensions are initialized.
    `protected int` | `extensionsSerializedSize()` Called by subclasses to compute the size of extensions.
    `protected int` | `extensionsSerializedSizeAsMessageSet()`
    `<Type> Type` | `getExtension(ExtensionLite<MessageType,java.util.List<Type>> extension, int index)` Get one element of a repeated extension.
    `<Type> Type` | `getExtension(ExtensionLite<MessageType,Type> extension)` Get the value of an extension.
    `<Type> int` | `getExtensionCount(ExtensionLite<MessageType,java.util.List<Type>> extension)` Get the number of elements in a repeated extension.
    `<Type> boolean` | `hasExtension(ExtensionLite<MessageType,Type> extension)` Check if a singular extension is present.
    `protected void` | `makeImmutable()` Called by subclasses to complete parsing.
    `protected void` | `mergeExtensionFields(MessageType other)`
    `protected GeneratedMessageLite.ExtendableMessage.ExtensionWriter` | `newExtensionWriter()`
    `protected GeneratedMessageLite.ExtendableMessage.ExtensionWriter` | `newMessageSetExtensionWriter()`
    `protected <MessageType extends MessageLite> boolean` | `parseUnknownField(MessageType defaultInstance, CodedInputStream input, ExtensionRegistryLite extensionRegistry, int tag)` Parse an unknown field or an extension.
    `protected <MessageType extends MessageLite> boolean` | `parseUnknownFieldAsMessageSet(MessageType defaultInstance, CodedInputStream input, ExtensionRegistryLite extensionRegistry, int tag)` Parse an unknown field or an extension.

    - ### Methods inherited from class com.google.protobuf.GeneratedMessageLite

      `dynamicMethod, dynamicMethod, dynamicMethod, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyLongList, emptyProtobufList, equals, getDefaultInstanceForType, getParserForType, hashCode, isInitialized, isInitialized, makeImmutable, mergeLengthDelimitedField, mergeUnknownFields, mergeVarintField, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, newBuilderForType, newRepeatedGeneratedExtension, newSingularGeneratedExtension, parseDelimitedFrom, parseDelimitedFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parsePartialFrom, parseUnknownField, toBuilder, toString`

    - ### Methods inherited from class com.google.protobuf.AbstractMessageLite

      `addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface com.google.protobuf.MessageLiteOrBuilder

      `getDefaultInstanceForType, isInitialized`

    - ### Methods inherited from interface com.google.protobuf.MessageLite

      `getSerializedSize, writeTo`

- - ### Field Detail

    - #### extensions

          protected com.google.protobuf.FieldSet<com.google.protobuf.GeneratedMessageLite.ExtensionDescriptor> extensions

      Represents the set of extensions on this message. For use by generated code only.

  - ### Constructor Detail

    - #### GeneratedMessageLite.ExtendableMessage

          public GeneratedMessageLite.ExtendableMessage()

  - ### Method Detail

    - #### mergeExtensionFields

          protected final void mergeExtensionFields(MessageType other)

    - #### parseUnknownField

          protected <MessageType extends MessageLite> boolean parseUnknownField(MessageType defaultInstance,
                                                                    CodedInputStream input,
                                                                    ExtensionRegistryLite extensionRegistry,
                                                                    int tag)
                                       throws java.io.IOException

      Parse an unknown field or an extension. For use by generated code only.

      For use by generated code only.

      Returns:
        `true` unless the tag is an end-group tag.
      Throws:
        `java.io.IOException`

    - #### parseUnknownFieldAsMessageSet

          protected <MessageType extends MessageLite> boolean parseUnknownFieldAsMessageSet(MessageType defaultInstance,
                                                                                CodedInputStream input,
                                                                                ExtensionRegistryLite extensionRegistry,
                                                                                int tag)
                                                   throws java.io.IOException

      Parse an unknown field or an extension. For use by generated code only.

      For use by generated code only.

      Returns:
        `true` unless the tag is an end-group tag.
      Throws:
        `java.io.IOException`

    - #### hasExtension

          public final <Type> boolean hasExtension(ExtensionLite<MessageType,Type> extension)

      Check if a singular extension is present.
      Specified by:
        `hasExtension` in interface `GeneratedMessageLite.ExtendableMessageOrBuilder<MessageType extends GeneratedMessageLite.ExtendableMessage<MessageType,BuilderType>,BuilderType extends GeneratedMessageLite.ExtendableBuilder<MessageType,BuilderType>>`

    - #### getExtensionCount

          public final <Type> int getExtensionCount(ExtensionLite<MessageType,java.util.List<Type>> extension)

      Get the number of elements in a repeated extension.
      Specified by:
        `getExtensionCount` in interface `GeneratedMessageLite.ExtendableMessageOrBuilder<MessageType extends GeneratedMessageLite.ExtendableMessage<MessageType,BuilderType>,BuilderType extends GeneratedMessageLite.ExtendableBuilder<MessageType,BuilderType>>`

    - #### getExtension

          public final <Type> Type getExtension(ExtensionLite<MessageType,Type> extension)

      Get the value of an extension.
      Specified by:
        `getExtension` in interface `GeneratedMessageLite.ExtendableMessageOrBuilder<MessageType extends GeneratedMessageLite.ExtendableMessage<MessageType,BuilderType>,BuilderType extends GeneratedMessageLite.ExtendableBuilder<MessageType,BuilderType>>`

    - #### getExtension

          public final <Type> Type getExtension(ExtensionLite<MessageType,java.util.List<Type>> extension,
                                 int index)

      Get one element of a repeated extension.
      Specified by:
        `getExtension` in interface `GeneratedMessageLite.ExtendableMessageOrBuilder<MessageType extends GeneratedMessageLite.ExtendableMessage<MessageType,BuilderType>,BuilderType extends GeneratedMessageLite.ExtendableBuilder<MessageType,BuilderType>>`

    - #### extensionsAreInitialized

          protected boolean extensionsAreInitialized()

      Called by subclasses to check if all extensions are initialized.

    - #### makeImmutable

          protected final void makeImmutable()

      Description copied from class: `GeneratedMessageLite`
      Called by subclasses to complete parsing. For use by generated code only.
      Overrides:
        `makeImmutable` in class `GeneratedMessageLite<MessageType extends GeneratedMessageLite.ExtendableMessage<MessageType,BuilderType>,BuilderType extends GeneratedMessageLite.ExtendableBuilder<MessageType,BuilderType>>`

    - #### newExtensionWriter

          protected GeneratedMessageLite.ExtendableMessage.ExtensionWriter newExtensionWriter()

    - #### newMessageSetExtensionWriter

          protected GeneratedMessageLite.ExtendableMessage.ExtensionWriter newMessageSetExtensionWriter()

    - #### extensionsSerializedSize

          protected int extensionsSerializedSize()

      Called by subclasses to compute the size of extensions.

    - #### extensionsSerializedSizeAsMessageSet

          protected int extensionsSerializedSizeAsMessageSet()