def sizeOf()

in atlas-core/src/main/scala/com/netflix/atlas/core/model/Block.scala [219:238]


  def sizeOf(value: Any): Int = value match {
    case _: Boolean => 1
    case _: Byte    => 1
    case _: Short   => 2
    case _: Int     => 4
    case _: Long    => 8
    case _: Float   => 4
    case _: Double  => 8

    // Assume integer length + size for each value
    case vs: Array[Boolean] => 4 + vs.length
    case vs: Array[Byte]    => 4 + vs.length
    case vs: Array[Short]   => 4 + 2 * vs.length
    case vs: Array[Int]     => 4 + 4 * vs.length
    case vs: Array[Long]    => 4 + 8 * vs.length
    case vs: Array[Float]   => 4 + 4 * vs.length
    case vs: Array[Double]  => 4 + 8 * vs.length

    case v => throw new MatchError(v)
  }