# memberdef

refid: ae7e6b24c711bac3c332db02dc266587f
name: EnsureArrayObject
definition: void Avro.Generic.PreresolvingDatumWriter< T >.ArrayAccess.EnsureArrayObject
type: void
argsstring: (object value)
scope: Avro.Generic.PreresolvingDatumWriter< T >.ArrayAccess
detaileddescription: <param name="value"></param>
briefdescription:
<summary>
Checks if the given object is an array. If it is a valid array, this function returns normally. Otherwise,
it throws an exception. The default implementation checks if the value is an array.
</summary>


refid: adb45ea90634b5477d466fb10433dbd57
name: GetArrayLength
definition: long Avro.Generic.PreresolvingDatumWriter< T >.ArrayAccess.GetArrayLength
type: long
argsstring: (object value)
scope: Avro.Generic.PreresolvingDatumWriter< T >.ArrayAccess
detaileddescription:
<param name="value">The object whose array length is required</param>
<returns>The array length of the given object</returns>  

briefdescription:
<summary>
Returns the length of an array. The default implementation requires the object
to be an array of objects and returns its length. The defaul implementation
gurantees that EnsureArrayObject() has been called on the value before this
function is called.
</summary>


refid: ae0afdfe7ee9c13f823eb22c62dccbf5c
name: WriteArrayValues
definition: void Avro.Generic.PreresolvingDatumWriter< T >.ArrayAccess.WriteArrayValues
type: void
argsstring: (object array, WriteItem valueWriter, Encoder encoder)
scope: Avro.Generic.PreresolvingDatumWriter< T >.ArrayAccess
detaileddescription:
<param name="value">The array object</param>
<param name="index">The index to look for</param>
<returns>The array element at the index</returns>  

briefdescription:
<summary>
Returns the element at the given index from the given array object. The default implementation
requires that the value is an object array and returns the element in that array. The defaul implementation
gurantees that EnsureArrayObject() has been called on the value before this
function is called.
</summary>


refid: a346ffd36beb7234b5cde1943819bb6c5
name: Create
definition: object Avro.Generic.PreresolvingDatumReader< T >.ArrayAccess.Create
type: object
argsstring: (object reuse)
scope: Avro.Generic.PreresolvingDatumReader< T >.ArrayAccess
briefdescription: <summary> Creates a new array object. The initial size of the object could be anything. </summary>
detaileddescription:
<param name="reuse">If appropriate use this instead of creating a new one.</param>
<returns>An object suitable to deserialize an avro array</returns>  


refid: aa712c98063b883febef6754648974a9a
name: EnsureSize
definition: void Avro.Generic.PreresolvingDatumReader< T >.ArrayAccess.EnsureSize
type: void
argsstring: (ref object array, int targetSize)
scope: Avro.Generic.PreresolvingDatumReader< T >.ArrayAccess
detaileddescription:
<param name="array">Array object who needs to support targetSize elements. This is guaranteed to be somthing returned by
a previous call to CreateArray().</param>
<param name="targetSize">The new size.</param>  

briefdescription:
<summary>
Hint that the array should be able to handle at least targetSize elements. The array
is not required to be resized
</summary>


refid: a2bed663cde8d216e2c2fa5783c172241
name: Resize
definition: void Avro.Generic.PreresolvingDatumReader< T >.ArrayAccess.Resize
type: void
argsstring: (ref object array, int targetSize)
scope: Avro.Generic.PreresolvingDatumReader< T >.ArrayAccess
briefdescription: <summary> Resizes the array to the new value. </summary>
detaileddescription:
<param name="array">Array object whose size is required. This is guaranteed to be somthing returned by
a previous call to CreateArray().</param>
<param name="targetSize">The new size.</param>  


refid: a356181cfa3149dfab5d15fde883a68d4
name: NewInstance
definition: static ArraySchema Avro.ArraySchema.NewInstance
type: ArraySchema
argsstring: (JToken jtok, PropertyMap props, SchemaNames names, string encspace)
scope: Avro.ArraySchema
briefdescription: <summary> Static class to return a new instance of ArraySchema </summary>
detaileddescription:
<param name="jtok">JSON object for the array schema</param>
<param name="names">list of named schemas already parsed</param>
<param name="encspace">enclosing namespace for the array schema</param>
<returns></returns>  


refid: a92637659c2ae2f43be8ad5e86b019b97
name: WriteJsonFields
definition: override void Avro.ArraySchema.WriteJsonFields
type: override void
argsstring: (Newtonsoft.Json.JsonTextWriter writer, SchemaNames names, string encspace)
scope: Avro.ArraySchema
briefdescription: <summary> Writes the array schema in JSON format </summary>
detaileddescription:
<param name="writer">JSON writer</param>
<param name="names">list of named schemas already written</param>
<param name="encspace">enclosing namespace</param>  


refid: a17def6e1d896af6f762f61c53db0eadd
name: CanRead
definition: override bool Avro.ArraySchema.CanRead
type: override bool
argsstring: (Schema writerSchema)
scope: Avro.ArraySchema
detaileddescription:
<param name="writerSchema">writer schema</param>
<returns>true if this and writer schema are compatible based on the AVRO specification, false otherwise</returns>  

briefdescription:
<summary>
Checks if this schema can read data written by the given schema. Used for decoding data.
</summary>


refid: aaaf500f2232a2a8642e67f9111bc5c32
name: Equals
definition: override bool Avro.ArraySchema.Equals
type: override bool
argsstring: (object obj)
scope: Avro.ArraySchema
briefdescription: <summary> Function to compare equality of two array schemas </summary>
detaileddescription:
<param name="obj">other array schema</param>
<returns>true two schemas are equal, false otherwise</returns>  


refid: af7234add48e4de607a45b8caaec29429
name: ReadBoolean
definition: bool Avro.IO.BinaryDecoder.ReadBoolean
type: bool
argsstring: ()
scope: Avro.IO.BinaryDecoder
detaileddescription: <returns></returns>
briefdescription:
<summary>
a boolean is written as a single byte 
whose value is either 0 (false) or 1 (true).
</summary>


refid: ac573128c3b03ee44e8d6de047ddfca63
name: ReadFloat
definition: float Avro.IO.BinaryDecoder.ReadFloat
type: float
argsstring: ()
scope: Avro.IO.BinaryDecoder
detaileddescription: <returns></returns>
briefdescription:
<summary>
A float is written as 4 bytes.
The float is converted into a 32-bit integer using a method equivalent to
Java's floatToIntBits and then encoded in little-endian format.
</summary>


refid: a3e8e77960b119d56164b475ea2c37ab8
name: ReadDouble
definition: double Avro.IO.BinaryDecoder.ReadDouble
type: double
argsstring: ()
scope: Avro.IO.BinaryDecoder
detaileddescription: <param name="?"></param> <returns></returns>
briefdescription:
<summary>
A double is written as 8 bytes.
The double is converted into a 64-bit integer using a method equivalent to
Java's doubleToLongBits and then encoded in little-endian format.
</summary>


refid: ad8850a549429efec88c09fdbfbbe2e55
name: ReadArrayStart
definition: long Avro.IO.BinaryDecoder.ReadArrayStart
type: long
argsstring: ()
scope: Avro.IO.BinaryDecoder
detaileddescription:
for (int n = decoder.ReadArrayStart(); n > 0; n = decoder.ReadArrayNext())
{
    // Read one array entry.
}
</summary>
<returns>The number of entries in the initial chunk, 0 if the array is empty.</returns>  

briefdescription:
<summary>
Starts reading the array Avro type. This, together with ReadArrayNext() is used to read the
items from Avro array. This returns the number of entries in the initial chunk. After consuming
the chunk, the client should call ReadArrayNext() to get the number of entries in the next
chunk. The client should repeat the procedure until there are no more entries in the array.


refid: a2a1f3ffde0b6dc079175de9be605a10a
name: ReadMapStart
definition: long Avro.IO.BinaryDecoder.ReadMapStart
type: long
argsstring: ()
scope: Avro.IO.BinaryDecoder
detaileddescription: <returns>The number of entries in the initial chunk, 0 if the map is empty.</returns>
briefdescription:
<summary>
Starts reading the map Avro type. This, together with ReadMapNext() is used to read the
entries from Avro map. This returns the number of entries in the initial chunk. After consuming
the chunk, the client should call ReadMapNext() to get the number of entriess in the next
chunk. The client should repeat the procedure until there are no more entries in the array.
for (int n = decoder.ReadMapStart(); n > 0; n = decoder.ReadMapNext())
{
    // Read one map entry.
}
</summary>


refid: a7c39bc844d8168546a3deb8b2395d0f0
name: ReadFixed
definition: void Avro.IO.BinaryDecoder.ReadFixed
type: void
argsstring: (byte[] buffer, int start, int length)
scope: Avro.IO.BinaryDecoder
briefdescription: <summary> Read a Fixed Avro type of length. </summary>
detaileddescription:
<param name="buffer">Buffer to read into</param>
<param name="start">Starting position of buffer to read into</param>
<param name="length">Number of bytes to read</param>  


refid: a2e2b99499445aea432469345cdaca69e
name: WriteDouble
definition: void Avro.IO.BinaryEncoder.WriteDouble
type: void
argsstring: (double value)
scope: Avro.IO.BinaryEncoder
detaileddescription: <param name="value"></param>
briefdescription:
<summary>
A double is written as 8 bytes.
The double is converted into a 64-bit integer using a method equivalent to
Java's doubleToLongBits and then encoded in little-endian format.
 </summary>


refid: aaf92e3448bf12b5823a433da08f60b3c
name: WriteString
definition: void Avro.IO.BinaryEncoder.WriteString
type: void
argsstring: (string value)
scope: Avro.IO.BinaryEncoder
detaileddescription: <param name="value"></param>
briefdescription:
<summary>
A string is encoded as a long followed by
that many bytes of UTF-8 encoded character data.
</summary>


refid: a80bc14c85e4f67cc7fce036725f9f616
name: addNamespace
definition: virtual CodeNamespace Avro.CodeGen.addNamespace
type: CodeNamespace
argsstring: (string name)
scope: Avro.CodeGen
detaileddescription: <param name="name">name of namespace</param> <returns></returns>
briefdescription:
<summary>
Adds a namespace object for the given name into the dictionary if it doesn't exist yet
</summary>


refid: a0713934c0acf842587e7ddd929487a37
name: addName
definition: virtual void Avro.CodeGen.addName
type: void
argsstring: (Schema schema, SchemaNames names)
scope: Avro.CodeGen
detaileddescription:
<param name="schema">schema object to search</param>
<param name="names">list of named schemas</param>  

briefdescription:
<summary>
Recursively search the given schema for named schemas and adds them to the given container
</summary>


refid: a7849af67e3b80a5d3b4f0af787ad23dd
name: getType
definition: static string Avro.CodeGen.getType
type: string
argsstring: (Schema schema, bool nullible, ref bool nullibleEnum)
scope: Avro.CodeGen
briefdescription: <summary> Gets the string representation of the schema's data type </summary>
detaileddescription:
<param name="schema">schema</param>
<param name="nullible">flag to indicate union with null</param>
<returns></returns>  


refid: a808d455dd93f2c9d806aa9d17b44759c
name: Magic
definition: byte [] Avro.File.DataFileConstants.Magic
type: byte[]
scope: Avro.File.DataFileConstants
initializer:
= { (byte)'O', 
                                       (byte)'b', 
                                       (byte)'j', 
                                       (byte)Version }


refid: a5848c71e40e52d5673ba00a740d0098a
name: Seek
definition: void Avro.File.DataFileReader< T >.Seek
type: void
argsstring: (long position)
scope: Avro.File.DataFileReader< T >
detaileddescription: <param name="position"></param>
briefdescription:
<summary>
Move to a specific, known synchronization point, 
one returned from IFileWriter.Sync() while writing
</summary>


refid: ab184047129ceb942bcc2cfefb044fce7
name: OpenWriter
definition: static IFileWriter<T> Avro.File.DataFileWriter< T >.OpenWriter
type: IFileWriter< T >
argsstring: (DatumWriter< T > writer, string path, Codec codec)
scope: Avro.File.DataFileWriter< T >
briefdescription: <summary> Open a new writer instance to write to a file path with a specified codec </summary>
detaileddescription:
<param name="writer"></param>
<param name="path"></param>
<param name="codec"></param>
<returns></returns>  


refid: a0d9fe68f60d429c5123dd9b93859e672
name: OpenWriter
definition: static IFileWriter<T> Avro.File.DataFileWriter< T >.OpenWriter
type: IFileWriter< T >
argsstring: (DatumWriter< T > writer, Stream outStream, Codec codec)
scope: Avro.File.DataFileWriter< T >
briefdescription: <summary> Open a new writer instance to write to an output stream with a specified codec </summary>
detaileddescription:
<param name="writer"></param>
<param name="outStream"></param>
<param name="codec"></param>
<returns></returns>  


refid: a49637569069ca6f20d26d73871c8c64f
name: IsReservedMeta
definition: bool Avro.File.DataFileWriter< T >.IsReservedMeta
type: bool
argsstring: (string key)
scope: Avro.File.DataFileWriter< T >
detaileddescription:
Returns true if parameter is a
reserved Avro meta data value
</summary>
<param name="key"></param>
<returns></returns>  


refid: ae208a897821e0e488f096a4ca3cabbfe
name: SetSyncInterval
definition: void Avro.File.DataFileWriter< T >.SetSyncInterval
type: void
argsstring: (int syncInterval)
scope: Avro.File.DataFileWriter< T >
detaileddescription: <param name="syncInterval"></param> <returns></returns>
briefdescription:
<summary>
Set the synchronization interval for this 
file / stream, in bytes. Valid values range 
from 32 to 2^30. Suggested values are 
between 2K and 2M
</summary>


refid: a7556627f523bca4c647daed206adab38
name: Read
definition: T Avro.Generic.DatumReader< T >.Read
type: T
argsstring: (T reuse, Decoder decoder)
scope: Avro.Generic.DatumReader< T >
briefdescription:
<summary>
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.
</summary>


refid: ab5a01ca3a4edc8867ee9b2d9c42d6238
name: DefaultReader
definition: Avro.Generic.DefaultReader.DefaultReader
argsstring: (Schema writerSchema, Schema readerSchema)
scope: Avro.Generic.DefaultReader
detaileddescription:
<param name="writerSchema">The schema used while generating the data</param>
<param name="readerSchema">The schema desired by the reader</param>  

briefdescription:
<summary>
Constructs the default reader for the given schemas using the DefaultReader. If the
reader's and writer's schemas are different this class performs the resolution.
This default implemenation maps Avro types to .NET types as follows:
</summary>


refid: af171e6a8a8eb5f65e67d6e522fa6ac06
name: Read< T >
definition: T Avro.Generic.DefaultReader.Read< T >
type: T
argsstring: (T reuse, Decoder decoder)
scope: Avro.Generic.DefaultReader
briefdescription: <summary> Reads an object off the stream. </summary>
detaileddescription:
<typeparam name="T">The type of object to read. A single schema typically returns an object of a single .NET class.
The only exception is UnionSchema, which can return a object of different types based on the branch selected.
</typeparam>
<param name="reuse">If not null, the implemenation will try to use to return the object</param>
<param name="decoder">The decoder for deserialization</param>
<returns></returns>  


refid: a57f7553bde6b13a46f4e71f5f71973e2
name: ReadNull
definition: virtual object Avro.Generic.DefaultReader.ReadNull
type: object
argsstring: (Schema readerSchema, Decoder d)
scope: Avro.Generic.DefaultReader
briefdescription: <summary> Deserializes a null from the stream. </summary>
detaileddescription:
<param name="readerSchema">Reader's schema, which should be a NullSchema</param>
<param name="d">The decoder for deserialization</param>
<returns></returns>  


refid: a5e8870d831caa0ae60dbdfdf7188400d
name: Read< S >
definition: S Avro.Generic.DefaultReader.Read< S >
type: S
argsstring: (Schema.Type tag, Schema readerSchema, Reader< S > reader)
scope: Avro.Generic.DefaultReader
briefdescription: <summary> A generic function to read primitive types </summary>
detaileddescription:
<typeparam name="S">The .NET type to read</typeparam>
<param name="tag">The Avro type tag for the object on the stream</param>
<param name="readerSchema">A schema compatible to the Avro type</param>
<param name="reader">A function that can read the avro type from the stream</param>
<returns>The primitive type just read</returns>  


refid: ab9ae09c396824154e7b075c6645e495e
name: ReadRecord
definition: virtual object Avro.Generic.DefaultReader.ReadRecord
type: object
argsstring: (object reuse, RecordSchema writerSchema, Schema readerSchema, Decoder dec)
scope: Avro.Generic.DefaultReader
briefdescription: <summary> Deserializes a record from the stream. </summary>
detaileddescription:
<param name="reuse">If not null, a record object that could be reused for returning the result</param>
<param name="writerSchema">The writer's RecordSchema</param>
<param name="readerSchema">The reader's schema, must be RecordSchema too.</param>
<param name="dec">The decoder for deserialization</param>
<returns>The record object just read</returns>  


refid: ad6e8a163f1fa5ca597fb1c3f977d24fd
name: CreateRecord
definition: virtual object Avro.Generic.DefaultReader.CreateRecord
type: object
argsstring: (object reuse, RecordSchema readerSchema)
scope: Avro.Generic.DefaultReader
detaileddescription:
<param name="reuse">If appropriate, will reuse this object instead of constructing a new one</param>
<param name="readerSchema">The schema the reader is using</param>
<returns></returns>  

briefdescription:
<summary>
Creates a new record object. Derived classes can override this to return an object of their choice.
</summary>


refid: a2c088ce2baaf7b9eb339a3153622e03a
name: TryGetField
definition: virtual bool Avro.Generic.DefaultReader.TryGetField
type: bool
argsstring: (object record, string fieldName, int fieldPos, out object value)
scope: Avro.Generic.DefaultReader
detaileddescription:
<param name="record">The record object to be probed into. This is guaranteed to be one that was returned
by a previous call to CreateRecord.</param>
<param name="fieldName">The name of the field to probe.</param>
<param name="value">The value of the field, if found. Null otherwise.</param>
<returns>True if and only if a field with the given name is found.</returns>  

briefdescription:
<summary>
Used by the default implementation of ReadRecord() to get the existing field of a record object. The derived
classes can override this to make their own interpretation of the record object.
</summary>


refid: a52aa5bef7aa911918323c51c93fc874f
name: AddField
definition: virtual void Avro.Generic.DefaultReader.AddField
type: void
argsstring: (object record, string fieldName, int fieldPos, object fieldValue)
scope: Avro.Generic.DefaultReader
detaileddescription:
<param name="record">The record object to be probed into. This is guaranteed to be one that was returned
by a previous call to CreateRecord.</param>
<param name="fieldName">The name of the field to probe.</param>
<param name="fieldValue">The value to be added for the field</param>  

briefdescription:
<summary>
Used by the default implementation of ReadRecord() to add a field to a record object. The derived
classes can override this to suit their own implementation of the record object.
</summary>


refid: a033337ede14bd0ffa88d3bd301307343
name: ReadEnum
definition: virtual object Avro.Generic.DefaultReader.ReadEnum
type: object
argsstring: (object reuse, EnumSchema writerSchema, Schema readerSchema, Decoder d)
scope: Avro.Generic.DefaultReader
briefdescription: <summary> Deserializes a enum. Uses CreateEnum to construct the new enum object. </summary>
detaileddescription:
<param name="reuse">If appropirate, uses this instead of creating a new enum object.</param>
<param name="writerSchema">The schema the writer used while writing the enum</param>
<param name="readerSchema">The schema the reader is using</param>
<param name="d">The decoder for deserialization.</param>
<returns>An enum object.</returns>  


refid: ac0bc5996b55a6b79bc6355e56fa3ffdc
name: CreateEnum
definition: virtual object Avro.Generic.DefaultReader.CreateEnum
type: object
argsstring: (object reuse, EnumSchema es, string symbol)
scope: Avro.Generic.DefaultReader
briefdescription: <summary> Used by the default implementation of ReadEnum to construct a new enum object. </summary>
detaileddescription:
<param name="reuse">If appropriate, use this enum object instead of a new one.</param>
<param name="es">The enum schema used by the reader.</param>
<param name="symbol">The symbol that needs to be used.</param>
<returns>The default implemenation returns a GenericEnum.</returns>  


refid: a6852663a1a4eb0b36aeb9f01ba0e3a88
name: ReadArray
definition: virtual object Avro.Generic.DefaultReader.ReadArray
type: object
argsstring: (object reuse, ArraySchema writerSchema, Schema readerSchema, Decoder d)
scope: Avro.Generic.DefaultReader
detaileddescription:
<param name="reuse">If appropriate, uses this instead of creating a new array object.</param>
<param name="writerSchema">The schema used by the writer.</param>
<param name="readerSchema">The schema that the reader uses.</param>
<param name="d">The decoder for deserialization.</param>
<returns>The deserialized array object.</returns>  

briefdescription:
<summary>
Deserializes an array and returns an array object. It uses CreateArray() and works on it before returning it.
It also uses GetArraySize(), ResizeArray(), SetArrayElement() and GetArrayElement() methods. Derived classes can
override these methods to customize their behavior.
</summary>


refid: a1e701679f6698f28c66975ff87381161
name: CreateArray
definition: virtual object Avro.Generic.DefaultReader.CreateArray
type: object
argsstring: (object reuse, ArraySchema rs)
scope: Avro.Generic.DefaultReader
detaileddescription:
<param name="reuse">If appropriate use this instead of creating a new one.</param>
<returns>An object suitable to deserialize an avro array</returns>  

briefdescription:
<summary>
Creates a new array object. The initial size of the object could be anything. The users
should use GetArraySize() to determine the size. The default implementation creates an <c>object[]</c>.
</summary>


refid: a5f3d2531fc40958960011f241a162b0c
name: GetArraySize
definition: virtual int Avro.Generic.DefaultReader.GetArraySize
type: int
argsstring: (object array)
scope: Avro.Generic.DefaultReader
briefdescription: <summary> Returns the size of the given array object. </summary>
detaileddescription:
<param name="array">Array object whose size is required. This is guaranteed to be somthing returned by
a previous call to CreateArray().</param>
<returns>The size of the array</returns>  


refid: a2d8d09a7fadaa117f96a689448f6860b
name: ResizeArray
definition: virtual void Avro.Generic.DefaultReader.ResizeArray
type: void
argsstring: (ref object array, int n)
scope: Avro.Generic.DefaultReader
briefdescription: <summary> Resizes the array to the new value. </summary>
detaileddescription:
<param name="array">Array object whose size is required. This is guaranteed to be somthing returned by
a previous call to CreateArray().</param>
<param name="n">The new size.</param>  


refid: a85e9779ca2bef4621350193a7beaaf91
name: SetArrayElement
definition: virtual void Avro.Generic.DefaultReader.SetArrayElement
type: void
argsstring: (object array, int index, object value)
scope: Avro.Generic.DefaultReader
briefdescription: <summary> Assigns a new value to the object at the given index </summary>
detaileddescription:
<param name="array">Array object whose size is required. This is guaranteed to be somthing returned by
a previous call to CreateArray().</param>
<param name="index">The index to reassign to.</param>
<param name="value">The value to assign.</param>  


refid: a57561ad8385465015007887938503372
name: GetArrayElement
definition: virtual object Avro.Generic.DefaultReader.GetArrayElement
type: object
argsstring: (object array, int index)
scope: Avro.Generic.DefaultReader
briefdescription: <summary> Returns the element at the given index. </summary>
detaileddescription:
<param name="array">Array object whose size is required. This is guaranteed to be somthing returned by
a previous call to CreateArray().</param>
<param name="index">The index to look into.</param>
<returns>The object the given index. Null if no object has been assigned to that index.</returns>  


refid: a15ac0e7a74085e65495e3ef899547a2b
name: ReadMap
definition: virtual object Avro.Generic.DefaultReader.ReadMap
type: object
argsstring: (object reuse, MapSchema writerSchema, Schema readerSchema, Decoder d)
scope: Avro.Generic.DefaultReader
detaileddescription:
<param name="reuse">If appropriate, use this instead of creating a new map object.</param>
<param name="writerSchema">The schema the writer used to write the map.</param>
<param name="readerSchema">The schema the reader is using.</param>
<param name="d">The decoder for serialization.</param>
<returns>The deserialized map object.</returns>  

briefdescription:
<summary>
Deserialized an avro map. The default implemenation creats a new map using CreateMap() and then
adds elements to the map using AddMapEntry().
</summary>


refid: aeef893f25d26d76263dd055ad725697d
name: CreateMap
definition: virtual object Avro.Generic.DefaultReader.CreateMap
type: object
argsstring: (object reuse, MapSchema ms)
scope: Avro.Generic.DefaultReader
detaileddescription:
<param name="reuse">If appropriate, use this map object instead of creating a new one.</param>
<returns>An empty map object.</returns>  

briefdescription:
<summary>
Used by the default implementation of ReadMap() to create a fresh map object. The default
implementaion of this method returns a IDictionary<string, map>.
</summary>


refid: a0adcc527a4d5fbca5c3a7293beb4a410
name: AddMapEntry
definition: virtual void Avro.Generic.DefaultReader.AddMapEntry
type: void
argsstring: (object map, string key, object value)
scope: Avro.Generic.DefaultReader
briefdescription: <summary> Adds an entry to the map. </summary>
detaileddescription:
<param name="map">A map object, which is guaranteed to be one returned by a previous call to CreateMap().</param>
<param name="key">The key to add.</param>
<param name="value">The value to add.</param>  


refid: ab1eb1a7d2de71e54c66da36aec2f3e50
name: ReadUnion
definition: virtual object Avro.Generic.DefaultReader.ReadUnion
type: object
argsstring: (object reuse, UnionSchema writerSchema, Schema readerSchema, Decoder d)
scope: Avro.Generic.DefaultReader
briefdescription: <summary> Deserialized an object based on the writer's uninon schema. </summary>
detaileddescription:
<param name="reuse">If appropriate, uses this object instead of creating a new one.</param>
<param name="writerSchema">The UnionSchema that the writer used.</param>
<param name="readerSchema">The schema the reader uses.</param>
<param name="d">The decoder for serialization.</param>
<returns>The deserialized object.</returns>  


refid: aac5a102e044f0aec4bd25d2180df934c
name: ReadFixed
definition: virtual object Avro.Generic.DefaultReader.ReadFixed
type: object
argsstring: (object reuse, FixedSchema writerSchema, Schema readerSchema, Decoder d)
scope: Avro.Generic.DefaultReader
detaileddescription:
<param name="reuse">If appropriate, uses this object instead of creating a new one.</param>
<param name="writerSchema">The FixedSchema the writer used during serialization.</param>
<param name="readerSchema">The schema that the readr uses. Must be a FixedSchema with the same
size as the writerSchema.</param>
<param name="d">The decoder for deserialization.</param>
<returns>The deserilized object.</returns>  

briefdescription:
<summary>
Deserializes a fixed object and returns the object. The default implementation uses CreateFixed()
and GetFixedBuffer() and returns what CreateFixed() returned.
</summary>


refid: af1f1015b79f117924b66f348720eebe0
name: CreateFixed
definition: virtual object Avro.Generic.DefaultReader.CreateFixed
type: object
argsstring: (object reuse, FixedSchema rs)
scope: Avro.Generic.DefaultReader
briefdescription: <summary> Returns a fixed object. </summary>
detaileddescription:
<param name="reuse">If appropriate, uses this object instead of creating a new one.</param>
<param name="rs">The reader's FixedSchema.</param>
<returns>A fixed object with an appropriate buffer.</returns>  


refid: a16f00f80216163be86da163941521fc9
name: GetFixedBuffer
definition: virtual byte [] Avro.Generic.DefaultReader.GetFixedBuffer
type: byte[]
argsstring: (object f)
scope: Avro.Generic.DefaultReader
briefdescription: <summary> Returns a buffer of appropriate size to read data into. </summary>
detaileddescription:
<param name="f">The fixed object. It is guaranteed that this is something that has been previously
returned by CreateFixed</param>
<returns>A byte buffer of fixed's size.</returns>  


refid: a90937a13f65fcbc6fd694d9334d7e62d
name: Write
definition: virtual void Avro.Generic.DefaultWriter.Write
type: void
argsstring: (Schema schema, object value, Encoder encoder)
scope: Avro.Generic.DefaultWriter
detaileddescription:
<param name="schema">The schema to use for serializing</param>
<param name="value">The value to be serialized</param>
<param name="encoder">The encoder to use during serialization</param>  

briefdescription:
<summary>
Examines the schema and dispatches the actual work to one
of the other methods of this class. This allows the derived
classes to override specific methods and get custom results.
</summary>


refid: acdd89ce1edd2acb70f5b18be9d9d4c71
name: WriteNull
definition: virtual void Avro.Generic.DefaultWriter.WriteNull
type: void
argsstring: (object value, Encoder encoder)
scope: Avro.Generic.DefaultWriter
briefdescription: <summary> Serializes a "null" </summary>
detaileddescription:
<param name="value">The object to be serialized using null schema</param>
<param name="encoder">The encoder to use while serialization</param>  


refid: a927b82daefc5f175c1a65152f72100dc
name: Write< S >
definition: virtual void Avro.Generic.DefaultWriter.Write< S >
type: void
argsstring: (object value, Schema.Type tag, Writer< S > writer)
scope: Avro.Generic.DefaultWriter
briefdescription: <summary> A generic method to serialize primitive Avro types. </summary>
detaileddescription:
<typeparam name="S">Type of the C# type to be serialized</typeparam>
<param name="value">The value to be serialized</param>
<param name="tag">The schema type tag</param>
<param name="writer">The writer which should be used to write the given type.</param>  


refid: a28250877a8b6f738e19ad9523ad47322
name: WriteRecord
definition: virtual void Avro.Generic.DefaultWriter.WriteRecord
type: void
argsstring: (RecordSchema schema, object value, Encoder encoder)
scope: Avro.Generic.DefaultWriter
detaileddescription:
<param name="schema">The RecordSchema to use for serialization</param>
<param name="value">The value to be serialized</param>
<param name="encoder">The Encoder for serialization</param>  

briefdescription:
<summary>
Serialized a record using the given RecordSchema. It uses GetField method
to extract the field value from the given object.
</summary>


refid: aae72c06a150f25158a094ebdde707efb
name: GetField
definition: virtual object Avro.Generic.DefaultWriter.GetField
type: object
argsstring: (object value, string fieldName, int fieldPos)
scope: Avro.Generic.DefaultWriter
detaileddescription:
<param name="value">The record value from which the field needs to be extracted</param>
<param name="fieldName">The name of the field in the record</param>
<param name="fieldPos">The position of field in the record</param>
<returns></returns>  

briefdescription:
<summary>
Extracts the field value from the given object. In this default implementation,
value should be of type GenericRecord.
</summary>


refid: ac1b095c5635ed45bc323dee03ddf2720
name: WriteEnum
definition: virtual void Avro.Generic.DefaultWriter.WriteEnum
type: void
argsstring: (EnumSchema es, object value, Encoder encoder)
scope: Avro.Generic.DefaultWriter
detaileddescription:
<param name="es">The EnumSchema for serialization</param>
<param name="value">Value to be written</param>
<param name="encoder">Encoder for serialization</param>  

briefdescription:
<summary>
Serializes an enumeration. The default implementation expectes the value to be string whose
value is the name of the enumeration.
</summary>


refid: a28b056dff869bd95295be19b69980b51
name: WriteArray
definition: virtual void Avro.Generic.DefaultWriter.WriteArray
type: void
argsstring: (ArraySchema schema, object value, Encoder encoder)
scope: Avro.Generic.DefaultWriter
detaileddescription:
<param name="schema">The ArraySchema for serialization</param>
<param name="value">The value being serialized</param>
<param name="encoder">The encoder for serialization</param>  

briefdescription:
<summary>
Serialized an array. The default implementation calls EnsureArrayObject() to ascertain that the
given value is an array. It then calls GetArrayLength() and GetArrayElement()
to access the members of the array and then serialize them.
</summary>


refid: a9410c9ef505b33121a8c52e614289dbb
name: WriteMap
definition: virtual void Avro.Generic.DefaultWriter.WriteMap
type: void
argsstring: (MapSchema schema, object value, Encoder encoder)
scope: Avro.Generic.DefaultWriter
detaileddescription:
<param name="schema">The MapSchema for serialization</param>
<param name="value">The value to be serialized</param>
<param name="encoder">The encoder for serialization</param>  

briefdescription:
<summary>
Serialized a map. The default implementation first ensure that the value is indeed a map and then uses
GetMapSize() and GetMapElements() to access the contents of the map.
</summary>


refid: a06211b82e7532f3196f82fb2aa103c53
name: EnsureMapObject
definition: virtual void Avro.Generic.DefaultWriter.EnsureMapObject
type: void
argsstring: (object value)
scope: Avro.Generic.DefaultWriter
detaileddescription: <param name="value"></param>
briefdescription:
<summary>
Checks if the given object is a map. If it is a valid map, this function returns normally. Otherwise,
it throws an exception. The default implementation checks if the value is an IDictionary<string, object>.
</summary>


refid: af9758b81557fbabf104ad1258ddba480
name: GetMapSize
definition: virtual long Avro.Generic.DefaultWriter.GetMapSize
type: long
argsstring: (object value)
scope: Avro.Generic.DefaultWriter
detaileddescription:
<param name="value">The map object whose size is desired</param>
<returns>The size of the given map object</returns>  

briefdescription:
<summary>
Returns the size of the map object. The default implementation gurantees that EnsureMapObject has been
successfully called with the given value. The default implementation requires the value
to be an IDictionary<string, object> and returns the number of elements in it.
</summary>


refid: a6cab4a92ad6388eaffcf8dd47fb21139
name: GetMapValues
definition: virtual IEnumerable<KeyValuePair<string, object> > Avro.Generic.DefaultWriter.GetMapValues
type: IEnumerable< KeyValuePair< string, object > >
argsstring: (object value)
scope: Avro.Generic.DefaultWriter
detaileddescription:
<param name="value">The map object whose size is desired</param>
<returns>The contents of the given map object</returns>  

briefdescription:
<summary>
Returns the contents of the given map object. The default implementation guarantees that EnsureMapObject
has been called with the given value. The defualt implementation of this method requires that
the value is an IDictionary<string, object> and returns its contents.
</summary>


refid: a83700c0e35d27e6e18b9ee578b3dfeec
name: WriteUnion
definition: virtual void Avro.Generic.DefaultWriter.WriteUnion
type: void
argsstring: (UnionSchema us, object value, Encoder encoder)
scope: Avro.Generic.DefaultWriter
detaileddescription:
<param name="us">The UnionSchema to resolve against</param>
<param name="value">The value to be serialized</param>
<param name="encoder">The encoder for serialization</param>  

briefdescription:
<summary>
Resolves the given value against the given UnionSchema and serializes the object against
the resolved schema member. The default implementation of this method uses
ResolveUnion to find the member schema within the UnionSchema.
</summary>


refid: a46af1140a7aaf4ba6b3df5fef20c0e7e
name: ResolveUnion
definition: virtual int Avro.Generic.DefaultWriter.ResolveUnion
type: int
argsstring: (UnionSchema us, object obj)
scope: Avro.Generic.DefaultWriter
detaileddescription:
<param name="us">The UnionSchema to resolve against</param>
<param name="obj">The object that should be used in matching</param>
<returns></returns>  

briefdescription:
<summary>
Finds the branch within the given UnionSchema that matches the given object. The default implementation
calls Matches() method in the order of branches within the UnionSchema. If nothing matches, throws
an exception.
</summary>


refid: a599695bf2f01fd3d9d3da3474006c894
name: WriteFixed
definition: virtual void Avro.Generic.DefaultWriter.WriteFixed
type: void
argsstring: (FixedSchema es, object value, Encoder encoder)
scope: Avro.Generic.DefaultWriter
detaileddescription:
<param name="es">The schema for serialization</param>
<param name="value">The value to be serialized</param>
<param name="encoder">The encoder for serialization</param>  

briefdescription:
<summary>
Serialized a fixed object. The default implementation requires that the value is
a GenericFixed object with an identical schema as es.
</summary>


refid: a277ebd63683bc5582558890f6efcc502
name: NewInstance
definition: static EnumSchema Avro.EnumSchema.NewInstance
type: EnumSchema
argsstring: (JToken jtok, PropertyMap props, SchemaNames names, string encspace)
scope: Avro.EnumSchema
briefdescription: <summary> Static function to return new instance of EnumSchema </summary>
detaileddescription:
<param name="jtok">JSON object for enum schema</param>
<param name="names">list of named schema already parsed in</param>
<param name="encspace">enclosing namespace for the enum schema</param>
<returns>new instance of enum schema</returns>  


refid: a407f3a2b129da1655ecfd31166846c08
name: EnumSchema
definition: Avro.EnumSchema.EnumSchema
scope: Avro.EnumSchema
briefdescription: <summary> Constructor for enum schema </summary>
argsstring:
(SchemaName name, IList< SchemaName > aliases, List< string > symbols, IDictionary< String, int > symbolMap, PropertyMap props, SchemaNames names)

detaileddescription:
<param name="name">name of enum</param>
<param name="aliases">list of aliases for the name</param>
<param name="symbols">list of enum symbols</param>
<param name="symbolMap">map of enum symbols and value</param>
<param name="names">list of named schema already read</param>  


refid: a86bdff17faf0e6d368a129b7b20d5b1f
name: WriteJsonFields
definition: override void Avro.EnumSchema.WriteJsonFields
type: override void
argsstring: (Newtonsoft.Json.JsonTextWriter writer, SchemaNames names, string encspace)
scope: Avro.EnumSchema
briefdescription: <summary> Writes enum schema in JSON format </summary>
detaileddescription:
<param name="writer">JSON writer</param>
<param name="names">list of named schema already written</param>
<param name="encspace">enclosing namespace of the enum schema</param>  


refid: a01b7496c32463ef29125bfcfb0b2be3f
name: Ordinal
definition: int Avro.EnumSchema.Ordinal
type: int
argsstring: (string symbol)
scope: Avro.EnumSchema
detaileddescription:
<param name="symbol">name of the symbol to find</param>
<returns>position of the given symbol in this enum schema</returns>  

briefdescription:
<summary>
Returns the position of the given symbol within this enum. 
Throws AvroException if the symbol is not found in this enum.
</summary>


refid: a4792ec980f22f9e492ee2bdef0f0945a
name: Contains
definition: bool Avro.EnumSchema.Contains
type: bool
argsstring: (string symbol)
scope: Avro.EnumSchema
briefdescription: <summary> Checks if given symbol is in the list of enum symbols </summary>
detaileddescription:
<param name="symbol">symbol to check</param>
<returns>true if symbol exist, false otherwise</returns>  


refid: ad09746e6e35ee30da22ef8f8065454e8
name: GetEnumerator
definition: IEnumerator<string> Avro.EnumSchema.GetEnumerator
type: IEnumerator< string >
argsstring: ()
scope: Avro.EnumSchema
detaileddescription: <returns>Enumeration over the symbols of this enum schema</returns>
briefdescription:
<summary>
Returns an enumerator that enumerates the symbols in this enum schema in the order of their definition.
</summary>


refid: a397546df4ab9a65b4edaa94fa20408b0
name: DefaultValue
definition: JToken Avro.Field.DefaultValue
type: JToken
scope: Avro.Field
briefdescription:
<summary>
The default value for the field stored as JSON object, if defined. Otherwise, null.
</summary>


refid: af386f749562b2914599884157b46a37a
name: Props
definition: readonly PropertyMap Avro.Field.Props
type: readonly PropertyMap
scope: Avro.Field
briefdescription:
<summary>
Custom properties for the field. We don't store the fields custom properties in
the field type's schema because if the field type is only a reference to the schema 
instead of an actual schema definition, then the schema could already have it's own set 
of custom properties when it was previously defined.
</summary>


refid: ac4b861f276eb8e589db1e4759b9f6602
name: Field
definition: Avro.Field.Field
scope: Avro.Field
argsstring:
(Schema schema, string name, IList< string > aliases, int pos, string doc, JToken defaultValue, SortOrder sortorder, PropertyMap props)

detaileddescription:
  <summary>
Constructor for the field class
</summary>
<param name="schema">schema for the field type</param>
<param name="name">name of the field</param>
<param name="aliases">list of aliases for the name of the field</param>
<param name="pos">position of the field</param>
<param name="doc">documentation for the field</param>
<param name="defaultValue">field's default value if it exists</param>
<param name="sortorder">sort order of the field</param>  

briefdescription:
<summary>
A flag to indicate if reader schema has a field that is missing from writer schema and has a default value
This is set in CanRead() which is always be called before deserializing data
</summary>


refid: a216d71d5bec133c86804057e305b4f6b
name: writeJson
definition: void Avro.Field.writeJson
type: void
argsstring: (JsonTextWriter writer, SchemaNames names, string encspace)
scope: Avro.Field
briefdescription: <summary> Writes the Field class in JSON format </summary>
detaileddescription:
<param name="writer">JSON writer</param>
<param name="names">list of named schemas already written</param>
<param name="encspace">enclosing namespace for the field</param>  


refid: a2da48f7c8c8ea5ca562c58a90af89b7f
name: GetAliases
definition: static IList<string> Avro.Field.GetAliases
type: IList< string >
argsstring: (JToken jtok)
scope: Avro.Field
briefdescription: <summary> Parses the 'aliases' property from the given JSON token </summary>
detaileddescription:
<param name="jtok">JSON object to read</param>
<returns>List of string that represents the list of alias. If no 'aliases' specified, then it returns null.</returns>  


refid: a613166e30144db2e7f9663a706f05135
name: Equals
definition: override bool Avro.Field.Equals
type: override bool
argsstring: (object obj)
scope: Avro.Field
briefdescription: <summary> Compares two field objects </summary>
detaileddescription:
<param name="obj">field to compare with this field</param>
<returns>true if two fields are equal, false otherwise</returns>  


refid: a85ecf13a118d5b551726dbb0e4a958c0
name: areEqual
definition: static bool Avro.Field.areEqual
type: bool
argsstring: (object o1, object o2)
scope: Avro.Field
briefdescription: <summary> Compares two objects </summary>
detaileddescription:
<param name="o1">first object</param>
<param name="o2">second object</param>
<returns>true if two objects are equal, false otherwise</returns>  


refid: a9a21102f8148ecdae7a9c991509a83fd
name: CreateFixed
definition: object Avro.Generic.PreresolvingDatumReader< T >.FixedAccess.CreateFixed
type: object
argsstring: (object reuse)
scope: Avro.Generic.PreresolvingDatumReader< T >.FixedAccess
briefdescription: <summary> Returns a fixed object. </summary>
detaileddescription:
<param name="reuse">If appropriate, uses this object instead of creating a new one.</param>
<returns>A fixed object with an appropriate buffer.</returns>  


refid: ad062356ab3098060926adc8e01f55a28
name: NewInstance
definition: static FixedSchema Avro.FixedSchema.NewInstance
type: FixedSchema
argsstring: (JToken jtok, PropertyMap props, SchemaNames names, string encspace)
scope: Avro.FixedSchema
briefdescription: <summary> Static function to return new instance of the fixed schema class </summary>
detaileddescription:
<param name="jtok">JSON object for the fixed schema</param>
<param name="names">list of named schema already parsed in</param>
<param name="encspace">enclosing namespace of the fixed schema</param>
<returns></returns>  


refid: a089b49fca4e84bcf7022e44e07d2b625
name: FixedSchema
definition: Avro.FixedSchema.FixedSchema
argsstring: (SchemaName name, IList< SchemaName > aliases, int size, PropertyMap props, SchemaNames names)
scope: Avro.FixedSchema
briefdescription: <summary> Constructor </summary>
detaileddescription:
<param name="name">name of the fixed schema</param>
<param name="aliases">list of aliases for the name</param>
<param name="size">fixed size</param>
<param name="names">list of named schema already parsed in</param>  


refid: a4698e4d2a631e69cde4299c223862c5d
name: WriteJsonFields
definition: override void Avro.FixedSchema.WriteJsonFields
type: override void
argsstring: (Newtonsoft.Json.JsonTextWriter writer, SchemaNames names, string encspace)
scope: Avro.FixedSchema
briefdescription: <summary> Writes the fixed schema class in JSON format </summary>
detaileddescription:
<param name="writer">JSON writer</param>
<param name="names">list of named schema already written</param>
<param name="encspace">enclosing namespace for the fixed schema</param>  


refid: a8937d3cfe8c351c0466417d07a51b1f4
name: Equals
definition: override bool Avro.FixedSchema.Equals
type: override bool
argsstring: (object obj)
scope: Avro.FixedSchema
briefdescription: <summary> Compares two fixed schemas </summary>
detaileddescription:
<param name="obj">fixed schema to compare against this schema</param>
<returns>true if two schemas are the same, false otherwise</returns>  


refid: a7d822e8d3a727af49400f0b6926190b7
name: IsReusable
definition: override bool Avro.Generic.GenericDatumReader< T >.IsReusable
type: override bool
argsstring: (Schema.Type tag)
scope: Avro.Generic.GenericDatumReader< T >
briefdescription:
<summary>
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.
</summary>


refid: a12a97566843a27ce743b21a4155b91d3
name: GenericReader
definition: Avro.Generic.GenericReader< T >.GenericReader
argsstring: (Schema writerSchema, Schema readerSchema)
scope: Avro.Generic.GenericReader< T >
detaileddescription:
<param name="writerSchema">The schema used while generating the data</param>
<param name="readerSchema">The schema desired by the reader</param>  

briefdescription:
<summary>
Constructs a generic reader for the given schemas using the DefaultReader. If the
reader's and writer's schemas are different this class performs the resolution.
</summary>


refid: a8e20e75362d0436ab116cfecf3f83472
name: Write
definition: void Avro.Generic.GenericWriter< T >.Write
type: void
argsstring: (T value, Encoder encoder)
scope: Avro.Generic.GenericWriter< T >
briefdescription: <summary> Serializes the given object using this writer's schema. </summary>
detaileddescription:
<param name="value">The value to be serialized</param>
<param name="encoder">The encoder to use for serializing</param>  


refid: a96f8b3925eae9b471830eaac47a56d7c
name: GetOptionalString
definition: static string Avro.JsonHelper.GetOptionalString
type: string
argsstring: (JToken jtok, string field)
scope: Avro.JsonHelper
detaileddescription:
<param name="jtok">JSON object to read</param>
<param name="field">property name</param>
<returns>property value if property exists, null if property doesn't exist in the JSON object</returns>  

briefdescription:
<summary>
Retrieves the optional string property value for the given property name from the given JSON object.
This throws an exception if property exists but it is not a string.
</summary>


refid: a8e05d85822312bdd839e85f9ba3838c2
name: GetRequiredString
definition: static string Avro.JsonHelper.GetRequiredString
type: string
argsstring: (JToken jtok, string field)
scope: Avro.JsonHelper
detaileddescription:
<param name="jtok">JSON object to read</param>
<param name="field">property name</param>
<returns>property value</returns>  

briefdescription:
<summary>
Retrieves the required string property value for the given property name from the given JSON object.
</summary>


refid: ab0eab0040610103af9edb94d46aaed01
name: GetRequiredInteger
definition: static int Avro.JsonHelper.GetRequiredInteger
type: int
argsstring: (JToken jtok, string field)
scope: Avro.JsonHelper
detaileddescription:
<param name="jtok">JSON object to read</param>
<param name="field">property name</param>
<returns>property value</returns>  

briefdescription:
<summary>
Retrieves the required int property value for the given property name from the given JSON object.
</summary>


refid: ad257e11947d44f5f21ac53b9f203aa47
name: GetOptionalBoolean
definition: static bool Avro.JsonHelper.GetOptionalBoolean
type: bool
argsstring: (JToken jtok, string field)
scope: Avro.JsonHelper
detaileddescription:
<param name="jtok">JSON object to read</param>
<param name="field">property name</param>
<returns>null if property doesn't exist, otherise returns property boolean value</returns>  

briefdescription:
<summary>
Retrieves the optional boolean property value for the given property name from the given JSON object.
</summary>


refid: ae24061e0d53d4ad0e33e2aaab86085a3
name: writeIfNotNullOrEmpty
definition: static void Avro.JsonHelper.writeIfNotNullOrEmpty
type: void
argsstring: (JsonTextWriter writer, string key, string value)
scope: Avro.JsonHelper
briefdescription: <summary> Writes JSON property name and value if value is not null </summary>
detaileddescription:
<param name="writer">JSON writer</param>
<param name="key">property name</param>
<param name="value">property value</param>  


refid: ae4cc5bbbe6600b7bb6ecca6ff8a2bf60
name: NewInstance
definition: static MapSchema Avro.MapSchema.NewInstance
type: MapSchema
argsstring: (JToken jtok, PropertyMap props, SchemaNames names, string encspace)
scope: Avro.MapSchema
briefdescription: <summary> Static function to return new instance of map schema </summary>
detaileddescription:
<param name="jtok">JSON object for the map schema</param>
<param name="names">list of named schemas already read</param>
<param name="encspace">enclosing namespace of the map schema</param>
<returns></returns>  


refid: a0d15ea1fd21d9c8a6242918da8b13058
name: WriteJsonFields
definition: override void Avro.MapSchema.WriteJsonFields
type: override void
argsstring: (Newtonsoft.Json.JsonTextWriter writer, SchemaNames names, string encspace)
scope: Avro.MapSchema
briefdescription: <summary> Writes map schema in JSON format </summary>
detaileddescription:
<param name="writer">JSON writer</param>
<param name="names">list of named schemas already written</param>
<param name="encspace">enclosing namespace of the map schema</param>  


refid: a559a00cf6740b0458b6126b27bd470d6
name: Equals
definition: override bool Avro.MapSchema.Equals
type: override bool
argsstring: (object obj)
scope: Avro.MapSchema
briefdescription: <summary> Compares equality of two map schemas </summary>
detaileddescription:
<param name="obj">map schema to compare against this schema</param>
<returns>true if two schemas are equal, false otherwise</returns>  


refid: a79ca85d0e537073c6ecc0f8d41244d20
name: Message
definition: Avro.Message.Message
argsstring: (string name, string doc, RecordSchema request, Schema response, UnionSchema error, bool?oneway)
scope: Avro.Message
briefdescription: <summary> Constructor for Message class </summary>
detaileddescription:
<param name="name">name property</param>
<param name="doc">doc property</param>
<param name="request">list of parameters</param>
<param name="response">response property</param>
<param name="error">error union schema</param>  


refid: a4dd349bd38da2ee3074954fb85af61ee
name: Parse
definition: static Message Avro.Message.Parse
type: Message
argsstring: (JProperty jmessage, SchemaNames names, string encspace)
scope: Avro.Message
briefdescription: <summary> Parses the messages section of a protocol definition </summary>
detaileddescription:
<param name="jmessage">messages JSON object</param>
<param name="names">list of parsed names</param>
<param name="encspace">enclosing namespace</param>
<returns></returns>  


refid: af4b974349a838629a143cf77070f80ce
name: writeJson
definition: void Avro.Message.writeJson
type: void
argsstring: (Newtonsoft.Json.JsonTextWriter writer, SchemaNames names, string encspace)
scope: Avro.Message
briefdescription: <summary> Writes the messages section of a protocol definition </summary>
detaileddescription:
<param name="writer">writer</param>
<param name="names">list of names written</param>
<param name="encspace">enclosing namespace</param>  


refid: a2fd81aef81e0dca7bc076cfbd4f2ebe5
name: NewInstance
definition: static NamedSchema Avro.NamedSchema.NewInstance
type: NamedSchema
argsstring: (JObject jo, PropertyMap props, SchemaNames names, string encspace)
scope: Avro.NamedSchema
briefdescription: <summary> Static function to return a new instance of the named schema </summary>
detaileddescription:
<param name="jo">JSON object of the named schema</param>
<param name="names">list of named schemas already read</param>
<param name="encspace">enclosing namespace of the named schema</param>
<returns></returns>  


refid: afe64baafbcbad0b9462c0afe8523fe34
name: NamedSchema
definition: Avro.NamedSchema.NamedSchema
argsstring: (Type type, SchemaName name, IList< SchemaName > aliases, PropertyMap props, SchemaNames names)
scope: Avro.NamedSchema
briefdescription: <summary> Constructor for named schema class </summary>
detaileddescription:
<param name="type">schema type</param>
<param name="name">name</param>
<param name="names">list of named schemas already read</param>  


refid: a9e7aec2acc642e235e2f7828e2272b91
name: GetName
definition: static SchemaName Avro.NamedSchema.GetName
type: SchemaName
argsstring: (JToken jtok, string encspace)
scope: Avro.NamedSchema
detaileddescription:
<param name="jtok">JSON object to read</param>
<param name="encspace">enclosing namespace</param>
<returns>new SchemaName object</returns>  

briefdescription:
<summary>
Parses the name and namespace from the given JSON schema object then creates
SchemaName object including the given enclosing namespace
</summary>


refid: a22764b29290b27326493713b09a724c8
name: GetAliases
definition: static IList<SchemaName> Avro.NamedSchema.GetAliases
type: IList< SchemaName >
argsstring: (JToken jtok, string space, string encspace)
scope: Avro.NamedSchema
briefdescription: <summary> Parses the 'aliases' property from the given JSON token </summary>
detaileddescription:
<param name="jtok">JSON object to read</param>
<param name="space">namespace of the name this alias is for</param>
<param name="encspace">enclosing namespace of the name this alias is for</param>
<returns>List of SchemaName that represents the list of alias. If no 'aliases' specified, then it returns null.</returns>  


refid: a9bb9f697a2263b961a53da3b5a25a606
name: WriteJson
definition: override void Avro.NamedSchema.WriteJson
type: override void
argsstring: (Newtonsoft.Json.JsonTextWriter writer, SchemaNames names, string encspace)
scope: Avro.NamedSchema
briefdescription: <summary> Writes named schema in JSON format </summary>
detaileddescription:
<param name="writer">JSON writer</param>
<param name="names">list of named schemas already written</param>
<param name="encspace">enclosing namespace of the named schema</param>  


refid: a96e5140d3d2e1329d68795a37a8db26c
name: GetType
definition: Type Avro.Specific.ObjectCreator.GetType
type: Type
argsstring: (string name, Schema.Type schemaType)
scope: Avro.Specific.ObjectCreator
briefdescription: <summary> Gets the type of the specified type name </summary>
detaileddescription:
<param name="name">name of the object to get type of</param>
<param name="schemaType">schema type for the object</param>
<returns>Type</returns>  


refid: adbdc1413fafe0a2fab1ecf1d9ac09e61
name: GetConstructor
definition: CtorDelegate Avro.Specific.ObjectCreator.GetConstructor
type: CtorDelegate
argsstring: (string name, Schema.Type schemaType, Type type)
scope: Avro.Specific.ObjectCreator
briefdescription: <summary> Gets the default constructor for the specified type </summary>
detaileddescription:
<param name="name">name of object for the type</param>
<param name="schemaType">schema type for the object</param>
<param name="type">type of the object</param>
<returns>Default constructor for the type</returns>  


refid: a594c036b3c822b3499f1060215b5710f
name: New
definition: object Avro.Specific.ObjectCreator.New
type: object
argsstring: (string name, Schema.Type schemaType)
scope: Avro.Specific.ObjectCreator
briefdescription: <summary> Creates new instance of the given type </summary>
detaileddescription:
<param name="name">fully qualified name of the type</param>
<param name="schemaType">type of schema</param>
<returns>new object of the given type</returns>  


refid: ab8d380724f13cd40e13a2ca3e28f7644
name: FindType
definition: Type Avro.Specific.ObjectCreator.FindType
type: Type
argsstring: (string name, bool throwError)
scope: Avro.Specific.ObjectCreator
briefdescription: <summary> Find the type with the given name </summary>
detaileddescription:
<param name="name">the object type to locate</param>
<param name="throwError">whether or not to throw an error if the type wasn't found</param>
<returns>the object type, or <c>null</c> if not found</returns>  


refid: a8b3f660e9a28b61ca2219aa39a2f9ce1
name: ResolveReader
definition: ReadItem Avro.Generic.PreresolvingDatumReader< T >.ResolveReader
type: ReadItem
argsstring: (Schema writerSchema, Schema readerSchema)
scope: Avro.Generic.PreresolvingDatumReader< T >
briefdescription:
<summary>
Build a reader that accounts for schema differences between the reader and writer schemas.
</summary>


refid: a4a5fe7e0edbffaeb0ea8c40054d55bfb
name: _recordWriters
type: readonly Dictionary< RecordSchema, WriteItem >
scope: Avro.Generic.PreresolvingDatumWriter< T >
initializer: = new Dictionary<RecordSchema,WriteItem>()
definition:
readonly Dictionary<RecordSchema,WriteItem> Avro.Generic.PreresolvingDatumWriter< T >._recordWriters


refid: a764bedc9a36db339acce3cc6d5b2952e
name: WriteUnion
definition: void Avro.Generic.PreresolvingDatumWriter< T >.WriteUnion
type: void
scope: Avro.Generic.PreresolvingDatumWriter< T >
argsstring:
(UnionSchema unionSchema, Schema[] branchSchemas, WriteItem[] branchWriters, object value, Encoder encoder)

detaileddescription:
<param name="us">The UnionSchema to resolve against</param>
<param name="value">The value to be serialized</param>
<param name="encoder">The encoder for serialization</param>  

briefdescription:
<summary>
Resolves the given value against the given UnionSchema and serializes the object against
the resolved schema member.
</summary>


refid: ae16f9dcd6e258a02160e9040b121a46b
name: Equals
definition: override bool Avro.PrimitiveSchema.Equals
type: override bool
argsstring: (object obj)
scope: Avro.PrimitiveSchema
briefdescription: <summary> Function to compare equality of two primitive schemas </summary>
detaileddescription:
<param name="obj">other primitive schema</param>
<returns>true two schemas are equal, false otherwise</returns>  


refid: aad23de67544d19ccf24f17f7b9c0566a
name: ReservedProps
definition: readonly HashSet<string> Avro.PropertyMap.ReservedProps
type: readonly HashSet< string >
scope: Avro.PropertyMap
initializer:
= new HashSet<string>() { "type", "name", "namespace", "fields", "items", "size", "symbols", "values", "aliases", "order", "doc", "default" }

briefdescription:
<summary>
Set of reserved schema property names, any other properties not defined in this set are custom properties and can be added to this map
</summary>


refid: ad1b9e8b8f6cb3ed3adbb9fb84af277eb
name: Parse
definition: void Avro.PropertyMap.Parse
type: void
argsstring: (JToken jtok)
scope: Avro.PropertyMap
detaileddescription: <param name="jtok">JSON object to prase</param>
briefdescription:
<summary>
Parses the custom properties from the given JSON object and stores them
into the schema's list of custom properties
</summary>


refid: a5d598045d06f6e58c47ace75d3b09437
name: Equals
definition: override bool Avro.PropertyMap.Equals
type: override bool
argsstring: (object obj)
scope: Avro.PropertyMap
briefdescription: <summary> Function to compare equality of two PropertyMaps </summary>
detaileddescription:
<param name="obj">other PropertyMap</param>
<returns>true if contents of the two maps are the same, false otherwise</returns>  


refid: a4db643761d1f913174fec78e03a72740
name: Types
definition: IList<Schema> Avro.Protocol.Types
type: IList< Schema >
scope: Avro.Protocol
briefdescription:
<summary>
List of schemas objects representing the different schemas defined under the 'types' attribute
</summary>


refid: a14bc87815ef0e250e9f8c256aaaea85b
name: Messages
definition: IDictionary<string,Message> Avro.Protocol.Messages
type: IDictionary< string, Message >
scope: Avro.Protocol
briefdescription:
<summary>
List of message objects representing the different schemas defined under the 'messages' attribute
</summary>


refid: ac038e22ec02d97353d6767514724b9a1
name: Protocol
definition: Avro.Protocol.Protocol
scope: Avro.Protocol
briefdescription: <summary> Constructor for Protocol class </summary>
argsstring:
(string name, string space, string doc, IEnumerable< Schema > types, IDictionary< string, Message > messages)

detaileddescription:
<param name="name">required name of protocol</param>
<param name="space">optional namespace</param>
<param name="doc">optional documentation</param>
<param name="types">required list of types</param>
<param name="messages">required list of messages</param>  


refid: a9d4d9f7a4ce907eaa175dff8f2114566
name: WriteJson
definition: void Avro.Protocol.WriteJson
type: void
argsstring: (Newtonsoft.Json.JsonTextWriter writer, SchemaNames names)
scope: Avro.Protocol
briefdescription: <summary> Writes Protocol in JSON format </summary>
detaileddescription:
<param name="writer">JSON writer</param>
<param name="names">list of named schemas already written</param>  


refid: a6eaf228cffe3859ad41747bac77e4726
name: TypesEquals
definition: bool Avro.Protocol.TypesEquals
type: bool
argsstring: (IList< Schema > that)
scope: Avro.Protocol
detaileddescription: <param name="that"></param> <returns></returns>
briefdescription:
<summary>
Test equality of this protocols Types list with the passed Types list.
Order of schemas does not matter, as long as all types in this protocol
are also defined in the passed protocol
</summary>


refid: a69a6d6b05e1de6823f17113311744c14
name: MessagesEquals
definition: bool Avro.Protocol.MessagesEquals
type: bool
argsstring: (IDictionary< string, Message > that)
scope: Avro.Protocol
detaileddescription: <param name="that"></param> <returns></returns>
briefdescription:
<summary>
Test equality of this protocols Message map with the passed Message map
Order of messages does not matter, as long as all messages in this protocol
are also defined in the passed protocol
</summary>


refid: ad491bd94a82520528b3a51be0aeac6a2
name: CreateRecord
definition: object Avro.Generic.PreresolvingDatumReader< T >.RecordAccess.CreateRecord
type: object
argsstring: (object reuse)
scope: Avro.Generic.PreresolvingDatumReader< T >.RecordAccess
detaileddescription:
<param name="reuse">If appropriate, will reuse this object instead of constructing a new one</param>
<returns></returns>  

briefdescription:
<summary>
Creates a new record object. Derived classes can override this to return an object of their choice.
</summary>


refid: ac4b7a39a4cdf089af5ce0258c7eb90dd
name: GetField
definition: object Avro.Generic.PreresolvingDatumReader< T >.RecordAccess.GetField
type: object
argsstring: (object record, string fieldName, int fieldPos)
scope: Avro.Generic.PreresolvingDatumReader< T >.RecordAccess
detaileddescription:
<param name="record">The record object to be probed into. This is guaranteed to be one that was returned
by a previous call to CreateRecord.</param>
<param name="fieldName">The name of the field to probe.</param>
<param name="fieldPos">field number</param>
<returns>The value of the field, if found. Null otherwise.</returns>  

briefdescription:
<summary>
Used by the default implementation of ReadRecord() to get the existing field of a record object. The derived
classes can override this to make their own interpretation of the record object.
</summary>


refid: a041650b89199a4e0930944d9ec934d07
name: AddField
definition: void Avro.Generic.PreresolvingDatumReader< T >.RecordAccess.AddField
type: void
argsstring: (object record, string fieldName, int fieldPos, object fieldValue)
scope: Avro.Generic.PreresolvingDatumReader< T >.RecordAccess
detaileddescription:
<param name="record">The record object to be probed into. This is guaranteed to be one that was returned
by a previous call to CreateRecord.</param>
<param name="fieldName">The name of the field to probe.</param>
<param name="fieldPos">field number</param>
<param name="fieldValue">The value to be added for the field</param>  

briefdescription:
<summary>
Used by the default implementation of ReadRecord() to add a field to a record object. The derived
classes can override this to suit their own implementation of the record object.
</summary>


refid: a60dcc6efed1f4e9d6dc9d17cab2fe2f4
name: NewInstance
definition: static RecordSchema Avro.RecordSchema.NewInstance
type: RecordSchema
argsstring: (Type type, JToken jtok, PropertyMap props, SchemaNames names, string encspace)
scope: Avro.RecordSchema
briefdescription: <summary> Static function to return new instance of the record schema </summary>
detaileddescription:
<param name="type">type of record schema, either record or error</param>
<param name="jtok">JSON object for the record schema</param>
<param name="names">list of named schema already read</param>
<param name="encspace">enclosing namespace of the records schema</param>
<returns>new RecordSchema object</returns>  


refid: a9731f3b8515530b15372efdbe7116cce
name: RecordSchema
definition: Avro.RecordSchema.RecordSchema
scope: Avro.RecordSchema
briefdescription: <summary> Constructor for the record schema </summary>
argsstring:
(Type type, SchemaName name, IList< SchemaName > aliases, PropertyMap props, List< Field > fields, bool request, IDictionary< string, Field > fieldMap, IDictionary< string, Field > fieldAliasMap, SchemaNames names)

detaileddescription:
<param name="type">type of record schema, either record or error</param>
<param name="name">name of the record schema</param>
<param name="aliases">list of aliases for the record name</param>
<param name="fields">list of fields for the record</param>
<param name="request">true if this is an anonymous record with 'request' instead of 'fields'</param>
<param name="fieldMap">map of field names and field objects</param>
<param name="names">list of named schema already read</param>  


refid: ac044d05e2000a4737a79f7448bc61af8
name: protect< T >
definition: T Avro.RecordSchema.protect< T >
type: T
argsstring: (Function< T > bypass, Function< T > main, RecordSchema that)
scope: Avro.RecordSchema
detaileddescription:
We want to protect against infinite recursion when the schema is recursive. We look into a thread local
to see if we have been into this if so, we execute the bypass function otherwise we execute the main function.
Before executing the main function, we ensure that we create a marker so that if we come back here recursively
we can detect it.

The infinite loop happens in ToString(), Equals() and GetHashCode() methods.
Though it does not happen for CanRead() because of the current implemenation of UnionSchema's can read,
it could potenitally happen.
We do a linear seach for the marker as we don't expect the list to be very long.


refid: ac1abccb5625436d3a19cdd7e5d8e493b
name: createField
definition: static Field Avro.RecordSchema.createField
type: Field
argsstring: (JToken jfield, int pos, SchemaNames names, string encspace)
scope: Avro.RecordSchema
briefdescription: <summary> Creates a new field for the record </summary>
detaileddescription:
<param name="jfield">JSON object for the field</param>
<param name="pos">position number of the field</param>
<param name="names">list of named schemas already read</param>
<param name="encspace">enclosing namespace of the records schema</param>
<returns>new Field object</returns>  


refid: a6a6a0793adfdcd0e4222d48f2c8f8831
name: Contains
definition: bool Avro.RecordSchema.Contains
type: bool
argsstring: (string fieldName)
scope: Avro.RecordSchema
briefdescription: <summary> Returns true if and only if the record contains a field by the given name. </summary>
detaileddescription:
<param name="fieldName">The name of the field</param>
<returns>true if the field exists, false otherwise</returns>  


refid: a4d1eda935706a71d30600fd7a00d17ec
name: Equals
definition: override bool Avro.RecordSchema.Equals
type: override bool
argsstring: (object obj)
scope: Avro.RecordSchema
briefdescription: <summary> Compares equality of two record schemas </summary>
detaileddescription:
<param name="obj">record schema to compare against this schema</param>
<returns>true if the two schemas are equal, false otherwise</returns>  


refid: a26607e5f447d7da3b6971b8ff05c1115
name: WriteJsonFields
definition: override void Avro.RecordSchema.WriteJsonFields
type: override void
argsstring: (Newtonsoft.Json.JsonTextWriter writer, SchemaNames names, string encspace)
scope: Avro.RecordSchema
briefdescription: <summary> Writes the records schema in JSON format </summary>
detaileddescription:
<param name="writer">JSON writer</param>
<param name="names">list of named schemas already written</param>
<param name="encspace">enclosing namespace of the record schema</param>  


refid: af03337e2ce2a06b37a0d4220ace9ca97
name: EncodeDefaultValue
definition: static void Avro.IO.Resolver.EncodeDefaultValue
type: void
argsstring: (Encoder enc, Schema schema, JToken jtok)
scope: Avro.IO.Resolver
detaileddescription:
<param name="enc">encoder to use for writing</param>
<param name="schema">schema object for the current field</param>
<param name="jtok">default value as JToken</param>  

briefdescription:
<summary>
Reads the passed JToken default value field and writes it in the specified encoder 
</summary>


refid: a240a1466ad53c77899f72f48ab68b988
name: Name
definition: abstract string Avro.Schema.Name
type: abstract string
scope: Avro.Schema
briefdescription:
<summary>
The name of this schema. If this is a named schema such as an enum, it returns the fully qualified
name for the schema. For other schemas, it returns the type of the schema.
</summary>


refid: a5406a526ee655c34a6d9489284933740
name: ParseJson
definition: static Schema Avro.Schema.ParseJson
type: Schema
argsstring: (JToken jtok, SchemaNames names, string encspace)
scope: Avro.Schema
briefdescription: <summary> Static class to return new instance of schema object </summary>
detaileddescription:
<param name="jtok">JSON object</param>
<param name="names">list of named schemas already read</param>
<param name="encspace">enclosing namespace of the schema</param>
<returns>new Schema object</returns>  


refid: a457d3776cb34e0c1fa457e7dad5d5a2f
name: Parse
definition: static Schema Avro.Schema.Parse
type: Schema
argsstring: (string json, SchemaNames names, string encspace)
scope: Avro.Schema
briefdescription: <summary> Parses a JSON string to create a new schema object </summary>
detaileddescription:
<param name="json">JSON string</param>
<param name="names">list of named schemas already read</param>
<param name="encspace">enclosing namespace of the schema</param>
<returns>new Schema object</returns>  


refid: a71426e7741f8060da48040d45534a6a3
name: GetProperties
definition: static PropertyMap Avro.Schema.GetProperties
type: PropertyMap
argsstring: (JToken jtok)
scope: Avro.Schema
detaileddescription:
<param name="jtok">JSON object to parse</param>
<returns>Property map if custom properties were found, null if no custom properties found</returns>  

briefdescription:
<summary>
Static function to parse custom properties (not defined in the Avro spec) from the given JSON object
</summary>


refid: a3857a4547a0d29f494b336b10b9b7576
name: CanRead
definition: virtual bool Avro.Schema.CanRead
type: bool
argsstring: (Schema writerSchema)
scope: Avro.Schema
detaileddescription:
<param name="writerSchema">The writer's schema to match against.</param>
<returns>True if and only if the current schema matches the writer's.</returns>  

briefdescription:
<summary>
Returns true if and only if data written using writerSchema can be read using the current schema
according to the Avro resolution rules.
</summary>


refid: a5ee0978d5ceac30495c1000b5443992b
name: WriteJsonFields
definition: virtual void Avro.Schema.WriteJsonFields
type: void
argsstring: (JsonTextWriter writer, SchemaNames names, string encspace)
scope: Avro.Schema
briefdescription: <summary> Default implementation for writing schema properties in JSON format </summary>
detaileddescription:
<param name="writer">JSON writer</param>
<param name="names">list of named schemas already written</param>
<param name="encspace">enclosing namespace of the schema</param>  


refid: aca0a41523dd2a27b57d13f497683ecca
name: SchemaName
definition: Avro.SchemaName.SchemaName
argsstring: (String name, String space, String encspace)
scope: Avro.SchemaName
briefdescription: <summary> Constructor for SchemaName </summary>
detaileddescription:
<param name="name">name of the schema</param>
<param name="space">namespace of the schema</param>
<param name="encspace">enclosing namespace of the schema</param>  


refid: a461cd0e3751f76d3023ecf97a4fd59a4
name: Equals
definition: override bool Avro.SchemaName.Equals
type: override bool
argsstring: (Object obj)
scope: Avro.SchemaName
briefdescription: <summary> Compares two schema names </summary>
detaileddescription:
<param name="obj">SchameName object to compare against this object</param>
<returns>true or false</returns>  


refid: a14e9ac39325cdfc8a9337977ea55dc33
name: areEqual
definition: static bool Avro.SchemaName.areEqual
type: bool
argsstring: (object obj1, object obj2)
scope: Avro.SchemaName
briefdescription: <summary> Compares two objects </summary>
detaileddescription:
<param name="obj1">first object</param>
<param name="obj2">second object</param>
<returns>true or false</returns>  


refid: aeafe6e15130520c784220e036b53fed2
name: Add
definition: bool Avro.SchemaNames.Add
type: bool
argsstring: (SchemaName name, NamedSchema schema)
scope: Avro.SchemaNames
briefdescription: <summary> Adds a schema name to the map if it doesn't exist yet </summary>
detaileddescription:
<param name="name">schema name</param>
<param name="schema">schema object</param>
<returns>true if schema was added to the list, false if schema is already in the list</returns>  


refid: a48054e67c2145be090021805424a23af
name: Add
definition: bool Avro.SchemaNames.Add
type: bool
argsstring: (NamedSchema schema)
scope: Avro.SchemaNames
briefdescription: <summary> Adds a named schema to the list </summary>
detaileddescription:
<param name="schema">schema object</param>
<returns>true if schema was added to the list, false if schema is already in the list</returns>  


refid: ae01f5d07aef76e03852b4ff752b41d7b
name: TryGetValue
definition: bool Avro.SchemaNames.TryGetValue
type: bool
argsstring: (string name, string space, string encspace, out NamedSchema schema)
scope: Avro.SchemaNames
briefdescription: <summary> Tries to get the value for the given name fields </summary>
detaileddescription:
<param name="name">name of the schema</param>
<param name="space">namespace of the schema</param>
<param name="encspace">enclosing namespace of the schema</param>
<param name="schema">schema object found</param>
<returns>true if name is found in the map, false otherwise</returns>  


refid: a143de3ef568d98d2c666c1f57dbfafc2
name: ToParsingForm
definition: static string Avro.SchemaNormalization.ToParsingForm
type: string
argsstring: (Schema s)
scope: Avro.SchemaNormalization
briefdescription: <summary> Parses a schema into the canonical form as defined by Avro spec. </summary>
detaileddescription:
<param name="s">Schema</param>
<returns>Parsing Canonical Form of a schema as defined by Avro spec.</returns>  


refid: ae37293ba5a72190d3471da57a873b28c
name: Fingerprint
definition: static byte [] Avro.SchemaNormalization.Fingerprint
type: byte[]
argsstring: (string fpName, byte[] data)
scope: Avro.SchemaNormalization
briefdescription: <summary>
detaileddescription:
<para>Returns a fingerprint of a string of bytes. This string is
presumed to contain a canonical form of a schema. The
algorithm used to compute the fingerprint is selected by the
argument <i>fpName</i>.
</para>
<para>If <i>fpName</i> equals the string
<code>"CRC-64-AVRO"</code>, then the result of <see cref="Fingerprint64(byte[])"/> is
returned in little-endian format.
</para>
<para>If <i>fpName</i> equals the string
<code>"MD5"</code>, then the standard MD5 algorithm is used.
</para>
<para>If <i>fpName</i> equals the string
<code>"SHA-256"</code>, then the standard SHA-256 algorithm is used.
</para>
<para>Otherwise, <i>fpName</i> is
not recognized and an
<code>ArgumentException</code> is thrown
</para>
<para> Recommended Avro practice dictiates that
<code>"CRC-64-AVRO"</code> is used for 64-bit fingerprints,
<code>"MD5"</code> is used for 128-bit fingerprints, and
<code>"SHA-256"</code> is used for 256-bit fingerprints.
</para>
</summary>
<param name="fpName">Name of the hashing algorithm.</param>
<param name="data">Data to be hashed.</param>
<returns>Fingerprint</returns>  


refid: a03bef7f62f1082e20dcf4b18a7ab742f
name: ParsingFingerprint
definition: static byte [] Avro.SchemaNormalization.ParsingFingerprint
type: byte[]
argsstring: (string fpName, Schema s)
scope: Avro.SchemaNormalization
detaileddescription:
<param name="fpName">Name of the hashing algorithm.</param>
<param name="s">Schema to be hashed.</param>
<returns>Fingerprint</returns>  

briefdescription:
<summary>
Returns <see cref="Fingerprint(string, byte[])"/> applied to the parsing canonical form of the supplied schema.
</summary>


refid: a891907b7aba001e52224ec0a299dfdb2
name: ParsingFingerprint64
definition: static long Avro.SchemaNormalization.ParsingFingerprint64
type: long
argsstring: (Schema s)
scope: Avro.SchemaNormalization
detaileddescription: <param name="s">Schema to be hashed.</param> <returns>Fingerprint</returns>
briefdescription:
<summary>
Returns <see cref="Fingerprint64(byte[])"/> applied to the parsing canonical form of the supplied schema.
</summary>


refid: a5b321ff99e178cd3f744371b7342be8e
name: Fingerprint64
definition: static long Avro.SchemaNormalization.Fingerprint64
type: long
argsstring: (byte[] data)
scope: Avro.SchemaNormalization
detaileddescription: <param name="data">Data to be hashed.</param> <returns>Fingerprint</returns>
briefdescription:
<summary>
Computes the 64-bit Rabin Fingerprint (as recommended in the Avro spec) of a byte string.
</summary>


refid: a91e5c26d5fbd823f9cfd1560cbfe603e
name: TypeName
definition: IDictionary<string, Type> Avro.Specific.SpecificDefaultReader.TypeName
type: IDictionary< string, Type >
scope: Avro.Specific.SpecificDefaultReader
initializer: = new Dictionary<string, Type>()
briefdescription:
<summary>
Static dictionary of type names and its corresponding assembly type. 
This is used to prevent multiple reflection for the same type name.
</summary>


refid: a90d07400f5923323d3aa61a689390035
name: SpecificDefaultReader
definition: Avro.Specific.SpecificDefaultReader.SpecificDefaultReader
argsstring: (Schema writerSchema, Schema readerSchema)
scope: Avro.Specific.SpecificDefaultReader
briefdescription: <summary> Constructor </summary>
detaileddescription:
<param name="writerSchema">schema of the object that wrote the data</param>
<param name="readerSchema">schema of the object that will store the data</param>  


refid: adc6ed89f7ad3801cfb40877860eca0a5
name: ReadEnum
definition: override object Avro.Specific.SpecificDefaultReader.ReadEnum
type: override object
argsstring: (object reuse, EnumSchema writerSchema, Schema readerSchema, Decoder dec)
scope: Avro.Specific.SpecificDefaultReader
briefdescription: <summary> Reads an enum from the given decoder </summary>
detaileddescription:
<param name="reuse">object to store data read</param>
<param name="writerSchema">schema of the object that wrote the data</param>
<param name="readerSchema">schema of the object that will store the data</param>
<param name="dec">decoder object that contains the data to be read</param>
<returns>enum value</returns>  


refid: a097ea592fa2384da93014feb867f5873
name: ReadArray
definition: override object Avro.Specific.SpecificDefaultReader.ReadArray
type: override object
argsstring: (object reuse, ArraySchema writerSchema, Schema readerSchema, Decoder dec)
scope: Avro.Specific.SpecificDefaultReader
briefdescription: <summary> Reads an array from the given decoder </summary>
detaileddescription:
<param name="reuse">object to store data read</param>
<param name="writerSchema">schema of the object that wrote the data</param>
<param name="readerSchema">schema of the object that will store the data</param>
<param name="dec">decoder object that contains the data to be read</param>
<returns>array</returns>  


refid: a5ee0501a3a5db39ff7425e3614578ad0
name: getTargetType
definition: virtual string Avro.Specific.SpecificDefaultReader.getTargetType
type: string
argsstring: (Schema schema)
scope: Avro.Specific.SpecificDefaultReader
briefdescription: <summary> Gets the target type name in the given schema </summary>
detaileddescription:
<param name="schema">schema containing the type to be determined</param>
<param name="nullible">used for union schema</param>
<returns></returns>  


refid: afd5fb3e170e06b12f166c7d75c79255e
name: WriteFixed
definition: override void Avro.Specific.SpecificDefaultWriter.WriteFixed
type: override void
argsstring: (FixedSchema schema, object value, Encoder encoder)
scope: Avro.Specific.SpecificDefaultWriter
detaileddescription:
<param name="schema">writer schema</param>
<param name="value">fixed object to write</param>
<param name="encoder">encoder to write to</param>  

briefdescription:
<summary>
Validates that the record is a fixed record object and that the schema in the object is the
same as the given writer schema. Writes the given fixed record into the given encoder
</summary>


refid: a1122c7bf6382aacc1d03de5ab70e2245
name: WriteEnum
definition: override void Avro.Specific.SpecificDefaultWriter.WriteEnum
type: override void
argsstring: (EnumSchema schema, object value, Encoder encoder)
scope: Avro.Specific.SpecificDefaultWriter
briefdescription: <summary> Writes the given enum value into the given encoder. </summary>
detaileddescription:
<param name="schema">writer schema</param>
<param name="value">enum value</param>
<param name="encoder">encoder to write to</param>  


refid: ae98c3a2e05421c9255da49193387fc1c
name: WriteMap
definition: override void Avro.Specific.SpecificDefaultWriter.WriteMap
type: override void
argsstring: (MapSchema schema, object value, Encoder encoder)
scope: Avro.Specific.SpecificDefaultWriter
briefdescription: <summary> Writes the given map into the given encoder. </summary>
detaileddescription:
<param name="schema">writer schema</param>
<param name="value">map to write</param>
<param name="encoder">encoder to write to</param>  


refid: a2378a580786f4155628664bf95f66ceb
name: Read
definition: T Avro.Specific.SpecificReader< T >.Read
type: T
argsstring: (T reuse, Decoder dec)
scope: Avro.Specific.SpecificReader< T >
briefdescription: <summary> Generic read function </summary>
detaileddescription:
<param name="reuse">object to store data read</param>
<param name="dec">decorder to use for reading data</param>
<returns></returns>  


refid: a5f972c4ebd5af926ce1531cb7461004d
name: this[int index]
definition: Schema Avro.UnionSchema.this[int index]
type: Schema
scope: Avro.UnionSchema
briefdescription: <summary> Returns the schema at the given branch. </summary>
detaileddescription:
<param name="index">Index to the branch, starting with 0.</param>
<returns>The branch corresponding to the given index.</returns>  


refid: acc7f80fb0f78074249b1813086e51ccf
name: NewInstance
definition: static UnionSchema Avro.UnionSchema.NewInstance
type: UnionSchema
argsstring: (JArray jarr, PropertyMap props, SchemaNames names, string encspace)
scope: Avro.UnionSchema
briefdescription: <summary> Static function to return instance of the union schema </summary>
detaileddescription:
<param name="jarr">JSON object for the union schema</param>
<param name="names">list of named schemas already read</param>
<param name="encspace">enclosing namespace of the schema</param>
<returns>new UnionSchema object</returns>  


refid: a662af78cffb5fe5d5fdad41a8436e31e
name: MatchingBranch
definition: int Avro.UnionSchema.MatchingBranch
type: int
argsstring: (Schema s)
scope: Avro.UnionSchema
detaileddescription:
<param name="s">The schema to match the branches against.</param>
<returns>The index of the matching branch. If non matches a -1 is returned.</returns>  

briefdescription:
<summary>
Returns the index of a branch that can read the data written by the given schema s.
</summary>


refid: ad71507444488b9aacd15caa61db29930
name: Equals
definition: override bool Avro.UnionSchema.Equals
type: override bool
argsstring: (object obj)
scope: Avro.UnionSchema
briefdescription: <summary> Compares two union schema objects </summary>
detaileddescription:
<param name="obj">union schema object to compare against this schema</param>
<returns>true if objects are equal, false otherwise</returns>  


