// intValue returns the signed integer value of a schema value or zero // if the value is invalid (the null pointer). Panics if the value is // not a signed integer. func intValue(v schema.Value) int64 { if !v.IsValid() { return 0 } switch v.Which() { case schema.Value_Which_int8: return int64(v.Int8()) case schema.Value_Which_int16: return int64(v.Int16()) case schema.Value_Which_int32: return int64(v.Int32()) case schema.Value_Which_int64: return v.Int64() } panic("unreachable") }