Avro C#
 All Classes Namespaces Functions Variables Enumerations Properties
Classes | Public Member Functions | Protected Member Functions | Static Protected Member Functions | Properties
Avro.Generic.PreresolvingDatumReader< T > Class Template Reference

A general purpose reader of data from avro streams. This reader analyzes and resolves the reader and writer schemas when constructed so that reads can be more efficient. Once constructed, a reader can be reused or shared among threads to avoid incurring more resolution costs. More...

Inheritance diagram for Avro.Generic.PreresolvingDatumReader< T >:
Avro.Generic.DatumReader< T > Avro.Generic.GenericDatumReader< T > Avro.Specific.SpecificDatumReader< T >

List of all members.

Classes

interface  ArrayAccess
interface  EnumAccess
interface  FixedAccess
interface  MapAccess
interface  RecordAccess
class  SchemaPair

Public Member Functions

Read (T reuse, Decoder decoder)
 Read a datum. Traverse the schema, depth-first, reading all leaf values in the schema into a datum that is returned. If the provided datum is non-null it may be reused and returned.

Protected Member Functions

delegate object ReadItem (object reuse, Decoder dec)
 PreresolvingDatumReader (Schema writerSchema, Schema readerSchema)
abstract ArrayAccess GetArrayAccess (ArraySchema readerSchema)
abstract EnumAccess GetEnumAccess (EnumSchema readerSchema)
abstract MapAccess GetMapAccess (MapSchema readerSchema)
abstract RecordAccess GetRecordAccess (RecordSchema readerSchema)
abstract FixedAccess GetFixedAccess (FixedSchema readerSchema)
virtual bool IsReusable (Schema.Type tag)
 Indicates if it's possible to reuse an object of the specified type. Generally false for immutable objects like int, long, string, etc but may differ between the Specific and Generic implementations. Used to avoid retrieving the existing value if it's not reusable.

Static Protected Member Functions

static Schema FindBranch (UnionSchema us, Schema s)

Properties

Schema ReaderSchema [get, set]
Schema WriterSchema [get, set]

Detailed Description

template<T>
class Avro::Generic::PreresolvingDatumReader< T >

A general purpose reader of data from avro streams. This reader analyzes and resolves the reader and writer schemas when constructed so that reads can be more efficient. Once constructed, a reader can be reused or shared among threads to avoid incurring more resolution costs.


Member Function Documentation

template<T >
virtual bool Avro.Generic.PreresolvingDatumReader< T >.IsReusable ( Schema.Type  tag) [inline, protected, virtual]

Indicates if it's possible to reuse an object of the specified type. Generally false for immutable objects like int, long, string, etc but may differ between the Specific and Generic implementations. Used to avoid retrieving the existing value if it's not reusable.

Reimplemented in Avro.Generic.GenericDatumReader< T >, and Avro.Specific.SpecificDatumReader< T >.

template<T >
T Avro.Generic.PreresolvingDatumReader< T >.Read ( reuse,
Decoder  decoder 
) [inline]

Read a datum. Traverse the schema, depth-first, reading all leaf values in the schema into a datum that is returned. If the provided datum is non-null it may be reused and returned.

Implements Avro.Generic.DatumReader< T >.


The documentation for this class was generated from the following file:
 All Classes Namespaces Functions Variables Enumerations Properties