No idea where this belongs...
/**
* @param AvroSchema $writers_schema
* @param AvroIOBinaryDecoder $decoder
*/
private function skip_data($writers_schema, $decoder)
{
switch ($writers_schema->type())
{
case AvroSchema::NULL_TYPE:
return $decoder->skip_null();
case AvroSchema::BOOLEAN_TYPE:
return $decoder->skip_boolean();
case AvroSchema::INT_TYPE:
return $decoder->skip_int();
case AvroSchema::LONG_TYPE:
return $decoder->skip_long();
case AvroSchema::FLOAT_TYPE:
return $decoder->skip_float();
case AvroSchema::DOUBLE_TYPE:
return $decoder->skip_double();
case AvroSchema::STRING_TYPE:
return $decoder->skip_string();
case AvroSchema::BYTES_TYPE:
return $decoder->skip_bytes();
case AvroSchema::ARRAY_SCHEMA:
return $decoder->skip_array($writers_schema, $decoder);
case AvroSchema::MAP_SCHEMA:
return $decoder->skip_map($writers_schema, $decoder);
case AvroSchema::UNION_SCHEMA:
return $decoder->skip_union($writers_schema, $decoder);
case AvroSchema::ENUM_SCHEMA:
return $decoder->skip_enum($writers_schema, $decoder);
case AvroSchema::FIXED_SCHEMA:
return $decoder->skip_fixed($writers_schema, $decoder);
case AvroSchema::RECORD_SCHEMA:
case AvroSchema::ERROR_SCHEMA:
case AvroSchema::REQUEST_SCHEMA:
return $decoder->skip_record($writers_schema, $decoder);
default:
throw new AvroException(sprintf('Uknown schema type: %s',
$writers_schema->type()));
}
}skip_(boolean|int|float|double|string|bytes) all return the return of a void
skip_long is protected (and doesn't return anything)
skip_(array|map|union|enum|fixed|records) are all undefined