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

main.routeguide.Rectangle.kt Maven / Gradle / Ivy

There is a newer version: 2024.09.17.200749-4708422
Show newest version
// Code generated by Wire protocol buffer compiler, do not edit.
// Source: routeguide.Rectangle in routeguide/RouteGuideProto.proto
@file:Suppress("DEPRECATION")

package routeguide

import com.squareup.wire.FieldEncoding
import com.squareup.wire.Message
import com.squareup.wire.ProtoAdapter
import com.squareup.wire.ProtoReader
import com.squareup.wire.ProtoWriter
import com.squareup.wire.ReverseProtoWriter
import com.squareup.wire.Syntax.PROTO_2
import com.squareup.wire.WireField
import com.squareup.wire.`internal`.JvmField
import com.squareup.wire.`internal`.JvmSynthetic
import kotlin.Any
import kotlin.Boolean
import kotlin.Int
import kotlin.Long
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import okio.ByteString

/**
 * A latitude-longitude rectangle, represented as two diagonally opposite
 * points "lo" and "hi".
 */
public class Rectangle(
  /**
   * One corner of the rectangle.
   */
  @field:WireField(
    tag = 1,
    adapter = "routeguide.Point#ADAPTER",
    schemaIndex = 0,
  )
  @JvmField
  public val lo: Point? = null,
  /**
   * The other corner of the rectangle.
   */
  @field:WireField(
    tag = 2,
    adapter = "routeguide.Point#ADAPTER",
    schemaIndex = 1,
  )
  @JvmField
  public val hi: Point? = null,
  unknownFields: ByteString = ByteString.EMPTY,
) : Message(ADAPTER, unknownFields) {
  override fun newBuilder(): Builder {
    val builder = Builder()
    builder.lo = lo
    builder.hi = hi
    builder.addUnknownFields(unknownFields)
    return builder
  }

  override fun equals(other: Any?): Boolean {
    if (other === this) return true
    if (other !is Rectangle) return false
    if (unknownFields != other.unknownFields) return false
    if (lo != other.lo) return false
    if (hi != other.hi) return false
    return true
  }

  override fun hashCode(): Int {
    var result = super.hashCode
    if (result == 0) {
      result = unknownFields.hashCode()
      result = result * 37 + (lo?.hashCode() ?: 0)
      result = result * 37 + (hi?.hashCode() ?: 0)
      super.hashCode = result
    }
    return result
  }

  override fun toString(): String {
    val result = mutableListOf()
    if (lo != null) result += """lo=$lo"""
    if (hi != null) result += """hi=$hi"""
    return result.joinToString(prefix = "Rectangle{", separator = ", ", postfix = "}")
  }

  public fun copy(
    lo: Point? = this.lo,
    hi: Point? = this.hi,
    unknownFields: ByteString = this.unknownFields,
  ): Rectangle = Rectangle(lo, hi, unknownFields)

  public class Builder : Message.Builder() {
    @JvmField
    public var lo: Point? = null

    @JvmField
    public var hi: Point? = null

    /**
     * One corner of the rectangle.
     */
    public fun lo(lo: Point?): Builder {
      this.lo = lo
      return this
    }

    /**
     * The other corner of the rectangle.
     */
    public fun hi(hi: Point?): Builder {
      this.hi = hi
      return this
    }

    override fun build(): Rectangle = Rectangle(
      lo = lo,
      hi = hi,
      unknownFields = buildUnknownFields()
    )
  }

  public companion object {
    @JvmField
    public val ADAPTER: ProtoAdapter = object : ProtoAdapter(
      FieldEncoding.LENGTH_DELIMITED, 
      Rectangle::class, 
      "type.googleapis.com/routeguide.Rectangle", 
      PROTO_2, 
      null, 
      "routeguide/RouteGuideProto.proto"
    ) {
      override fun encodedSize(`value`: Rectangle): Int {
        var size = value.unknownFields.size
        size += Point.ADAPTER.encodedSizeWithTag(1, value.lo)
        size += Point.ADAPTER.encodedSizeWithTag(2, value.hi)
        return size
      }

      override fun encode(writer: ProtoWriter, `value`: Rectangle) {
        Point.ADAPTER.encodeWithTag(writer, 1, value.lo)
        Point.ADAPTER.encodeWithTag(writer, 2, value.hi)
        writer.writeBytes(value.unknownFields)
      }

      override fun encode(writer: ReverseProtoWriter, `value`: Rectangle) {
        writer.writeBytes(value.unknownFields)
        Point.ADAPTER.encodeWithTag(writer, 2, value.hi)
        Point.ADAPTER.encodeWithTag(writer, 1, value.lo)
      }

      override fun decode(reader: ProtoReader): Rectangle {
        var lo: Point? = null
        var hi: Point? = null
        val unknownFields = reader.forEachTag { tag ->
          when (tag) {
            1 -> lo = Point.ADAPTER.decode(reader)
            2 -> hi = Point.ADAPTER.decode(reader)
            else -> reader.readUnknownField(tag)
          }
        }
        return Rectangle(
          lo = lo,
          hi = hi,
          unknownFields = unknownFields
        )
      }

      override fun redact(`value`: Rectangle): Rectangle = value.copy(
        lo = value.lo?.let(Point.ADAPTER::redact),
        hi = value.hi?.let(Point.ADAPTER::redact),
        unknownFields = ByteString.EMPTY
      )
    }

    private const val serialVersionUID: Long = 0L

    @JvmSynthetic
    public inline fun build(body: Builder.() -> Unit): Rectangle = Builder().apply(body).build()
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy