All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.google.protobuf.descriptor.FieldOptions.scala Maven / Gradle / Ivy

The newest version!
// Generated by the Scala Plugin for the Protocol Buffer Compiler.
// Do not edit!

package com.google.protobuf.descriptor

/** @param ctype
  *   NOTE: ctype is deprecated. Use `features.(pb.cpp).string_type` instead.
  *   The ctype option instructs the C++ code generator to use a different
  *   representation of the field than it normally would.  See the specific
  *   options below.  This option is only implemented to support use of
  *   [ctype=CORD] and [ctype=STRING] (the default) on non-repeated fields of
  *   type "bytes" in the open source release.
  *   TODO: make ctype actually deprecated.
  * @param packed
  *   The packed option can be enabled for repeated primitive fields to enable
  *   a more efficient representation on the wire. Rather than repeatedly
  *   writing the tag and type for each element, the entire array is encoded as
  *   a single length-delimited blob. In proto3, only explicit setting it to
  *   false will avoid using packed encoding.  This option is prohibited in
  *   Editions, but the `repeated_field_encoding` feature can be used to control
  *   the behavior.
  * @param jstype
  *   The jstype option determines the JavaScript type used for values of the
  *   field.  The option is permitted only for 64 bit integral and fixed types
  *   (int64, uint64, sint64, fixed64, sfixed64).  A field with jstype JS_STRING
  *   is represented as JavaScript string, which avoids loss of precision that
  *   can happen when a large value is converted to a floating point JavaScript.
  *   Specifying JS_NUMBER for the jstype causes the generated JavaScript code to
  *   use the JavaScript "number" type.  The behavior of the default option
  *   JS_NORMAL is implementation dependent.
  *  
  *   This option is an enum to permit additional types to be added, e.g.
  *   goog.math.Integer.
  * @param lazy
  *   Should this field be parsed lazily?  Lazy applies only to message-type
  *   fields.  It means that when the outer message is initially parsed, the
  *   inner message's contents will not be parsed but instead stored in encoded
  *   form.  The inner message will actually be parsed when it is first accessed.
  *  
  *   This is only a hint.  Implementations are free to choose whether to use
  *   eager or lazy parsing regardless of the value of this option.  However,
  *   setting this option true suggests that the protocol author believes that
  *   using lazy parsing on this field is worth the additional bookkeeping
  *   overhead typically needed to implement it.
  *  
  *   This option does not affect the public interface of any generated code;
  *   all method signatures remain the same.  Furthermore, thread-safety of the
  *   interface is not affected by this option; const methods remain safe to
  *   call from multiple threads concurrently, while non-const methods continue
  *   to require exclusive access.
  *  
  *   Note that lazy message fields are still eagerly verified to check
  *   ill-formed wireformat or missing required fields. Calling IsInitialized()
  *   on the outer message would fail if the inner message has missing required
  *   fields. Failed verification would result in parsing failure (except when
  *   uninitialized messages are acceptable).
  * @param unverifiedLazy
  *   unverified_lazy does no correctness checks on the byte stream. This should
  *   only be used where lazy with verification is prohibitive for performance
  *   reasons.
  * @param deprecated
  *   Is this field deprecated?
  *   Depending on the target platform, this can emit Deprecated annotations
  *   for accessors, or it will be completely ignored; in the very least, this
  *   is a formalization for deprecating fields.
  * @param weak
  *   For Google-internal migration only. Do not use.
  * @param debugRedact
  *   Indicate that the field value should not be printed out when using debug
  *   formats, e.g. when the field contains sensitive credentials.
  * @param features
  *   Any features defined in the specific edition.
  * @param uninterpretedOption
  *   The parser stores options it doesn't recognize here. See above.
  */
@SerialVersionUID(0L)
final case class FieldOptions(
    ctype: _root_.scala.Option[com.google.protobuf.descriptor.FieldOptions.CType] = _root_.scala.None,
    packed: _root_.scala.Option[_root_.scala.Boolean] = _root_.scala.None,
    jstype: _root_.scala.Option[com.google.protobuf.descriptor.FieldOptions.JSType] = _root_.scala.None,
    `lazy`: _root_.scala.Option[_root_.scala.Boolean] = _root_.scala.None,
    unverifiedLazy: _root_.scala.Option[_root_.scala.Boolean] = _root_.scala.None,
    deprecated: _root_.scala.Option[_root_.scala.Boolean] = _root_.scala.None,
    weak: _root_.scala.Option[_root_.scala.Boolean] = _root_.scala.None,
    debugRedact: _root_.scala.Option[_root_.scala.Boolean] = _root_.scala.None,
    retention: _root_.scala.Option[com.google.protobuf.descriptor.FieldOptions.OptionRetention] = _root_.scala.None,
    targets: _root_.scala.Seq[com.google.protobuf.descriptor.FieldOptions.OptionTargetType] = _root_.scala.Seq.empty,
    editionDefaults: _root_.scala.Seq[com.google.protobuf.descriptor.FieldOptions.EditionDefault] = _root_.scala.Seq.empty,
    features: _root_.scala.Option[com.google.protobuf.descriptor.FeatureSet] = _root_.scala.None,
    featureSupport: _root_.scala.Option[com.google.protobuf.descriptor.FieldOptions.FeatureSupport] = _root_.scala.None,
    uninterpretedOption: _root_.scala.Seq[com.google.protobuf.descriptor.UninterpretedOption] = _root_.scala.Seq.empty,
    unknownFields: _root_.scalapb.UnknownFieldSet = _root_.scalapb.UnknownFieldSet.empty
    ) extends scalapb.GeneratedMessage with scalapb.lenses.Updatable[FieldOptions] with _root_.scalapb.ExtendableMessage[FieldOptions] {
    @transient
    private[this] var __serializedSizeMemoized: _root_.scala.Int = 0
    private[this] def __computeSerializedSize(): _root_.scala.Int = {
      var __size = 0
      if (ctype.isDefined) {
        val __value = ctype.get.value
        __size += _root_.com.google.protobuf.CodedOutputStream.computeEnumSize(1, __value)
      };
      if (packed.isDefined) {
        val __value = packed.get
        __size += _root_.com.google.protobuf.CodedOutputStream.computeBoolSize(2, __value)
      };
      if (jstype.isDefined) {
        val __value = jstype.get.value
        __size += _root_.com.google.protobuf.CodedOutputStream.computeEnumSize(6, __value)
      };
      if (`lazy`.isDefined) {
        val __value = `lazy`.get
        __size += _root_.com.google.protobuf.CodedOutputStream.computeBoolSize(5, __value)
      };
      if (unverifiedLazy.isDefined) {
        val __value = unverifiedLazy.get
        __size += _root_.com.google.protobuf.CodedOutputStream.computeBoolSize(15, __value)
      };
      if (deprecated.isDefined) {
        val __value = deprecated.get
        __size += _root_.com.google.protobuf.CodedOutputStream.computeBoolSize(3, __value)
      };
      if (weak.isDefined) {
        val __value = weak.get
        __size += _root_.com.google.protobuf.CodedOutputStream.computeBoolSize(10, __value)
      };
      if (debugRedact.isDefined) {
        val __value = debugRedact.get
        __size += _root_.com.google.protobuf.CodedOutputStream.computeBoolSize(16, __value)
      };
      if (retention.isDefined) {
        val __value = retention.get.value
        __size += _root_.com.google.protobuf.CodedOutputStream.computeEnumSize(17, __value)
      };
      targets.foreach { __item =>
        val __value = __item.value
        __size += _root_.com.google.protobuf.CodedOutputStream.computeEnumSize(19, __value)
      }
      editionDefaults.foreach { __item =>
        val __value = __item
        __size += 2 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      }
      if (features.isDefined) {
        val __value = features.get
        __size += 2 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      };
      if (featureSupport.isDefined) {
        val __value = featureSupport.get
        __size += 2 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      };
      uninterpretedOption.foreach { __item =>
        val __value = __item
        __size += 2 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      }
      __size += unknownFields.serializedSize
      __size
    }
    override def serializedSize: _root_.scala.Int = {
      var __size = __serializedSizeMemoized
      if (__size == 0) {
        __size = __computeSerializedSize() + 1
        __serializedSizeMemoized = __size
      }
      __size - 1
      
    }
    def writeTo(`_output__`: _root_.com.google.protobuf.CodedOutputStream): _root_.scala.Unit = {
      ctype.foreach { __v =>
        val __m = __v.value
        _output__.writeEnum(1, __m)
      };
      packed.foreach { __v =>
        val __m = __v
        _output__.writeBool(2, __m)
      };
      deprecated.foreach { __v =>
        val __m = __v
        _output__.writeBool(3, __m)
      };
      `lazy`.foreach { __v =>
        val __m = __v
        _output__.writeBool(5, __m)
      };
      jstype.foreach { __v =>
        val __m = __v.value
        _output__.writeEnum(6, __m)
      };
      weak.foreach { __v =>
        val __m = __v
        _output__.writeBool(10, __m)
      };
      unverifiedLazy.foreach { __v =>
        val __m = __v
        _output__.writeBool(15, __m)
      };
      debugRedact.foreach { __v =>
        val __m = __v
        _output__.writeBool(16, __m)
      };
      retention.foreach { __v =>
        val __m = __v.value
        _output__.writeEnum(17, __m)
      };
      targets.foreach { __v =>
        val __m = __v.value
        _output__.writeEnum(19, __m)
      };
      editionDefaults.foreach { __v =>
        val __m = __v
        _output__.writeTag(20, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      features.foreach { __v =>
        val __m = __v
        _output__.writeTag(21, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      featureSupport.foreach { __v =>
        val __m = __v
        _output__.writeTag(22, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      uninterpretedOption.foreach { __v =>
        val __m = __v
        _output__.writeTag(999, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      unknownFields.writeTo(_output__)
    }
    def getCtype: com.google.protobuf.descriptor.FieldOptions.CType = ctype.getOrElse(com.google.protobuf.descriptor.FieldOptions.CType.STRING)
    def clearCtype: FieldOptions = copy(ctype = _root_.scala.None)
    def withCtype(__v: com.google.protobuf.descriptor.FieldOptions.CType): FieldOptions = copy(ctype = Option(__v))
    def getPacked: _root_.scala.Boolean = packed.getOrElse(false)
    def clearPacked: FieldOptions = copy(packed = _root_.scala.None)
    def withPacked(__v: _root_.scala.Boolean): FieldOptions = copy(packed = Option(__v))
    def getJstype: com.google.protobuf.descriptor.FieldOptions.JSType = jstype.getOrElse(com.google.protobuf.descriptor.FieldOptions.JSType.JS_NORMAL)
    def clearJstype: FieldOptions = copy(jstype = _root_.scala.None)
    def withJstype(__v: com.google.protobuf.descriptor.FieldOptions.JSType): FieldOptions = copy(jstype = Option(__v))
    def getLazy: _root_.scala.Boolean = `lazy`.getOrElse(false)
    def clearLazy: FieldOptions = copy(`lazy` = _root_.scala.None)
    def withLazy(__v: _root_.scala.Boolean): FieldOptions = copy(`lazy` = Option(__v))
    def getUnverifiedLazy: _root_.scala.Boolean = unverifiedLazy.getOrElse(false)
    def clearUnverifiedLazy: FieldOptions = copy(unverifiedLazy = _root_.scala.None)
    def withUnverifiedLazy(__v: _root_.scala.Boolean): FieldOptions = copy(unverifiedLazy = Option(__v))
    def getDeprecated: _root_.scala.Boolean = deprecated.getOrElse(false)
    def clearDeprecated: FieldOptions = copy(deprecated = _root_.scala.None)
    def withDeprecated(__v: _root_.scala.Boolean): FieldOptions = copy(deprecated = Option(__v))
    def getWeak: _root_.scala.Boolean = weak.getOrElse(false)
    def clearWeak: FieldOptions = copy(weak = _root_.scala.None)
    def withWeak(__v: _root_.scala.Boolean): FieldOptions = copy(weak = Option(__v))
    def getDebugRedact: _root_.scala.Boolean = debugRedact.getOrElse(false)
    def clearDebugRedact: FieldOptions = copy(debugRedact = _root_.scala.None)
    def withDebugRedact(__v: _root_.scala.Boolean): FieldOptions = copy(debugRedact = Option(__v))
    def getRetention: com.google.protobuf.descriptor.FieldOptions.OptionRetention = retention.getOrElse(com.google.protobuf.descriptor.FieldOptions.OptionRetention.RETENTION_UNKNOWN)
    def clearRetention: FieldOptions = copy(retention = _root_.scala.None)
    def withRetention(__v: com.google.protobuf.descriptor.FieldOptions.OptionRetention): FieldOptions = copy(retention = Option(__v))
    def clearTargets = copy(targets = _root_.scala.Seq.empty)
    def addTargets(__vs: com.google.protobuf.descriptor.FieldOptions.OptionTargetType *): FieldOptions = addAllTargets(__vs)
    def addAllTargets(__vs: Iterable[com.google.protobuf.descriptor.FieldOptions.OptionTargetType]): FieldOptions = copy(targets = targets ++ __vs)
    def withTargets(__v: _root_.scala.Seq[com.google.protobuf.descriptor.FieldOptions.OptionTargetType]): FieldOptions = copy(targets = __v)
    def clearEditionDefaults = copy(editionDefaults = _root_.scala.Seq.empty)
    def addEditionDefaults(__vs: com.google.protobuf.descriptor.FieldOptions.EditionDefault *): FieldOptions = addAllEditionDefaults(__vs)
    def addAllEditionDefaults(__vs: Iterable[com.google.protobuf.descriptor.FieldOptions.EditionDefault]): FieldOptions = copy(editionDefaults = editionDefaults ++ __vs)
    def withEditionDefaults(__v: _root_.scala.Seq[com.google.protobuf.descriptor.FieldOptions.EditionDefault]): FieldOptions = copy(editionDefaults = __v)
    def getFeatures: com.google.protobuf.descriptor.FeatureSet = features.getOrElse(com.google.protobuf.descriptor.FeatureSet.defaultInstance)
    def clearFeatures: FieldOptions = copy(features = _root_.scala.None)
    def withFeatures(__v: com.google.protobuf.descriptor.FeatureSet): FieldOptions = copy(features = Option(__v))
    def getFeatureSupport: com.google.protobuf.descriptor.FieldOptions.FeatureSupport = featureSupport.getOrElse(com.google.protobuf.descriptor.FieldOptions.FeatureSupport.defaultInstance)
    def clearFeatureSupport: FieldOptions = copy(featureSupport = _root_.scala.None)
    def withFeatureSupport(__v: com.google.protobuf.descriptor.FieldOptions.FeatureSupport): FieldOptions = copy(featureSupport = Option(__v))
    def clearUninterpretedOption = copy(uninterpretedOption = _root_.scala.Seq.empty)
    def addUninterpretedOption(__vs: com.google.protobuf.descriptor.UninterpretedOption *): FieldOptions = addAllUninterpretedOption(__vs)
    def addAllUninterpretedOption(__vs: Iterable[com.google.protobuf.descriptor.UninterpretedOption]): FieldOptions = copy(uninterpretedOption = uninterpretedOption ++ __vs)
    def withUninterpretedOption(__v: _root_.scala.Seq[com.google.protobuf.descriptor.UninterpretedOption]): FieldOptions = copy(uninterpretedOption = __v)
    def withUnknownFields(__v: _root_.scalapb.UnknownFieldSet) = copy(unknownFields = __v)
    def discardUnknownFields = copy(unknownFields = _root_.scalapb.UnknownFieldSet.empty)
    def getFieldByNumber(__fieldNumber: _root_.scala.Int): _root_.scala.Any = {
      (__fieldNumber: @_root_.scala.unchecked) match {
        case 1 => ctype.map(_.javaValueDescriptor).orNull
        case 2 => packed.orNull
        case 6 => jstype.map(_.javaValueDescriptor).orNull
        case 5 => `lazy`.orNull
        case 15 => unverifiedLazy.orNull
        case 3 => deprecated.orNull
        case 10 => weak.orNull
        case 16 => debugRedact.orNull
        case 17 => retention.map(_.javaValueDescriptor).orNull
        case 19 => targets.iterator.map(_.javaValueDescriptor).toSeq
        case 20 => editionDefaults
        case 21 => features.orNull
        case 22 => featureSupport.orNull
        case 999 => uninterpretedOption
      }
    }
    def getField(__field: _root_.scalapb.descriptors.FieldDescriptor): _root_.scalapb.descriptors.PValue = {
      _root_.scala.Predef.require(__field.containingMessage eq companion.scalaDescriptor)
      (__field.number: @_root_.scala.unchecked) match {
        case 1 => ctype.map(__e => _root_.scalapb.descriptors.PEnum(__e.scalaValueDescriptor)).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 2 => packed.map(_root_.scalapb.descriptors.PBoolean(_)).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 6 => jstype.map(__e => _root_.scalapb.descriptors.PEnum(__e.scalaValueDescriptor)).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 5 => `lazy`.map(_root_.scalapb.descriptors.PBoolean(_)).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 15 => unverifiedLazy.map(_root_.scalapb.descriptors.PBoolean(_)).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 3 => deprecated.map(_root_.scalapb.descriptors.PBoolean(_)).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 10 => weak.map(_root_.scalapb.descriptors.PBoolean(_)).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 16 => debugRedact.map(_root_.scalapb.descriptors.PBoolean(_)).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 17 => retention.map(__e => _root_.scalapb.descriptors.PEnum(__e.scalaValueDescriptor)).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 19 => _root_.scalapb.descriptors.PRepeated(targets.iterator.map(__e => _root_.scalapb.descriptors.PEnum(__e.scalaValueDescriptor)).toVector)
        case 20 => _root_.scalapb.descriptors.PRepeated(editionDefaults.iterator.map(_.toPMessage).toVector)
        case 21 => features.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 22 => featureSupport.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 999 => _root_.scalapb.descriptors.PRepeated(uninterpretedOption.iterator.map(_.toPMessage).toVector)
      }
    }
    def toProtoString: _root_.scala.Predef.String = _root_.scalapb.TextFormat.printToUnicodeString(this)
    def companion: com.google.protobuf.descriptor.FieldOptions.type = com.google.protobuf.descriptor.FieldOptions
    // @@protoc_insertion_point(GeneratedMessage[google.protobuf.FieldOptions])
}

object FieldOptions extends scalapb.GeneratedMessageCompanion[com.google.protobuf.descriptor.FieldOptions] {
  implicit def messageCompanion: scalapb.GeneratedMessageCompanion[com.google.protobuf.descriptor.FieldOptions] = this
  def parseFrom(`_input__`: _root_.com.google.protobuf.CodedInputStream): com.google.protobuf.descriptor.FieldOptions = {
    var __ctype: _root_.scala.Option[com.google.protobuf.descriptor.FieldOptions.CType] = _root_.scala.None
    var __packed: _root_.scala.Option[_root_.scala.Boolean] = _root_.scala.None
    var __jstype: _root_.scala.Option[com.google.protobuf.descriptor.FieldOptions.JSType] = _root_.scala.None
    var __lazy: _root_.scala.Option[_root_.scala.Boolean] = _root_.scala.None
    var __unverifiedLazy: _root_.scala.Option[_root_.scala.Boolean] = _root_.scala.None
    var __deprecated: _root_.scala.Option[_root_.scala.Boolean] = _root_.scala.None
    var __weak: _root_.scala.Option[_root_.scala.Boolean] = _root_.scala.None
    var __debugRedact: _root_.scala.Option[_root_.scala.Boolean] = _root_.scala.None
    var __retention: _root_.scala.Option[com.google.protobuf.descriptor.FieldOptions.OptionRetention] = _root_.scala.None
    val __targets: _root_.scala.collection.immutable.VectorBuilder[com.google.protobuf.descriptor.FieldOptions.OptionTargetType] = new _root_.scala.collection.immutable.VectorBuilder[com.google.protobuf.descriptor.FieldOptions.OptionTargetType]
    val __editionDefaults: _root_.scala.collection.immutable.VectorBuilder[com.google.protobuf.descriptor.FieldOptions.EditionDefault] = new _root_.scala.collection.immutable.VectorBuilder[com.google.protobuf.descriptor.FieldOptions.EditionDefault]
    var __features: _root_.scala.Option[com.google.protobuf.descriptor.FeatureSet] = _root_.scala.None
    var __featureSupport: _root_.scala.Option[com.google.protobuf.descriptor.FieldOptions.FeatureSupport] = _root_.scala.None
    val __uninterpretedOption: _root_.scala.collection.immutable.VectorBuilder[com.google.protobuf.descriptor.UninterpretedOption] = new _root_.scala.collection.immutable.VectorBuilder[com.google.protobuf.descriptor.UninterpretedOption]
    var `_unknownFields__`: _root_.scalapb.UnknownFieldSet.Builder = null
    var _done__ = false
    while (!_done__) {
      val _tag__ = _input__.readTag()
      _tag__ match {
        case 0 => _done__ = true
        case 8 =>
          __ctype = _root_.scala.Option(com.google.protobuf.descriptor.FieldOptions.CType.fromValue(_input__.readEnum()))
        case 16 =>
          __packed = _root_.scala.Option(_input__.readBool())
        case 48 =>
          __jstype = _root_.scala.Option(com.google.protobuf.descriptor.FieldOptions.JSType.fromValue(_input__.readEnum()))
        case 40 =>
          __lazy = _root_.scala.Option(_input__.readBool())
        case 120 =>
          __unverifiedLazy = _root_.scala.Option(_input__.readBool())
        case 24 =>
          __deprecated = _root_.scala.Option(_input__.readBool())
        case 80 =>
          __weak = _root_.scala.Option(_input__.readBool())
        case 128 =>
          __debugRedact = _root_.scala.Option(_input__.readBool())
        case 136 =>
          __retention = _root_.scala.Option(com.google.protobuf.descriptor.FieldOptions.OptionRetention.fromValue(_input__.readEnum()))
        case 152 =>
          __targets += com.google.protobuf.descriptor.FieldOptions.OptionTargetType.fromValue(_input__.readEnum())
        case 154 => {
          val length = _input__.readRawVarint32()
          val oldLimit = _input__.pushLimit(length)
          while (_input__.getBytesUntilLimit > 0) {
            __targets += com.google.protobuf.descriptor.FieldOptions.OptionTargetType.fromValue(_input__.readEnum())
          }
          _input__.popLimit(oldLimit)
        }
        case 162 =>
          __editionDefaults += _root_.scalapb.LiteParser.readMessage[com.google.protobuf.descriptor.FieldOptions.EditionDefault](_input__)
        case 170 =>
          __features = _root_.scala.Option(__features.fold(_root_.scalapb.LiteParser.readMessage[com.google.protobuf.descriptor.FeatureSet](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
        case 178 =>
          __featureSupport = _root_.scala.Option(__featureSupport.fold(_root_.scalapb.LiteParser.readMessage[com.google.protobuf.descriptor.FieldOptions.FeatureSupport](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
        case 7994 =>
          __uninterpretedOption += _root_.scalapb.LiteParser.readMessage[com.google.protobuf.descriptor.UninterpretedOption](_input__)
        case tag =>
          if (_unknownFields__ == null) {
            _unknownFields__ = new _root_.scalapb.UnknownFieldSet.Builder()
          }
          _unknownFields__.parseField(tag, _input__)
      }
    }
    com.google.protobuf.descriptor.FieldOptions(
        ctype = __ctype,
        packed = __packed,
        jstype = __jstype,
        `lazy` = __lazy,
        unverifiedLazy = __unverifiedLazy,
        deprecated = __deprecated,
        weak = __weak,
        debugRedact = __debugRedact,
        retention = __retention,
        targets = __targets.result(),
        editionDefaults = __editionDefaults.result(),
        features = __features,
        featureSupport = __featureSupport,
        uninterpretedOption = __uninterpretedOption.result(),
        unknownFields = if (_unknownFields__ == null) _root_.scalapb.UnknownFieldSet.empty else _unknownFields__.result()
    )
  }
  implicit def messageReads: _root_.scalapb.descriptors.Reads[com.google.protobuf.descriptor.FieldOptions] = _root_.scalapb.descriptors.Reads{
    case _root_.scalapb.descriptors.PMessage(__fieldsMap) =>
      _root_.scala.Predef.require(__fieldsMap.keys.forall(_.containingMessage eq scalaDescriptor), "FieldDescriptor does not match message type.")
      com.google.protobuf.descriptor.FieldOptions(
        ctype = __fieldsMap.get(scalaDescriptor.findFieldByNumber(1).get).flatMap(_.as[_root_.scala.Option[_root_.scalapb.descriptors.EnumValueDescriptor]]).map(__e => com.google.protobuf.descriptor.FieldOptions.CType.fromValue(__e.number)),
        packed = __fieldsMap.get(scalaDescriptor.findFieldByNumber(2).get).flatMap(_.as[_root_.scala.Option[_root_.scala.Boolean]]),
        jstype = __fieldsMap.get(scalaDescriptor.findFieldByNumber(6).get).flatMap(_.as[_root_.scala.Option[_root_.scalapb.descriptors.EnumValueDescriptor]]).map(__e => com.google.protobuf.descriptor.FieldOptions.JSType.fromValue(__e.number)),
        `lazy` = __fieldsMap.get(scalaDescriptor.findFieldByNumber(5).get).flatMap(_.as[_root_.scala.Option[_root_.scala.Boolean]]),
        unverifiedLazy = __fieldsMap.get(scalaDescriptor.findFieldByNumber(15).get).flatMap(_.as[_root_.scala.Option[_root_.scala.Boolean]]),
        deprecated = __fieldsMap.get(scalaDescriptor.findFieldByNumber(3).get).flatMap(_.as[_root_.scala.Option[_root_.scala.Boolean]]),
        weak = __fieldsMap.get(scalaDescriptor.findFieldByNumber(10).get).flatMap(_.as[_root_.scala.Option[_root_.scala.Boolean]]),
        debugRedact = __fieldsMap.get(scalaDescriptor.findFieldByNumber(16).get).flatMap(_.as[_root_.scala.Option[_root_.scala.Boolean]]),
        retention = __fieldsMap.get(scalaDescriptor.findFieldByNumber(17).get).flatMap(_.as[_root_.scala.Option[_root_.scalapb.descriptors.EnumValueDescriptor]]).map(__e => com.google.protobuf.descriptor.FieldOptions.OptionRetention.fromValue(__e.number)),
        targets = __fieldsMap.get(scalaDescriptor.findFieldByNumber(19).get).map(_.as[_root_.scala.Seq[_root_.scalapb.descriptors.EnumValueDescriptor]]).getOrElse(_root_.scala.Seq.empty).iterator.map(__e => com.google.protobuf.descriptor.FieldOptions.OptionTargetType.fromValue(__e.number)).toSeq,
        editionDefaults = __fieldsMap.get(scalaDescriptor.findFieldByNumber(20).get).map(_.as[_root_.scala.Seq[com.google.protobuf.descriptor.FieldOptions.EditionDefault]]).getOrElse(_root_.scala.Seq.empty),
        features = __fieldsMap.get(scalaDescriptor.findFieldByNumber(21).get).flatMap(_.as[_root_.scala.Option[com.google.protobuf.descriptor.FeatureSet]]),
        featureSupport = __fieldsMap.get(scalaDescriptor.findFieldByNumber(22).get).flatMap(_.as[_root_.scala.Option[com.google.protobuf.descriptor.FieldOptions.FeatureSupport]]),
        uninterpretedOption = __fieldsMap.get(scalaDescriptor.findFieldByNumber(999).get).map(_.as[_root_.scala.Seq[com.google.protobuf.descriptor.UninterpretedOption]]).getOrElse(_root_.scala.Seq.empty)
      )
    case _ => throw new RuntimeException("Expected PMessage")
  }
  def javaDescriptor: _root_.com.google.protobuf.Descriptors.Descriptor = com.google.protobuf.descriptor.DescriptorProtoCompanion.javaDescriptor.getMessageTypes().get(12)
  def scalaDescriptor: _root_.scalapb.descriptors.Descriptor = com.google.protobuf.descriptor.DescriptorProtoCompanion.scalaDescriptor.messages(12)
  def messageCompanionForFieldNumber(__number: _root_.scala.Int): _root_.scalapb.GeneratedMessageCompanion[_] = {
    var __out: _root_.scalapb.GeneratedMessageCompanion[_] = null
    (__number: @_root_.scala.unchecked) match {
      case 20 => __out = com.google.protobuf.descriptor.FieldOptions.EditionDefault
      case 21 => __out = com.google.protobuf.descriptor.FeatureSet
      case 22 => __out = com.google.protobuf.descriptor.FieldOptions.FeatureSupport
      case 999 => __out = com.google.protobuf.descriptor.UninterpretedOption
    }
    __out
  }
  lazy val nestedMessagesCompanions: Seq[_root_.scalapb.GeneratedMessageCompanion[_ <: _root_.scalapb.GeneratedMessage]] =
    Seq[_root_.scalapb.GeneratedMessageCompanion[_ <: _root_.scalapb.GeneratedMessage]](
      _root_.com.google.protobuf.descriptor.FieldOptions.EditionDefault,
      _root_.com.google.protobuf.descriptor.FieldOptions.FeatureSupport
    )
  def enumCompanionForFieldNumber(__fieldNumber: _root_.scala.Int): _root_.scalapb.GeneratedEnumCompanion[_] = {
    (__fieldNumber: @_root_.scala.unchecked) match {
      case 1 => com.google.protobuf.descriptor.FieldOptions.CType
      case 6 => com.google.protobuf.descriptor.FieldOptions.JSType
      case 17 => com.google.protobuf.descriptor.FieldOptions.OptionRetention
      case 19 => com.google.protobuf.descriptor.FieldOptions.OptionTargetType
    }
  }
  lazy val defaultInstance = com.google.protobuf.descriptor.FieldOptions(
    ctype = _root_.scala.None,
    packed = _root_.scala.None,
    jstype = _root_.scala.None,
    `lazy` = _root_.scala.None,
    unverifiedLazy = _root_.scala.None,
    deprecated = _root_.scala.None,
    weak = _root_.scala.None,
    debugRedact = _root_.scala.None,
    retention = _root_.scala.None,
    targets = _root_.scala.Seq.empty,
    editionDefaults = _root_.scala.Seq.empty,
    features = _root_.scala.None,
    featureSupport = _root_.scala.None,
    uninterpretedOption = _root_.scala.Seq.empty
  )
  sealed abstract class CType(val value: _root_.scala.Int) extends _root_.scalapb.GeneratedEnum {
    type EnumType = com.google.protobuf.descriptor.FieldOptions.CType
    type RecognizedType = com.google.protobuf.descriptor.FieldOptions.CType.Recognized
    def isString: _root_.scala.Boolean = false
    def isCord: _root_.scala.Boolean = false
    def isStringPiece: _root_.scala.Boolean = false
    def companion: _root_.scalapb.GeneratedEnumCompanion[CType] = com.google.protobuf.descriptor.FieldOptions.CType
    final def asRecognized: _root_.scala.Option[com.google.protobuf.descriptor.FieldOptions.CType.Recognized] = if (isUnrecognized) _root_.scala.None else _root_.scala.Some(this.asInstanceOf[com.google.protobuf.descriptor.FieldOptions.CType.Recognized])
  }
  
  object CType extends _root_.scalapb.GeneratedEnumCompanion[CType] {
    sealed trait Recognized extends CType
    implicit def enumCompanion: _root_.scalapb.GeneratedEnumCompanion[CType] = this
    
    /** Default mode.
      */
    @SerialVersionUID(0L)
    case object STRING extends CType(0) with CType.Recognized {
      val index = 0
      val name = "STRING"
      override def isString: _root_.scala.Boolean = true
    }
    
    /** The option [ctype=CORD] may be applied to a non-repeated field of type
      * "bytes". It indicates that in C++, the data should be stored in a Cord
      * instead of a string.  For very large strings, this may reduce memory
      * fragmentation. It may also allow better performance when parsing from a
      * Cord, or when parsing with aliasing enabled, as the parsed Cord may then
      * alias the original buffer.
      */
    @SerialVersionUID(0L)
    case object CORD extends CType(1) with CType.Recognized {
      val index = 1
      val name = "CORD"
      override def isCord: _root_.scala.Boolean = true
    }
    
    @SerialVersionUID(0L)
    case object STRING_PIECE extends CType(2) with CType.Recognized {
      val index = 2
      val name = "STRING_PIECE"
      override def isStringPiece: _root_.scala.Boolean = true
    }
    
    @SerialVersionUID(0L)
    final case class Unrecognized(unrecognizedValue: _root_.scala.Int) extends CType(unrecognizedValue) with _root_.scalapb.UnrecognizedEnum
    lazy val values: scala.collection.immutable.Seq[ValueType] = scala.collection.immutable.Seq(STRING, CORD, STRING_PIECE)
    def fromValue(__value: _root_.scala.Int): CType = __value match {
      case 0 => STRING
      case 1 => CORD
      case 2 => STRING_PIECE
      case __other => Unrecognized(__other)
    }
    def javaDescriptor: _root_.com.google.protobuf.Descriptors.EnumDescriptor = com.google.protobuf.descriptor.FieldOptions.javaDescriptor.getEnumTypes().get(0)
    def scalaDescriptor: _root_.scalapb.descriptors.EnumDescriptor = com.google.protobuf.descriptor.FieldOptions.scalaDescriptor.enums(0)
  }
  sealed abstract class JSType(val value: _root_.scala.Int) extends _root_.scalapb.GeneratedEnum {
    type EnumType = com.google.protobuf.descriptor.FieldOptions.JSType
    type RecognizedType = com.google.protobuf.descriptor.FieldOptions.JSType.Recognized
    def isJsNormal: _root_.scala.Boolean = false
    def isJsString: _root_.scala.Boolean = false
    def isJsNumber: _root_.scala.Boolean = false
    def companion: _root_.scalapb.GeneratedEnumCompanion[JSType] = com.google.protobuf.descriptor.FieldOptions.JSType
    final def asRecognized: _root_.scala.Option[com.google.protobuf.descriptor.FieldOptions.JSType.Recognized] = if (isUnrecognized) _root_.scala.None else _root_.scala.Some(this.asInstanceOf[com.google.protobuf.descriptor.FieldOptions.JSType.Recognized])
  }
  
  object JSType extends _root_.scalapb.GeneratedEnumCompanion[JSType] {
    sealed trait Recognized extends JSType
    implicit def enumCompanion: _root_.scalapb.GeneratedEnumCompanion[JSType] = this
    
    /** Use the default type.
      */
    @SerialVersionUID(0L)
    case object JS_NORMAL extends JSType(0) with JSType.Recognized {
      val index = 0
      val name = "JS_NORMAL"
      override def isJsNormal: _root_.scala.Boolean = true
    }
    
    /** Use JavaScript strings.
      */
    @SerialVersionUID(0L)
    case object JS_STRING extends JSType(1) with JSType.Recognized {
      val index = 1
      val name = "JS_STRING"
      override def isJsString: _root_.scala.Boolean = true
    }
    
    /** Use JavaScript numbers.
      */
    @SerialVersionUID(0L)
    case object JS_NUMBER extends JSType(2) with JSType.Recognized {
      val index = 2
      val name = "JS_NUMBER"
      override def isJsNumber: _root_.scala.Boolean = true
    }
    
    @SerialVersionUID(0L)
    final case class Unrecognized(unrecognizedValue: _root_.scala.Int) extends JSType(unrecognizedValue) with _root_.scalapb.UnrecognizedEnum
    lazy val values: scala.collection.immutable.Seq[ValueType] = scala.collection.immutable.Seq(JS_NORMAL, JS_STRING, JS_NUMBER)
    def fromValue(__value: _root_.scala.Int): JSType = __value match {
      case 0 => JS_NORMAL
      case 1 => JS_STRING
      case 2 => JS_NUMBER
      case __other => Unrecognized(__other)
    }
    def javaDescriptor: _root_.com.google.protobuf.Descriptors.EnumDescriptor = com.google.protobuf.descriptor.FieldOptions.javaDescriptor.getEnumTypes().get(1)
    def scalaDescriptor: _root_.scalapb.descriptors.EnumDescriptor = com.google.protobuf.descriptor.FieldOptions.scalaDescriptor.enums(1)
  }
  /** If set to RETENTION_SOURCE, the option will be omitted from the binary.
    * Note: as of January 2023, support for this is in progress and does not yet
    * have an effect (b/264593489).
    */
  sealed abstract class OptionRetention(val value: _root_.scala.Int) extends _root_.scalapb.GeneratedEnum {
    type EnumType = com.google.protobuf.descriptor.FieldOptions.OptionRetention
    type RecognizedType = com.google.protobuf.descriptor.FieldOptions.OptionRetention.Recognized
    def isRetentionUnknown: _root_.scala.Boolean = false
    def isRetentionRuntime: _root_.scala.Boolean = false
    def isRetentionSource: _root_.scala.Boolean = false
    def companion: _root_.scalapb.GeneratedEnumCompanion[OptionRetention] = com.google.protobuf.descriptor.FieldOptions.OptionRetention
    final def asRecognized: _root_.scala.Option[com.google.protobuf.descriptor.FieldOptions.OptionRetention.Recognized] = if (isUnrecognized) _root_.scala.None else _root_.scala.Some(this.asInstanceOf[com.google.protobuf.descriptor.FieldOptions.OptionRetention.Recognized])
  }
  
  object OptionRetention extends _root_.scalapb.GeneratedEnumCompanion[OptionRetention] {
    sealed trait Recognized extends OptionRetention
    implicit def enumCompanion: _root_.scalapb.GeneratedEnumCompanion[OptionRetention] = this
    
    @SerialVersionUID(0L)
    case object RETENTION_UNKNOWN extends OptionRetention(0) with OptionRetention.Recognized {
      val index = 0
      val name = "RETENTION_UNKNOWN"
      override def isRetentionUnknown: _root_.scala.Boolean = true
    }
    
    @SerialVersionUID(0L)
    case object RETENTION_RUNTIME extends OptionRetention(1) with OptionRetention.Recognized {
      val index = 1
      val name = "RETENTION_RUNTIME"
      override def isRetentionRuntime: _root_.scala.Boolean = true
    }
    
    @SerialVersionUID(0L)
    case object RETENTION_SOURCE extends OptionRetention(2) with OptionRetention.Recognized {
      val index = 2
      val name = "RETENTION_SOURCE"
      override def isRetentionSource: _root_.scala.Boolean = true
    }
    
    @SerialVersionUID(0L)
    final case class Unrecognized(unrecognizedValue: _root_.scala.Int) extends OptionRetention(unrecognizedValue) with _root_.scalapb.UnrecognizedEnum
    lazy val values: scala.collection.immutable.Seq[ValueType] = scala.collection.immutable.Seq(RETENTION_UNKNOWN, RETENTION_RUNTIME, RETENTION_SOURCE)
    def fromValue(__value: _root_.scala.Int): OptionRetention = __value match {
      case 0 => RETENTION_UNKNOWN
      case 1 => RETENTION_RUNTIME
      case 2 => RETENTION_SOURCE
      case __other => Unrecognized(__other)
    }
    def javaDescriptor: _root_.com.google.protobuf.Descriptors.EnumDescriptor = com.google.protobuf.descriptor.FieldOptions.javaDescriptor.getEnumTypes().get(2)
    def scalaDescriptor: _root_.scalapb.descriptors.EnumDescriptor = com.google.protobuf.descriptor.FieldOptions.scalaDescriptor.enums(2)
  }
  /** This indicates the types of entities that the field may apply to when used
    * as an option. If it is unset, then the field may be freely used as an
    * option on any kind of entity. Note: as of January 2023, support for this is
    * in progress and does not yet have an effect (b/264593489).
    */
  sealed abstract class OptionTargetType(val value: _root_.scala.Int) extends _root_.scalapb.GeneratedEnum {
    type EnumType = com.google.protobuf.descriptor.FieldOptions.OptionTargetType
    type RecognizedType = com.google.protobuf.descriptor.FieldOptions.OptionTargetType.Recognized
    def isTargetTypeUnknown: _root_.scala.Boolean = false
    def isTargetTypeFile: _root_.scala.Boolean = false
    def isTargetTypeExtensionRange: _root_.scala.Boolean = false
    def isTargetTypeMessage: _root_.scala.Boolean = false
    def isTargetTypeField: _root_.scala.Boolean = false
    def isTargetTypeOneof: _root_.scala.Boolean = false
    def isTargetTypeEnum: _root_.scala.Boolean = false
    def isTargetTypeEnumEntry: _root_.scala.Boolean = false
    def isTargetTypeService: _root_.scala.Boolean = false
    def isTargetTypeMethod: _root_.scala.Boolean = false
    def companion: _root_.scalapb.GeneratedEnumCompanion[OptionTargetType] = com.google.protobuf.descriptor.FieldOptions.OptionTargetType
    final def asRecognized: _root_.scala.Option[com.google.protobuf.descriptor.FieldOptions.OptionTargetType.Recognized] = if (isUnrecognized) _root_.scala.None else _root_.scala.Some(this.asInstanceOf[com.google.protobuf.descriptor.FieldOptions.OptionTargetType.Recognized])
  }
  
  object OptionTargetType extends _root_.scalapb.GeneratedEnumCompanion[OptionTargetType] {
    sealed trait Recognized extends OptionTargetType
    implicit def enumCompanion: _root_.scalapb.GeneratedEnumCompanion[OptionTargetType] = this
    
    @SerialVersionUID(0L)
    case object TARGET_TYPE_UNKNOWN extends OptionTargetType(0) with OptionTargetType.Recognized {
      val index = 0
      val name = "TARGET_TYPE_UNKNOWN"
      override def isTargetTypeUnknown: _root_.scala.Boolean = true
    }
    
    @SerialVersionUID(0L)
    case object TARGET_TYPE_FILE extends OptionTargetType(1) with OptionTargetType.Recognized {
      val index = 1
      val name = "TARGET_TYPE_FILE"
      override def isTargetTypeFile: _root_.scala.Boolean = true
    }
    
    @SerialVersionUID(0L)
    case object TARGET_TYPE_EXTENSION_RANGE extends OptionTargetType(2) with OptionTargetType.Recognized {
      val index = 2
      val name = "TARGET_TYPE_EXTENSION_RANGE"
      override def isTargetTypeExtensionRange: _root_.scala.Boolean = true
    }
    
    @SerialVersionUID(0L)
    case object TARGET_TYPE_MESSAGE extends OptionTargetType(3) with OptionTargetType.Recognized {
      val index = 3
      val name = "TARGET_TYPE_MESSAGE"
      override def isTargetTypeMessage: _root_.scala.Boolean = true
    }
    
    @SerialVersionUID(0L)
    case object TARGET_TYPE_FIELD extends OptionTargetType(4) with OptionTargetType.Recognized {
      val index = 4
      val name = "TARGET_TYPE_FIELD"
      override def isTargetTypeField: _root_.scala.Boolean = true
    }
    
    @SerialVersionUID(0L)
    case object TARGET_TYPE_ONEOF extends OptionTargetType(5) with OptionTargetType.Recognized {
      val index = 5
      val name = "TARGET_TYPE_ONEOF"
      override def isTargetTypeOneof: _root_.scala.Boolean = true
    }
    
    @SerialVersionUID(0L)
    case object TARGET_TYPE_ENUM extends OptionTargetType(6) with OptionTargetType.Recognized {
      val index = 6
      val name = "TARGET_TYPE_ENUM"
      override def isTargetTypeEnum: _root_.scala.Boolean = true
    }
    
    @SerialVersionUID(0L)
    case object TARGET_TYPE_ENUM_ENTRY extends OptionTargetType(7) with OptionTargetType.Recognized {
      val index = 7
      val name = "TARGET_TYPE_ENUM_ENTRY"
      override def isTargetTypeEnumEntry: _root_.scala.Boolean = true
    }
    
    @SerialVersionUID(0L)
    case object TARGET_TYPE_SERVICE extends OptionTargetType(8) with OptionTargetType.Recognized {
      val index = 8
      val name = "TARGET_TYPE_SERVICE"
      override def isTargetTypeService: _root_.scala.Boolean = true
    }
    
    @SerialVersionUID(0L)
    case object TARGET_TYPE_METHOD extends OptionTargetType(9) with OptionTargetType.Recognized {
      val index = 9
      val name = "TARGET_TYPE_METHOD"
      override def isTargetTypeMethod: _root_.scala.Boolean = true
    }
    
    @SerialVersionUID(0L)
    final case class Unrecognized(unrecognizedValue: _root_.scala.Int) extends OptionTargetType(unrecognizedValue) with _root_.scalapb.UnrecognizedEnum
    lazy val values: scala.collection.immutable.Seq[ValueType] = scala.collection.immutable.Seq(TARGET_TYPE_UNKNOWN, TARGET_TYPE_FILE, TARGET_TYPE_EXTENSION_RANGE, TARGET_TYPE_MESSAGE, TARGET_TYPE_FIELD, TARGET_TYPE_ONEOF, TARGET_TYPE_ENUM, TARGET_TYPE_ENUM_ENTRY, TARGET_TYPE_SERVICE, TARGET_TYPE_METHOD)
    def fromValue(__value: _root_.scala.Int): OptionTargetType = __value match {
      case 0 => TARGET_TYPE_UNKNOWN
      case 1 => TARGET_TYPE_FILE
      case 2 => TARGET_TYPE_EXTENSION_RANGE
      case 3 => TARGET_TYPE_MESSAGE
      case 4 => TARGET_TYPE_FIELD
      case 5 => TARGET_TYPE_ONEOF
      case 6 => TARGET_TYPE_ENUM
      case 7 => TARGET_TYPE_ENUM_ENTRY
      case 8 => TARGET_TYPE_SERVICE
      case 9 => TARGET_TYPE_METHOD
      case __other => Unrecognized(__other)
    }
    def javaDescriptor: _root_.com.google.protobuf.Descriptors.EnumDescriptor = com.google.protobuf.descriptor.FieldOptions.javaDescriptor.getEnumTypes().get(3)
    def scalaDescriptor: _root_.scalapb.descriptors.EnumDescriptor = com.google.protobuf.descriptor.FieldOptions.scalaDescriptor.enums(3)
  }
  /** @param value
    *   Textproto value.
    */
  @SerialVersionUID(0L)
  final case class EditionDefault(
      edition: _root_.scala.Option[com.google.protobuf.descriptor.Edition] = _root_.scala.None,
      value: _root_.scala.Option[_root_.scala.Predef.String] = _root_.scala.None,
      unknownFields: _root_.scalapb.UnknownFieldSet = _root_.scalapb.UnknownFieldSet.empty
      ) extends scalapb.GeneratedMessage with scalapb.lenses.Updatable[EditionDefault] {
      @transient
      private[this] var __serializedSizeMemoized: _root_.scala.Int = 0
      private[this] def __computeSerializedSize(): _root_.scala.Int = {
        var __size = 0
        if (edition.isDefined) {
          val __value = edition.get.value
          __size += _root_.com.google.protobuf.CodedOutputStream.computeEnumSize(3, __value)
        };
        if (value.isDefined) {
          val __value = value.get
          __size += _root_.com.google.protobuf.CodedOutputStream.computeStringSize(2, __value)
        };
        __size += unknownFields.serializedSize
        __size
      }
      override def serializedSize: _root_.scala.Int = {
        var __size = __serializedSizeMemoized
        if (__size == 0) {
          __size = __computeSerializedSize() + 1
          __serializedSizeMemoized = __size
        }
        __size - 1
        
      }
      def writeTo(`_output__`: _root_.com.google.protobuf.CodedOutputStream): _root_.scala.Unit = {
        value.foreach { __v =>
          val __m = __v
          _output__.writeString(2, __m)
        };
        edition.foreach { __v =>
          val __m = __v.value
          _output__.writeEnum(3, __m)
        };
        unknownFields.writeTo(_output__)
      }
      def getEdition: com.google.protobuf.descriptor.Edition = edition.getOrElse(com.google.protobuf.descriptor.Edition.EDITION_UNKNOWN)
      def clearEdition: EditionDefault = copy(edition = _root_.scala.None)
      def withEdition(__v: com.google.protobuf.descriptor.Edition): EditionDefault = copy(edition = Option(__v))
      def getValue: _root_.scala.Predef.String = value.getOrElse("")
      def clearValue: EditionDefault = copy(value = _root_.scala.None)
      def withValue(__v: _root_.scala.Predef.String): EditionDefault = copy(value = Option(__v))
      def withUnknownFields(__v: _root_.scalapb.UnknownFieldSet) = copy(unknownFields = __v)
      def discardUnknownFields = copy(unknownFields = _root_.scalapb.UnknownFieldSet.empty)
      def getFieldByNumber(__fieldNumber: _root_.scala.Int): _root_.scala.Any = {
        (__fieldNumber: @_root_.scala.unchecked) match {
          case 3 => edition.map(_.javaValueDescriptor).orNull
          case 2 => value.orNull
        }
      }
      def getField(__field: _root_.scalapb.descriptors.FieldDescriptor): _root_.scalapb.descriptors.PValue = {
        _root_.scala.Predef.require(__field.containingMessage eq companion.scalaDescriptor)
        (__field.number: @_root_.scala.unchecked) match {
          case 3 => edition.map(__e => _root_.scalapb.descriptors.PEnum(__e.scalaValueDescriptor)).getOrElse(_root_.scalapb.descriptors.PEmpty)
          case 2 => value.map(_root_.scalapb.descriptors.PString(_)).getOrElse(_root_.scalapb.descriptors.PEmpty)
        }
      }
      def toProtoString: _root_.scala.Predef.String = _root_.scalapb.TextFormat.printToUnicodeString(this)
      def companion: com.google.protobuf.descriptor.FieldOptions.EditionDefault.type = com.google.protobuf.descriptor.FieldOptions.EditionDefault
      // @@protoc_insertion_point(GeneratedMessage[google.protobuf.FieldOptions.EditionDefault])
  }
  
  object EditionDefault extends scalapb.GeneratedMessageCompanion[com.google.protobuf.descriptor.FieldOptions.EditionDefault] {
    implicit def messageCompanion: scalapb.GeneratedMessageCompanion[com.google.protobuf.descriptor.FieldOptions.EditionDefault] = this
    def parseFrom(`_input__`: _root_.com.google.protobuf.CodedInputStream): com.google.protobuf.descriptor.FieldOptions.EditionDefault = {
      var __edition: _root_.scala.Option[com.google.protobuf.descriptor.Edition] = _root_.scala.None
      var __value: _root_.scala.Option[_root_.scala.Predef.String] = _root_.scala.None
      var `_unknownFields__`: _root_.scalapb.UnknownFieldSet.Builder = null
      var _done__ = false
      while (!_done__) {
        val _tag__ = _input__.readTag()
        _tag__ match {
          case 0 => _done__ = true
          case 24 =>
            __edition = _root_.scala.Option(com.google.protobuf.descriptor.Edition.fromValue(_input__.readEnum()))
          case 18 =>
            __value = _root_.scala.Option(_input__.readStringRequireUtf8())
          case tag =>
            if (_unknownFields__ == null) {
              _unknownFields__ = new _root_.scalapb.UnknownFieldSet.Builder()
            }
            _unknownFields__.parseField(tag, _input__)
        }
      }
      com.google.protobuf.descriptor.FieldOptions.EditionDefault(
          edition = __edition,
          value = __value,
          unknownFields = if (_unknownFields__ == null) _root_.scalapb.UnknownFieldSet.empty else _unknownFields__.result()
      )
    }
    implicit def messageReads: _root_.scalapb.descriptors.Reads[com.google.protobuf.descriptor.FieldOptions.EditionDefault] = _root_.scalapb.descriptors.Reads{
      case _root_.scalapb.descriptors.PMessage(__fieldsMap) =>
        _root_.scala.Predef.require(__fieldsMap.keys.forall(_.containingMessage eq scalaDescriptor), "FieldDescriptor does not match message type.")
        com.google.protobuf.descriptor.FieldOptions.EditionDefault(
          edition = __fieldsMap.get(scalaDescriptor.findFieldByNumber(3).get).flatMap(_.as[_root_.scala.Option[_root_.scalapb.descriptors.EnumValueDescriptor]]).map(__e => com.google.protobuf.descriptor.Edition.fromValue(__e.number)),
          value = __fieldsMap.get(scalaDescriptor.findFieldByNumber(2).get).flatMap(_.as[_root_.scala.Option[_root_.scala.Predef.String]])
        )
      case _ => throw new RuntimeException("Expected PMessage")
    }
    def javaDescriptor: _root_.com.google.protobuf.Descriptors.Descriptor = com.google.protobuf.descriptor.FieldOptions.javaDescriptor.getNestedTypes().get(0)
    def scalaDescriptor: _root_.scalapb.descriptors.Descriptor = com.google.protobuf.descriptor.FieldOptions.scalaDescriptor.nestedMessages(0)
    def messageCompanionForFieldNumber(__number: _root_.scala.Int): _root_.scalapb.GeneratedMessageCompanion[_] = throw new MatchError(__number)
    lazy val nestedMessagesCompanions: Seq[_root_.scalapb.GeneratedMessageCompanion[_ <: _root_.scalapb.GeneratedMessage]] = Seq.empty
    def enumCompanionForFieldNumber(__fieldNumber: _root_.scala.Int): _root_.scalapb.GeneratedEnumCompanion[_] = {
      (__fieldNumber: @_root_.scala.unchecked) match {
        case 3 => com.google.protobuf.descriptor.Edition
      }
    }
    lazy val defaultInstance = com.google.protobuf.descriptor.FieldOptions.EditionDefault(
      edition = _root_.scala.None,
      value = _root_.scala.None
    )
    implicit class EditionDefaultLens[UpperPB](_l: _root_.scalapb.lenses.Lens[UpperPB, com.google.protobuf.descriptor.FieldOptions.EditionDefault]) extends _root_.scalapb.lenses.ObjectLens[UpperPB, com.google.protobuf.descriptor.FieldOptions.EditionDefault](_l) {
      def edition: _root_.scalapb.lenses.Lens[UpperPB, com.google.protobuf.descriptor.Edition] = field(_.getEdition)((c_, f_) => c_.copy(edition = _root_.scala.Option(f_)))
      def optionalEdition: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[com.google.protobuf.descriptor.Edition]] = field(_.edition)((c_, f_) => c_.copy(edition = f_))
      def value: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Predef.String] = field(_.getValue)((c_, f_) => c_.copy(value = _root_.scala.Option(f_)))
      def optionalValue: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[_root_.scala.Predef.String]] = field(_.value)((c_, f_) => c_.copy(value = f_))
    }
    final val EDITION_FIELD_NUMBER = 3
    final val VALUE_FIELD_NUMBER = 2
    def of(
      edition: _root_.scala.Option[com.google.protobuf.descriptor.Edition],
      value: _root_.scala.Option[_root_.scala.Predef.String]
    ): _root_.com.google.protobuf.descriptor.FieldOptions.EditionDefault = _root_.com.google.protobuf.descriptor.FieldOptions.EditionDefault(
      edition,
      value
    )
    // @@protoc_insertion_point(GeneratedMessageCompanion[google.protobuf.FieldOptions.EditionDefault])
  }
  
  /** Information about the support window of a feature.
    *
    * @param editionIntroduced
    *   The edition that this feature was first available in.  In editions
    *   earlier than this one, the default assigned to EDITION_LEGACY will be
    *   used, and proto files will not be able to override it.
    * @param editionDeprecated
    *   The edition this feature becomes deprecated in.  Using this after this
    *   edition may trigger warnings.
    * @param deprecationWarning
    *   The deprecation warning text if this feature is used after the edition it
    *   was marked deprecated in.
    * @param editionRemoved
    *   The edition this feature is no longer available in.  In editions after
    *   this one, the last default assigned will be used, and proto files will
    *   not be able to override it.
    */
  @SerialVersionUID(0L)
  final case class FeatureSupport(
      editionIntroduced: _root_.scala.Option[com.google.protobuf.descriptor.Edition] = _root_.scala.None,
      editionDeprecated: _root_.scala.Option[com.google.protobuf.descriptor.Edition] = _root_.scala.None,
      deprecationWarning: _root_.scala.Option[_root_.scala.Predef.String] = _root_.scala.None,
      editionRemoved: _root_.scala.Option[com.google.protobuf.descriptor.Edition] = _root_.scala.None,
      unknownFields: _root_.scalapb.UnknownFieldSet = _root_.scalapb.UnknownFieldSet.empty
      ) extends scalapb.GeneratedMessage with scalapb.lenses.Updatable[FeatureSupport] {
      @transient
      private[this] var __serializedSizeMemoized: _root_.scala.Int = 0
      private[this] def __computeSerializedSize(): _root_.scala.Int = {
        var __size = 0
        if (editionIntroduced.isDefined) {
          val __value = editionIntroduced.get.value
          __size += _root_.com.google.protobuf.CodedOutputStream.computeEnumSize(1, __value)
        };
        if (editionDeprecated.isDefined) {
          val __value = editionDeprecated.get.value
          __size += _root_.com.google.protobuf.CodedOutputStream.computeEnumSize(2, __value)
        };
        if (deprecationWarning.isDefined) {
          val __value = deprecationWarning.get
          __size += _root_.com.google.protobuf.CodedOutputStream.computeStringSize(3, __value)
        };
        if (editionRemoved.isDefined) {
          val __value = editionRemoved.get.value
          __size += _root_.com.google.protobuf.CodedOutputStream.computeEnumSize(4, __value)
        };
        __size += unknownFields.serializedSize
        __size
      }
      override def serializedSize: _root_.scala.Int = {
        var __size = __serializedSizeMemoized
        if (__size == 0) {
          __size = __computeSerializedSize() + 1
          __serializedSizeMemoized = __size
        }
        __size - 1
        
      }
      def writeTo(`_output__`: _root_.com.google.protobuf.CodedOutputStream): _root_.scala.Unit = {
        editionIntroduced.foreach { __v =>
          val __m = __v.value
          _output__.writeEnum(1, __m)
        };
        editionDeprecated.foreach { __v =>
          val __m = __v.value
          _output__.writeEnum(2, __m)
        };
        deprecationWarning.foreach { __v =>
          val __m = __v
          _output__.writeString(3, __m)
        };
        editionRemoved.foreach { __v =>
          val __m = __v.value
          _output__.writeEnum(4, __m)
        };
        unknownFields.writeTo(_output__)
      }
      def getEditionIntroduced: com.google.protobuf.descriptor.Edition = editionIntroduced.getOrElse(com.google.protobuf.descriptor.Edition.EDITION_UNKNOWN)
      def clearEditionIntroduced: FeatureSupport = copy(editionIntroduced = _root_.scala.None)
      def withEditionIntroduced(__v: com.google.protobuf.descriptor.Edition): FeatureSupport = copy(editionIntroduced = Option(__v))
      def getEditionDeprecated: com.google.protobuf.descriptor.Edition = editionDeprecated.getOrElse(com.google.protobuf.descriptor.Edition.EDITION_UNKNOWN)
      def clearEditionDeprecated: FeatureSupport = copy(editionDeprecated = _root_.scala.None)
      def withEditionDeprecated(__v: com.google.protobuf.descriptor.Edition): FeatureSupport = copy(editionDeprecated = Option(__v))
      def getDeprecationWarning: _root_.scala.Predef.String = deprecationWarning.getOrElse("")
      def clearDeprecationWarning: FeatureSupport = copy(deprecationWarning = _root_.scala.None)
      def withDeprecationWarning(__v: _root_.scala.Predef.String): FeatureSupport = copy(deprecationWarning = Option(__v))
      def getEditionRemoved: com.google.protobuf.descriptor.Edition = editionRemoved.getOrElse(com.google.protobuf.descriptor.Edition.EDITION_UNKNOWN)
      def clearEditionRemoved: FeatureSupport = copy(editionRemoved = _root_.scala.None)
      def withEditionRemoved(__v: com.google.protobuf.descriptor.Edition): FeatureSupport = copy(editionRemoved = Option(__v))
      def withUnknownFields(__v: _root_.scalapb.UnknownFieldSet) = copy(unknownFields = __v)
      def discardUnknownFields = copy(unknownFields = _root_.scalapb.UnknownFieldSet.empty)
      def getFieldByNumber(__fieldNumber: _root_.scala.Int): _root_.scala.Any = {
        (__fieldNumber: @_root_.scala.unchecked) match {
          case 1 => editionIntroduced.map(_.javaValueDescriptor).orNull
          case 2 => editionDeprecated.map(_.javaValueDescriptor).orNull
          case 3 => deprecationWarning.orNull
          case 4 => editionRemoved.map(_.javaValueDescriptor).orNull
        }
      }
      def getField(__field: _root_.scalapb.descriptors.FieldDescriptor): _root_.scalapb.descriptors.PValue = {
        _root_.scala.Predef.require(__field.containingMessage eq companion.scalaDescriptor)
        (__field.number: @_root_.scala.unchecked) match {
          case 1 => editionIntroduced.map(__e => _root_.scalapb.descriptors.PEnum(__e.scalaValueDescriptor)).getOrElse(_root_.scalapb.descriptors.PEmpty)
          case 2 => editionDeprecated.map(__e => _root_.scalapb.descriptors.PEnum(__e.scalaValueDescriptor)).getOrElse(_root_.scalapb.descriptors.PEmpty)
          case 3 => deprecationWarning.map(_root_.scalapb.descriptors.PString(_)).getOrElse(_root_.scalapb.descriptors.PEmpty)
          case 4 => editionRemoved.map(__e => _root_.scalapb.descriptors.PEnum(__e.scalaValueDescriptor)).getOrElse(_root_.scalapb.descriptors.PEmpty)
        }
      }
      def toProtoString: _root_.scala.Predef.String = _root_.scalapb.TextFormat.printToUnicodeString(this)
      def companion: com.google.protobuf.descriptor.FieldOptions.FeatureSupport.type = com.google.protobuf.descriptor.FieldOptions.FeatureSupport
      // @@protoc_insertion_point(GeneratedMessage[google.protobuf.FieldOptions.FeatureSupport])
  }
  
  object FeatureSupport extends scalapb.GeneratedMessageCompanion[com.google.protobuf.descriptor.FieldOptions.FeatureSupport] {
    implicit def messageCompanion: scalapb.GeneratedMessageCompanion[com.google.protobuf.descriptor.FieldOptions.FeatureSupport] = this
    def parseFrom(`_input__`: _root_.com.google.protobuf.CodedInputStream): com.google.protobuf.descriptor.FieldOptions.FeatureSupport = {
      var __editionIntroduced: _root_.scala.Option[com.google.protobuf.descriptor.Edition] = _root_.scala.None
      var __editionDeprecated: _root_.scala.Option[com.google.protobuf.descriptor.Edition] = _root_.scala.None
      var __deprecationWarning: _root_.scala.Option[_root_.scala.Predef.String] = _root_.scala.None
      var __editionRemoved: _root_.scala.Option[com.google.protobuf.descriptor.Edition] = _root_.scala.None
      var `_unknownFields__`: _root_.scalapb.UnknownFieldSet.Builder = null
      var _done__ = false
      while (!_done__) {
        val _tag__ = _input__.readTag()
        _tag__ match {
          case 0 => _done__ = true
          case 8 =>
            __editionIntroduced = _root_.scala.Option(com.google.protobuf.descriptor.Edition.fromValue(_input__.readEnum()))
          case 16 =>
            __editionDeprecated = _root_.scala.Option(com.google.protobuf.descriptor.Edition.fromValue(_input__.readEnum()))
          case 26 =>
            __deprecationWarning = _root_.scala.Option(_input__.readStringRequireUtf8())
          case 32 =>
            __editionRemoved = _root_.scala.Option(com.google.protobuf.descriptor.Edition.fromValue(_input__.readEnum()))
          case tag =>
            if (_unknownFields__ == null) {
              _unknownFields__ = new _root_.scalapb.UnknownFieldSet.Builder()
            }
            _unknownFields__.parseField(tag, _input__)
        }
      }
      com.google.protobuf.descriptor.FieldOptions.FeatureSupport(
          editionIntroduced = __editionIntroduced,
          editionDeprecated = __editionDeprecated,
          deprecationWarning = __deprecationWarning,
          editionRemoved = __editionRemoved,
          unknownFields = if (_unknownFields__ == null) _root_.scalapb.UnknownFieldSet.empty else _unknownFields__.result()
      )
    }
    implicit def messageReads: _root_.scalapb.descriptors.Reads[com.google.protobuf.descriptor.FieldOptions.FeatureSupport] = _root_.scalapb.descriptors.Reads{
      case _root_.scalapb.descriptors.PMessage(__fieldsMap) =>
        _root_.scala.Predef.require(__fieldsMap.keys.forall(_.containingMessage eq scalaDescriptor), "FieldDescriptor does not match message type.")
        com.google.protobuf.descriptor.FieldOptions.FeatureSupport(
          editionIntroduced = __fieldsMap.get(scalaDescriptor.findFieldByNumber(1).get).flatMap(_.as[_root_.scala.Option[_root_.scalapb.descriptors.EnumValueDescriptor]]).map(__e => com.google.protobuf.descriptor.Edition.fromValue(__e.number)),
          editionDeprecated = __fieldsMap.get(scalaDescriptor.findFieldByNumber(2).get).flatMap(_.as[_root_.scala.Option[_root_.scalapb.descriptors.EnumValueDescriptor]]).map(__e => com.google.protobuf.descriptor.Edition.fromValue(__e.number)),
          deprecationWarning = __fieldsMap.get(scalaDescriptor.findFieldByNumber(3).get).flatMap(_.as[_root_.scala.Option[_root_.scala.Predef.String]]),
          editionRemoved = __fieldsMap.get(scalaDescriptor.findFieldByNumber(4).get).flatMap(_.as[_root_.scala.Option[_root_.scalapb.descriptors.EnumValueDescriptor]]).map(__e => com.google.protobuf.descriptor.Edition.fromValue(__e.number))
        )
      case _ => throw new RuntimeException("Expected PMessage")
    }
    def javaDescriptor: _root_.com.google.protobuf.Descriptors.Descriptor = com.google.protobuf.descriptor.FieldOptions.javaDescriptor.getNestedTypes().get(1)
    def scalaDescriptor: _root_.scalapb.descriptors.Descriptor = com.google.protobuf.descriptor.FieldOptions.scalaDescriptor.nestedMessages(1)
    def messageCompanionForFieldNumber(__number: _root_.scala.Int): _root_.scalapb.GeneratedMessageCompanion[_] = throw new MatchError(__number)
    lazy val nestedMessagesCompanions: Seq[_root_.scalapb.GeneratedMessageCompanion[_ <: _root_.scalapb.GeneratedMessage]] = Seq.empty
    def enumCompanionForFieldNumber(__fieldNumber: _root_.scala.Int): _root_.scalapb.GeneratedEnumCompanion[_] = {
      (__fieldNumber: @_root_.scala.unchecked) match {
        case 1 => com.google.protobuf.descriptor.Edition
        case 2 => com.google.protobuf.descriptor.Edition
        case 4 => com.google.protobuf.descriptor.Edition
      }
    }
    lazy val defaultInstance = com.google.protobuf.descriptor.FieldOptions.FeatureSupport(
      editionIntroduced = _root_.scala.None,
      editionDeprecated = _root_.scala.None,
      deprecationWarning = _root_.scala.None,
      editionRemoved = _root_.scala.None
    )
    implicit class FeatureSupportLens[UpperPB](_l: _root_.scalapb.lenses.Lens[UpperPB, com.google.protobuf.descriptor.FieldOptions.FeatureSupport]) extends _root_.scalapb.lenses.ObjectLens[UpperPB, com.google.protobuf.descriptor.FieldOptions.FeatureSupport](_l) {
      def editionIntroduced: _root_.scalapb.lenses.Lens[UpperPB, com.google.protobuf.descriptor.Edition] = field(_.getEditionIntroduced)((c_, f_) => c_.copy(editionIntroduced = _root_.scala.Option(f_)))
      def optionalEditionIntroduced: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[com.google.protobuf.descriptor.Edition]] = field(_.editionIntroduced)((c_, f_) => c_.copy(editionIntroduced = f_))
      def editionDeprecated: _root_.scalapb.lenses.Lens[UpperPB, com.google.protobuf.descriptor.Edition] = field(_.getEditionDeprecated)((c_, f_) => c_.copy(editionDeprecated = _root_.scala.Option(f_)))
      def optionalEditionDeprecated: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[com.google.protobuf.descriptor.Edition]] = field(_.editionDeprecated)((c_, f_) => c_.copy(editionDeprecated = f_))
      def deprecationWarning: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Predef.String] = field(_.getDeprecationWarning)((c_, f_) => c_.copy(deprecationWarning = _root_.scala.Option(f_)))
      def optionalDeprecationWarning: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[_root_.scala.Predef.String]] = field(_.deprecationWarning)((c_, f_) => c_.copy(deprecationWarning = f_))
      def editionRemoved: _root_.scalapb.lenses.Lens[UpperPB, com.google.protobuf.descriptor.Edition] = field(_.getEditionRemoved)((c_, f_) => c_.copy(editionRemoved = _root_.scala.Option(f_)))
      def optionalEditionRemoved: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[com.google.protobuf.descriptor.Edition]] = field(_.editionRemoved)((c_, f_) => c_.copy(editionRemoved = f_))
    }
    final val EDITION_INTRODUCED_FIELD_NUMBER = 1
    final val EDITION_DEPRECATED_FIELD_NUMBER = 2
    final val DEPRECATION_WARNING_FIELD_NUMBER = 3
    final val EDITION_REMOVED_FIELD_NUMBER = 4
    def of(
      editionIntroduced: _root_.scala.Option[com.google.protobuf.descriptor.Edition],
      editionDeprecated: _root_.scala.Option[com.google.protobuf.descriptor.Edition],
      deprecationWarning: _root_.scala.Option[_root_.scala.Predef.String],
      editionRemoved: _root_.scala.Option[com.google.protobuf.descriptor.Edition]
    ): _root_.com.google.protobuf.descriptor.FieldOptions.FeatureSupport = _root_.com.google.protobuf.descriptor.FieldOptions.FeatureSupport(
      editionIntroduced,
      editionDeprecated,
      deprecationWarning,
      editionRemoved
    )
    // @@protoc_insertion_point(GeneratedMessageCompanion[google.protobuf.FieldOptions.FeatureSupport])
  }
  
  implicit class FieldOptionsLens[UpperPB](_l: _root_.scalapb.lenses.Lens[UpperPB, com.google.protobuf.descriptor.FieldOptions]) extends _root_.scalapb.lenses.ObjectLens[UpperPB, com.google.protobuf.descriptor.FieldOptions](_l) {
    def ctype: _root_.scalapb.lenses.Lens[UpperPB, com.google.protobuf.descriptor.FieldOptions.CType] = field(_.getCtype)((c_, f_) => c_.copy(ctype = _root_.scala.Option(f_)))
    def optionalCtype: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[com.google.protobuf.descriptor.FieldOptions.CType]] = field(_.ctype)((c_, f_) => c_.copy(ctype = f_))
    def packed: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Boolean] = field(_.getPacked)((c_, f_) => c_.copy(packed = _root_.scala.Option(f_)))
    def optionalPacked: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[_root_.scala.Boolean]] = field(_.packed)((c_, f_) => c_.copy(packed = f_))
    def jstype: _root_.scalapb.lenses.Lens[UpperPB, com.google.protobuf.descriptor.FieldOptions.JSType] = field(_.getJstype)((c_, f_) => c_.copy(jstype = _root_.scala.Option(f_)))
    def optionalJstype: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[com.google.protobuf.descriptor.FieldOptions.JSType]] = field(_.jstype)((c_, f_) => c_.copy(jstype = f_))
    def `lazy`: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Boolean] = field(_.getLazy)((c_, f_) => c_.copy(`lazy` = _root_.scala.Option(f_)))
    def optionalLazy: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[_root_.scala.Boolean]] = field(_.`lazy`)((c_, f_) => c_.copy(`lazy` = f_))
    def unverifiedLazy: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Boolean] = field(_.getUnverifiedLazy)((c_, f_) => c_.copy(unverifiedLazy = _root_.scala.Option(f_)))
    def optionalUnverifiedLazy: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[_root_.scala.Boolean]] = field(_.unverifiedLazy)((c_, f_) => c_.copy(unverifiedLazy = f_))
    def deprecated: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Boolean] = field(_.getDeprecated)((c_, f_) => c_.copy(deprecated = _root_.scala.Option(f_)))
    def optionalDeprecated: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[_root_.scala.Boolean]] = field(_.deprecated)((c_, f_) => c_.copy(deprecated = f_))
    def weak: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Boolean] = field(_.getWeak)((c_, f_) => c_.copy(weak = _root_.scala.Option(f_)))
    def optionalWeak: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[_root_.scala.Boolean]] = field(_.weak)((c_, f_) => c_.copy(weak = f_))
    def debugRedact: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Boolean] = field(_.getDebugRedact)((c_, f_) => c_.copy(debugRedact = _root_.scala.Option(f_)))
    def optionalDebugRedact: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[_root_.scala.Boolean]] = field(_.debugRedact)((c_, f_) => c_.copy(debugRedact = f_))
    def retention: _root_.scalapb.lenses.Lens[UpperPB, com.google.protobuf.descriptor.FieldOptions.OptionRetention] = field(_.getRetention)((c_, f_) => c_.copy(retention = _root_.scala.Option(f_)))
    def optionalRetention: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[com.google.protobuf.descriptor.FieldOptions.OptionRetention]] = field(_.retention)((c_, f_) => c_.copy(retention = f_))
    def targets: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Seq[com.google.protobuf.descriptor.FieldOptions.OptionTargetType]] = field(_.targets)((c_, f_) => c_.copy(targets = f_))
    def editionDefaults: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Seq[com.google.protobuf.descriptor.FieldOptions.EditionDefault]] = field(_.editionDefaults)((c_, f_) => c_.copy(editionDefaults = f_))
    def features: _root_.scalapb.lenses.Lens[UpperPB, com.google.protobuf.descriptor.FeatureSet] = field(_.getFeatures)((c_, f_) => c_.copy(features = _root_.scala.Option(f_)))
    def optionalFeatures: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[com.google.protobuf.descriptor.FeatureSet]] = field(_.features)((c_, f_) => c_.copy(features = f_))
    def featureSupport: _root_.scalapb.lenses.Lens[UpperPB, com.google.protobuf.descriptor.FieldOptions.FeatureSupport] = field(_.getFeatureSupport)((c_, f_) => c_.copy(featureSupport = _root_.scala.Option(f_)))
    def optionalFeatureSupport: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[com.google.protobuf.descriptor.FieldOptions.FeatureSupport]] = field(_.featureSupport)((c_, f_) => c_.copy(featureSupport = f_))
    def uninterpretedOption: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Seq[com.google.protobuf.descriptor.UninterpretedOption]] = field(_.uninterpretedOption)((c_, f_) => c_.copy(uninterpretedOption = f_))
  }
  final val CTYPE_FIELD_NUMBER = 1
  final val PACKED_FIELD_NUMBER = 2
  final val JSTYPE_FIELD_NUMBER = 6
  final val LAZY_FIELD_NUMBER = 5
  final val UNVERIFIED_LAZY_FIELD_NUMBER = 15
  final val DEPRECATED_FIELD_NUMBER = 3
  final val WEAK_FIELD_NUMBER = 10
  final val DEBUG_REDACT_FIELD_NUMBER = 16
  final val RETENTION_FIELD_NUMBER = 17
  final val TARGETS_FIELD_NUMBER = 19
  final val EDITION_DEFAULTS_FIELD_NUMBER = 20
  final val FEATURES_FIELD_NUMBER = 21
  final val FEATURE_SUPPORT_FIELD_NUMBER = 22
  final val UNINTERPRETED_OPTION_FIELD_NUMBER = 999
  def of(
    ctype: _root_.scala.Option[com.google.protobuf.descriptor.FieldOptions.CType],
    packed: _root_.scala.Option[_root_.scala.Boolean],
    jstype: _root_.scala.Option[com.google.protobuf.descriptor.FieldOptions.JSType],
    `lazy`: _root_.scala.Option[_root_.scala.Boolean],
    unverifiedLazy: _root_.scala.Option[_root_.scala.Boolean],
    deprecated: _root_.scala.Option[_root_.scala.Boolean],
    weak: _root_.scala.Option[_root_.scala.Boolean],
    debugRedact: _root_.scala.Option[_root_.scala.Boolean],
    retention: _root_.scala.Option[com.google.protobuf.descriptor.FieldOptions.OptionRetention],
    targets: _root_.scala.Seq[com.google.protobuf.descriptor.FieldOptions.OptionTargetType],
    editionDefaults: _root_.scala.Seq[com.google.protobuf.descriptor.FieldOptions.EditionDefault],
    features: _root_.scala.Option[com.google.protobuf.descriptor.FeatureSet],
    featureSupport: _root_.scala.Option[com.google.protobuf.descriptor.FieldOptions.FeatureSupport],
    uninterpretedOption: _root_.scala.Seq[com.google.protobuf.descriptor.UninterpretedOption]
  ): _root_.com.google.protobuf.descriptor.FieldOptions = _root_.com.google.protobuf.descriptor.FieldOptions(
    ctype,
    packed,
    jstype,
    `lazy`,
    unverifiedLazy,
    deprecated,
    weak,
    debugRedact,
    retention,
    targets,
    editionDefaults,
    features,
    featureSupport,
    uninterpretedOption
  )
  // @@protoc_insertion_point(GeneratedMessageCompanion[google.protobuf.FieldOptions])
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy