T decode (Decoder decoder, int base, int depth)
T decode(Decoder decoder, int base, int depth) { switch (decoder.wireFormat) { case WireFormat.v1: return type.decode(decoder, base + offsetV1, depth); case WireFormat.v2: return type.decode(decoder, base + offsetV2, depth); default: throw FidlError('unknown wire format'); } }