netFramework/Microsoft.OData.Core.xml

<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Microsoft.OData.Core</name>
    </assembly>
    <members>
        <member name="T:Microsoft.OData.AnnotationFilter">
            <summary>
            Filter class to determine whether or not to read an annotation.
            </summary>
        </member>
        <member name="F:Microsoft.OData.AnnotationFilter.IncludeAll">
            <summary>
            Filter that maches all annotation names.
            </summary>
        </member>
        <member name="F:Microsoft.OData.AnnotationFilter.ExcludeAll">
            <summary>
            Filter than maches no annotation names.
            </summary>
        </member>
        <member name="F:Microsoft.OData.AnnotationFilter.AnnotationFilterPatternSeparator">
            <summary>
            Separator for annotation filter patterns.
            </summary>
        </member>
        <member name="F:Microsoft.OData.AnnotationFilter.prioritizedPatternsToMatch">
            <summary>
            Patterns to match, sorted in the order of higher to lower priorities to match.
            </summary>
        </member>
        <member name="M:Microsoft.OData.AnnotationFilter.#ctor(Microsoft.OData.AnnotationFilterPattern[])">
            <summary>
            Private constructor to create a filter from comma delimited patterns to match to include or exclude annotations.
            </summary>
            <param name="prioritizedPatternsToMatch">Patters to match to include or exclude annotations.</param>
        </member>
        <member name="M:Microsoft.OData.AnnotationFilter.Create(System.String)">
            <summary>
            Create a filter from comma delimited patterns to match to include or exclude annotations.
            </summary>
            <param name="filter">Comma delimited patterns to match to include or exclude annotations.</param>
            <returns>The newly created filter.</returns>
        </member>
        <member name="M:Microsoft.OData.AnnotationFilter.CreateInclueAllFilter">
            <summary>
            Create a filter that inlcude all.
            </summary>
            <returns>The include all filter.</returns>
        </member>
        <member name="M:Microsoft.OData.AnnotationFilter.Matches(System.String)">
            <summary>
            Returns true to indicate that the annotation with the name <paramref name="annotationName"/> should be read, false otherwise.
            </summary>
            <param name="annotationName">The name of the annotation in question.</param>
            <returns>Returns true to indicate that the annotation with the name <paramref name="annotationName"/> should be read, false otherwise.</returns>
        </member>
        <member name="T:Microsoft.OData.AnnotationFilter.IncludeAllFilter">
            <summary>
            Filter to read all annotations.
            </summary>
        </member>
        <member name="M:Microsoft.OData.AnnotationFilter.IncludeAllFilter.#ctor">
            <summary>
            Private default constructor.
            </summary>
        </member>
        <member name="M:Microsoft.OData.AnnotationFilter.IncludeAllFilter.Matches(System.String)">
            <summary>
            Returns true to indicate that the annotation with the name <paramref name="annotationName"/> should be read, false otherwise.
            </summary>
            <param name="annotationName">The name of the annotation in question.</param>
            <returns>Returns true to indicate that the annotation with the name <paramref name="annotationName"/> should be read, false otherwise.</returns>
        </member>
        <member name="T:Microsoft.OData.AnnotationFilter.ExcludeAllFilter">
            <summary>
            Filter to read no annotation.
            </summary>
        </member>
        <member name="M:Microsoft.OData.AnnotationFilter.ExcludeAllFilter.#ctor">
            <summary>
            Private default constructor.
            </summary>
        </member>
        <member name="M:Microsoft.OData.AnnotationFilter.ExcludeAllFilter.Matches(System.String)">
            <summary>
            Returns true to indicate that the annotation with the name <paramref name="annotationName"/> should be read, false otherwise.
            </summary>
            <param name="annotationName">The name of the annotation in question.</param>
            <returns>Returns true to indicate that the annotation with the name <paramref name="annotationName"/> should be read, false otherwise.</returns>
        </member>
        <member name="T:Microsoft.OData.AnnotationFilterPattern">
            <summary>
            Filter pattern class to determine whether an annotation name matches the pattern.
            </summary>
        </member>
        <member name="F:Microsoft.OData.AnnotationFilterPattern.IncludeAllPattern">
            <summary>
            The "*" pattern that includes all annotations.
            </summary>
        </member>
        <member name="F:Microsoft.OData.AnnotationFilterPattern.ExcludeAllPattern">
            <summary>
            The "-*" pattern that excludes all annotations.
            </summary>
        </member>
        <member name="F:Microsoft.OData.AnnotationFilterPattern.Pattern">
            <summary>
            The pattern to match.
            </summary>
        </member>
        <member name="F:Microsoft.OData.AnnotationFilterPattern.NamespaceSeparator">
            <summary>
            The '.' namespace separator.
            </summary>
        </member>
        <member name="F:Microsoft.OData.AnnotationFilterPattern.ExcludeOperator">
            <summary>
            The '-' operator to indicate that the annotation should be excluded from read when it matches the pattern.
            </summary>
        </member>
        <member name="F:Microsoft.OData.AnnotationFilterPattern.WildCard">
            <summary>
            The wild card constant.
            </summary>
        </member>
        <member name="F:Microsoft.OData.AnnotationFilterPattern.DotStar">
            <summary>
            String constant for .*
            </summary>
        </member>
        <member name="F:Microsoft.OData.AnnotationFilterPattern.isExclude">
            <summary>
            true if the annotation should be excluded from reading when its name matches this pattern; false otherwise.
            </summary>
        </member>
        <member name="M:Microsoft.OData.AnnotationFilterPattern.#ctor(System.String,System.Boolean)">
            <summary>
            Constructs a pattern instance to determine whether an annotation name matches the pattern.
            </summary>
            <param name="pattern">The pattern to match.</param>
            <param name="isExclude">true if the annotation should be excluded from reading when its name matches this pattern; false otherwise.</param>
        </member>
        <member name="P:Microsoft.OData.AnnotationFilterPattern.IsExclude">
            <summary>
            true if the annotation should be excluded from reading when its name matches this pattern; false otherwise.
            </summary>
        </member>
        <member name="M:Microsoft.OData.AnnotationFilterPattern.CompareTo(Microsoft.OData.AnnotationFilterPattern)">
            <summary>
            Compares the priority of current pattern with the priority of <paramref name="other"/>.
            </summary>
            <returns>
            A 32-bit signed integer that indicates the relative priority of the patterns being compared. The return value has the following meanings:
              -1 means this pattern has higher priority than <paramref name="other"/>.
              0 means this pattern has the same priority as <paramref name="other"/>.
              1 means this pattern has lower priority than <paramref name="other"/>.
            </returns>
            <param name="other">A pattern to compare with this pattern.</param>
        </member>
        <member name="M:Microsoft.OData.AnnotationFilterPattern.Create(System.String)">
            <summary>
            Creates a pattern instance to determine whether an annotation name matches the pattern.
            </summary>
            <param name="pattern">The pattern for this instance.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.AnnotationFilterPattern"/> instance.</returns>
        </member>
        <member name="M:Microsoft.OData.AnnotationFilterPattern.Sort(Microsoft.OData.AnnotationFilterPattern[])">
            <summary>
            Sorts the patterns in the array from highest to lowest priorities.
            </summary>
            <param name="pattersToSort">The source array to sort. When the method returns the items in this array instance will be rearragned.</param>
        </member>
        <member name="M:Microsoft.OData.AnnotationFilterPattern.Matches(System.String)">
            <summary>
            Match the given annotation name against the pattern.
            </summary>
            <param name="annotationName">Annotation name in question.</param>
            <returns>Returns true if the given annotation name matches the pattern, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.AnnotationFilterPattern.ComparePatternPriority(System.String,System.String)">
            <summary>
            Compares the priority of <paramref name="pattern1"/> with <paramref name="pattern2"/>.
            </summary>
            <param name="pattern1">The left hand side pattern to compare.</param>
            <param name="pattern2">The right hand side pattern to compare.</param>
            <returns>
            A 32-bit signed integer that indicates the relative priority of the patterns being compared. The return value has the following meanings:
              -1 means <paramref name="pattern1"/> has higher priority than <paramref name="pattern2"/>.
              0 means <paramref name="pattern1"/> has same priority as <paramref name="pattern2"/>.
              1 means <paramref name="pattern1"/> has lower priority than <paramref name="pattern2"/>.
            </returns>
        </member>
        <member name="M:Microsoft.OData.AnnotationFilterPattern.RemoveExcludeOperator(System.String@)">
            <summary>
            Removes the exclude operator from the given pattern string.
            </summary>
            <param name="pattern">The input pattern to the method and will return the pattern without the exclude operator if it's found.</param>
            <returns>Returns true if the exclude operator is found and removed from the input pattern; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.AnnotationFilterPattern.ValidatePattern(System.String)">
            <summary>
            Validates the pattern.
            </summary>
            <param name="pattern">The pattern to validate.</param>
        </member>
        <member name="T:Microsoft.OData.AnnotationFilterPattern.WildCardPattern">
            <summary>
            The wild card pattern that matches everything.
            </summary>
        </member>
        <member name="M:Microsoft.OData.AnnotationFilterPattern.WildCardPattern.#ctor(System.Boolean)">
            <summary>
            Constructs the wild card pattern.
            </summary>
            <param name="isExclude">true if the annotation should be excluded from reading when its name matches this pattern; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.AnnotationFilterPattern.WildCardPattern.Matches(System.String)">
            <summary>
            Match the given annotation name against the pattern.
            </summary>
            <param name="annotationName">Annotation name in question.</param>
            <returns>Returns true if the given annotation name matches the pattern, false otherwise.</returns>
        </member>
        <member name="T:Microsoft.OData.AnnotationFilterPattern.StartsWithPattern">
            <summary>
            Pattern class to match any annotation name that starts with this pattern.
            </summary>
        </member>
        <member name="M:Microsoft.OData.AnnotationFilterPattern.StartsWithPattern.#ctor(System.String,System.Boolean)">
            <summary>
            Constructs the starts with pattern.
            </summary>
            <param name="pattern">The pattern to start with.</param>
            <param name="isExclude">true if the annotation should be excluded from reading when its name matches this pattern; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.AnnotationFilterPattern.StartsWithPattern.Matches(System.String)">
            <summary>
            Match the given annotation name against the pattern.
            </summary>
            <param name="annotationName">Annotation name in question.</param>
            <returns>Returns true if the given annotation name matches the pattern, false otherwise.</returns>
        </member>
        <member name="T:Microsoft.OData.AnnotationFilterPattern.ExactMatchPattern">
            <summary>
            Pattern class to match an annotation name that is exactly the same as this pattern.
            </summary>
        </member>
        <member name="M:Microsoft.OData.AnnotationFilterPattern.ExactMatchPattern.#ctor(System.String,System.Boolean)">
            <summary>
            Constructs the exact match pattern.
            </summary>
            <param name="pattern">The exact pattern to match</param>
            <param name="isExclude">true if the annotation should be excluded from reading when its name matches this pattern; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.AnnotationFilterPattern.ExactMatchPattern.Matches(System.String)">
            <summary>
            Match the given annotation name against the pattern.
            </summary>
            <param name="annotationName">Annotation name in question.</param>
            <returns>Returns true if the given annotation name matches the pattern, false otherwise.</returns>
        </member>
        <member name="T:Microsoft.OData.AsyncBufferedStream">
            <summary>
            Write-only stream which buffers all synchronous write operations until FlushAsync is called.
            </summary>
        </member>
        <member name="F:Microsoft.OData.AsyncBufferedStream.innerStream">
            <summary>
            The stream being wrapped.
            </summary>
        </member>
        <member name="F:Microsoft.OData.AsyncBufferedStream.bufferQueue">
            <summary>
            Queue of buffers to write.
            </summary>
        </member>
        <member name="F:Microsoft.OData.AsyncBufferedStream.bufferToAppendTo">
            <summary>
            The last buffer in the bufferQueue. This is the buffer we're writing into.
            </summary>
        </member>
        <member name="M:Microsoft.OData.AsyncBufferedStream.#ctor(System.IO.Stream)">
            <summary>
            Constructor
            </summary>
            <param name="stream">The underlying async stream to wrap. Note that only asynchronous write operation will be invoked on this stream.</param>
        </member>
        <member name="P:Microsoft.OData.AsyncBufferedStream.CanRead">
            <summary>
            Determines if the stream can read - this one cannot
            </summary>
        </member>
        <member name="P:Microsoft.OData.AsyncBufferedStream.CanSeek">
            <summary>
            Determines if the stream can seek - this one cannot
            </summary>
        </member>
        <member name="P:Microsoft.OData.AsyncBufferedStream.CanWrite">
            <summary>
            Determines if the stream can write - this one can
            </summary>
        </member>
        <member name="P:Microsoft.OData.AsyncBufferedStream.Length">
            <summary>
            Returns the length of the stream, which this implementation doesn't support.
            </summary>
        </member>
        <member name="P:Microsoft.OData.AsyncBufferedStream.Position">
            <summary>
            Gets or sets the position in the stream, this stream doesn't support seeking, so position is also unsupported.
            </summary>
        </member>
        <member name="M:Microsoft.OData.AsyncBufferedStream.Flush">
            <summary>
            Flush the stream to the underlying storage.
            </summary>
        </member>
        <member name="M:Microsoft.OData.AsyncBufferedStream.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads data from the stream. This operation is not supported by this stream.
            </summary>
            <param name="buffer">The buffer to read the data to.</param>
            <param name="offset">The offset in the buffer to write to.</param>
            <param name="count">The number of bytes to read.</param>
            <returns>The number of bytes actually read.</returns>
        </member>
        <member name="M:Microsoft.OData.AsyncBufferedStream.Seek(System.Int64,System.IO.SeekOrigin)">
            <summary>
            Seeks the stream. This operation is not supported by this stream.
            </summary>
            <param name="offset">The offset to seek to.</param>
            <param name="origin">The origin of the seek operation.</param>
            <returns>The new position in the stream.</returns>
        </member>
        <member name="M:Microsoft.OData.AsyncBufferedStream.SetLength(System.Int64)">
            <summary>
            Sets the length of the stream. This operation is not supported by this stream.
            </summary>
            <param name="value">The length in bytes to set.</param>
        </member>
        <member name="M:Microsoft.OData.AsyncBufferedStream.Write(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Writes to the stream.
            </summary>
            <param name="buffer">The buffer to get data from.</param>
            <param name="offset">The offset in the buffer to start from.</param>
            <param name="count">The number of bytes to write.</param>
        </member>
        <member name="M:Microsoft.OData.AsyncBufferedStream.Clear">
            <summary>
            Clears any internal buffers without writing them to the underlying stream.
            </summary>
        </member>
        <member name="M:Microsoft.OData.AsyncBufferedStream.FlushSync">
            <summary>
            Synchronous flush operation. This will flush all buffered bytes to the underlying stream through synchronous writes.
            </summary>
        </member>
        <member name="M:Microsoft.OData.AsyncBufferedStream.FlushAsync">
            <summary>
            Asynchronous flush operation. This will flush all buffered bytes to the underlying stream through asynchronous writes.
            </summary>
            <returns>The task representing the asynchronous flush operation.</returns>
        </member>
        <member name="M:Microsoft.OData.AsyncBufferedStream.FlushAsyncInternal">
            <summary>
            Asynchronous flush operation. This will flush all buffered bytes to the underlying stream through asynchronous writes.
            </summary>
            <returns>The task representing the asynchronous flush operation.</returns>
        </member>
        <member name="M:Microsoft.OData.AsyncBufferedStream.Dispose(System.Boolean)">
            <summary>
            Disposes the object.
            </summary>
            <param name="disposing">True if called from Dispose; false if called from the finalizer.</param>
        </member>
        <member name="M:Microsoft.OData.AsyncBufferedStream.QueueNewBuffer">
            <summary>
            Queues a new buffer to the queue of buffers
            </summary>
        </member>
        <member name="M:Microsoft.OData.AsyncBufferedStream.PrepareFlushBuffers">
            <summary>
            Prepares all buffers for flushing and returns the queue of buffers to flush.
            </summary>
            <returns>The queue of buffer to flush.</returns>
        </member>
        <member name="M:Microsoft.OData.AsyncBufferedStream.FlushBuffersAsync(System.Collections.Generic.Queue{Microsoft.OData.AsyncBufferedStream.DataBuffer})">
            <summary>
            Returns enumeration of tasks to run to flush all pending buffers to the underlying stream.
            </summary>
            <param name="buffers">The queue of buffers that need to be flushed.</param>
            <returns>Enumeration of tasks to run to flush all buffers.</returns>
            <remarks>This method relies on lazy eval of the enumerator, never enumerate through it synchronously.</remarks>
        </member>
        <member name="T:Microsoft.OData.AsyncBufferedStream.DataBuffer">
            <summary>
            Class to wrap a byte buffer used to store portion of the buffered data.
            </summary>
        </member>
        <member name="F:Microsoft.OData.AsyncBufferedStream.DataBuffer.BufferSize">
            <summary>
            The size of a buffer to allocate (80 KB is the limit for large object heap, so use 79 to be sure to avoid LOB)
            </summary>
        </member>
        <member name="F:Microsoft.OData.AsyncBufferedStream.DataBuffer.buffer">
            <summary>
            The byte buffer used to store the data.
            </summary>
        </member>
        <member name="F:Microsoft.OData.AsyncBufferedStream.DataBuffer.storedCount">
            <summary>
            Number of bytes being stored.
            </summary>
        </member>
        <member name="M:Microsoft.OData.AsyncBufferedStream.DataBuffer.#ctor">
            <summary>
            Constructor - creates a new buffer
            </summary>
        </member>
        <member name="M:Microsoft.OData.AsyncBufferedStream.DataBuffer.Write(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Writes data into the buffer.
            </summary>
            <param name="data">The buffer containing the data to write.</param>
            <param name="index">The index to start at.</param>
            <param name="count">Number of bytes to write.</param>
            <returns>How many bytes were written.</returns>
        </member>
        <member name="M:Microsoft.OData.AsyncBufferedStream.DataBuffer.WriteToStream(System.IO.Stream)">
            <summary>
            Writes the buffer to the specified stream.
            </summary>
            <param name="stream">The stream to write the data into.</param>
        </member>
        <member name="M:Microsoft.OData.AsyncBufferedStream.DataBuffer.WriteToStreamAsync(System.IO.Stream)">
            <summary>
            Creates a task which writes the buffer to the specified stream.
            </summary>
            <param name="stream">The stream to write the data into.</param>
            <returns>The task which represent the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.BindingPathHelper.MatchBindingPath(Microsoft.OData.Edm.IEdmPathExpression,System.Collections.Generic.List{Microsoft.OData.UriParser.ODataPathSegment})">
            <summary>
            Determine if the path of current navigation property is matching the binding path.
            The function used in FindNavigationTarget to resolve the navigation target for multi binding.
            </summary>
            <param name="bindingPath">The binding path.</param>
            <param name="parsedSegments">The list of segments in Uri path.</param>
            <returns>True if the path of navigation property in current scope is matching the <paramref name="bindingPath"/>.</returns>
        </member>
        <member name="T:Microsoft.OData.BufferedReadStream">
            <summary>
            Class which takes an input stream, buffers the entire content asynchronously and exposes it as a stream
            which can be read synchronously.
            </summary>
        </member>
        <member name="F:Microsoft.OData.BufferedReadStream.buffers">
            <summary>
            List of buffers which store the data.
            </summary>
        </member>
        <member name="F:Microsoft.OData.BufferedReadStream.inputStream">
            <summary>
            The input stream to read from. This is used only during the buffering and is set to null once we've buffered everything.
            </summary>
        </member>
        <member name="F:Microsoft.OData.BufferedReadStream.currentBufferIndex">
            <summary>
            Points to the buffer currently being processed.
            When writing into the buffers this points to the last buffer to which the bytes should be written.
            When reading from the buffers this points to the buffer from which we are currently reading.
            </summary>
        </member>
        <member name="F:Microsoft.OData.BufferedReadStream.currentBufferReadCount">
            <summary>
            Number of bytes read from the current buffer.
            </summary>
        </member>
        <member name="M:Microsoft.OData.BufferedReadStream.#ctor(System.IO.Stream)">
            <summary>
            Private constructor.
            </summary>
            <param name="inputStream">The stream to read from.</param>
        </member>
        <member name="P:Microsoft.OData.BufferedReadStream.CanRead">
            <summary>
            Determines if the stream can read - this one can
            </summary>
        </member>
        <member name="P:Microsoft.OData.BufferedReadStream.CanSeek">
            <summary>
            Determines if the stream can seek - this one cannot
            </summary>
        </member>
        <member name="P:Microsoft.OData.BufferedReadStream.CanWrite">
            <summary>
            Determines if the stream can write - this one cannot
            </summary>
        </member>
        <member name="P:Microsoft.OData.BufferedReadStream.Length">
            <summary>
            Returns the length of the stream, which this implementation doesn't support.
            </summary>
        </member>
        <member name="P:Microsoft.OData.BufferedReadStream.Position">
            <summary>
            Gets or sets the position in the stream, this stream doesn't support seeking, so position is also unsupported.
            </summary>
        </member>
        <member name="M:Microsoft.OData.BufferedReadStream.Flush">
            <summary>
            Flush the stream to the underlying storage. This operation is not supported by this stream.
            </summary>
        </member>
        <member name="M:Microsoft.OData.BufferedReadStream.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads data from the stream.
            </summary>
            <param name="buffer">The buffer to read the data to.</param>
            <param name="offset">The offset in the buffer to write to.</param>
            <param name="count">The number of bytes to read.</param>
            <returns>The number of bytes actually read.</returns>
        </member>
        <member name="M:Microsoft.OData.BufferedReadStream.Seek(System.Int64,System.IO.SeekOrigin)">
            <summary>
            Seeks the stream. This operation is not supported by this stream.
            </summary>
            <param name="offset">The offset to seek to.</param>
            <param name="origin">The origin of the seek operation.</param>
            <returns>The new position in the stream.</returns>
        </member>
        <member name="M:Microsoft.OData.BufferedReadStream.SetLength(System.Int64)">
            <summary>
            Sets the length of the stream. This operation is not supported by this stream.
            </summary>
            <param name="value">The length in bytes to set.</param>
        </member>
        <member name="M:Microsoft.OData.BufferedReadStream.Write(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Writes to the stream. This operation is not supported by this stream.
            </summary>
            <param name="buffer">The buffer to get data from.</param>
            <param name="offset">The offset in the buffer to start from.</param>
            <param name="count">The number of bytes to write.</param>
        </member>
        <member name="M:Microsoft.OData.BufferedReadStream.BufferStreamAsync(System.IO.Stream)">
            <summary>
            Given the <paramref name="inputStream"/> this method returns a task which will asynchronously
            read the entire content of that stream and return a new synchronous stream from which the data can be read.
            </summary>
            <param name="inputStream">The input stream to asynchronously buffer.</param>
            <returns>A task which returns the buffered stream.</returns>
        </member>
        <member name="M:Microsoft.OData.BufferedReadStream.ResetForReading">
            <summary>
            Resets the stream to the begining and prepares it for reading.
            </summary>
        </member>
        <member name="M:Microsoft.OData.BufferedReadStream.BufferInputStream">
            <summary>
            Returns enumeration of tasks to run to buffer the entire input stream.
            </summary>
            <returns>Enumeration of tasks to run to buffer the input stream.</returns>
            <remarks>This method relies on lazy eval of the enumerator, never enumerate through it synchronously.</remarks>
        </member>
        <member name="M:Microsoft.OData.BufferedReadStream.AddNewBuffer">
            <summary>
            Adds a new buffer to the list and makes it the current buffer.
            </summary>
            <returns>The newly added buffer.</returns>
        </member>
        <member name="T:Microsoft.OData.BufferedReadStream.DataBuffer">
            <summary>
            Class to wrap a byte buffer used to store portion of the buffered data.
            </summary>
        </member>
        <member name="F:Microsoft.OData.BufferedReadStream.DataBuffer.MinReadBufferSize">
            <summary>
            The minimum size to ask for when reading from underlying stream.
            </summary>
        </member>
        <member name="F:Microsoft.OData.BufferedReadStream.DataBuffer.BufferSize">
            <summary>
            The size of a buffer to allocate - use 64KB to be aligned which makes it likely that the underlying levels
            will be able to process the request in one go.
            </summary>
        </member>
        <member name="F:Microsoft.OData.BufferedReadStream.DataBuffer.buffer">
            <summary>
            The byte buffer which stored the data.
            </summary>
        </member>
        <member name="M:Microsoft.OData.BufferedReadStream.DataBuffer.#ctor">
            <summary>
            Constructor - creates a new buffer;
            </summary>
        </member>
        <member name="P:Microsoft.OData.BufferedReadStream.DataBuffer.Buffer">
            <summary>
            The byte buffer.
            </summary>
        </member>
        <member name="P:Microsoft.OData.BufferedReadStream.DataBuffer.OffsetToWriteTo">
            <summary>
            The offset into the buffer to which more data can be written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.BufferedReadStream.DataBuffer.StoredCount">
            <summary>
            The number of bytes stored in the buffer.
            </summary>
        </member>
        <member name="P:Microsoft.OData.BufferedReadStream.DataBuffer.FreeBytes">
            <summary>
            The number of bytes not yet used in the buffer.
            </summary>
        </member>
        <member name="M:Microsoft.OData.BufferedReadStream.DataBuffer.MarkBytesAsWritten(System.Int32)">
            <summary>
            Marks specified count of bytes as written starting at the OffsetToWriteTo.
            </summary>
            <param name="count">The number of bytes to mark as written.</param>
        </member>
        <member name="T:Microsoft.OData.BufferingReadStream">
            <summary>
            Read-only stream which initially buffers all read data in order to replay it later.
            Once no more buffered data exists it reads from the underlying stream directly.
            </summary>
        </member>
        <member name="F:Microsoft.OData.BufferingReadStream.buffers">
            <summary>The list of buffered chunks of bytes as requested by callers.</summary>
        </member>
        <member name="F:Microsoft.OData.BufferingReadStream.innerStream">
            <summary>
            The stream being wrapped.sdfasdf
            </summary>
        </member>
        <member name="F:Microsoft.OData.BufferingReadStream.positionInCurrentBuffer">
            <summary>The read position in the current buffer.</summary>
        </member>
        <member name="F:Microsoft.OData.BufferingReadStream.bufferingModeDisabled">
            <summary>
            true if the reader is not in buffering mode; otherwise false.
            </summary>
        </member>
        <member name="F:Microsoft.OData.BufferingReadStream.currentReadNode">
            <summary>
            The current node in the buffer list to read from.
            </summary>
        </member>
        <member name="M:Microsoft.OData.BufferingReadStream.#ctor(System.IO.Stream)">
            <summary>
            Constructor
            </summary>
            <param name="stream">The underlying stream to wrap. Note that only read operations will be invoked on this stream.</param>
        </member>
        <member name="P:Microsoft.OData.BufferingReadStream.CanRead">
            <summary>
            Determines if the stream can read - this one can.
            </summary>
        </member>
        <member name="P:Microsoft.OData.BufferingReadStream.CanSeek">
            <summary>
            Determines if the stream can seek - this one cannot
            </summary>
        </member>
        <member name="P:Microsoft.OData.BufferingReadStream.CanWrite">
            <summary>
            Determines if the stream can write - this one cannot
            </summary>
        </member>
        <member name="P:Microsoft.OData.BufferingReadStream.Length">
            <summary>
            Returns the length of the stream, which this implementation doesn't support.
            </summary>
        </member>
        <member name="P:Microsoft.OData.BufferingReadStream.Position">
            <summary>
            Gets or sets the position in the stream, this stream doesn't support seeking, so position is also unsupported.
            </summary>
        </member>
        <member name="P:Microsoft.OData.BufferingReadStream.IsBuffering">
            <summary>
            true if the stream is in buffering mode; otherwise false.
            </summary>
        </member>
        <member name="M:Microsoft.OData.BufferingReadStream.Flush">
            <summary>
            Not supported since the stream only allows reading.
            </summary>
        </member>
        <member name="M:Microsoft.OData.BufferingReadStream.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads data from the buffer or the underlying stream.
            </summary>
            <param name="userBuffer">The buffer to read the data to.</param>
            <param name="offset">The offset in the buffer to write to.</param>
            <param name="count">The number of bytes to read.</param>
            <returns>The number of bytes actually read.</returns>
        </member>
        <member name="M:Microsoft.OData.BufferingReadStream.Seek(System.Int64,System.IO.SeekOrigin)">
            <summary>
            Seeks the stream. This operation is not supported by this stream.
            </summary>
            <param name="offset">The offset to seek to.</param>
            <param name="origin">The origin of the seek operation.</param>
            <returns>The new position in the stream.</returns>
        </member>
        <member name="M:Microsoft.OData.BufferingReadStream.SetLength(System.Int64)">
            <summary>
            Sets the length of the stream. This operation is not supported by this stream.
            </summary>
            <param name="value">The length in bytes to set.</param>
        </member>
        <member name="M:Microsoft.OData.BufferingReadStream.Write(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Writes to the stream. This operation is not supported by this stream.
            </summary>
            <param name="buffer">The buffer to get data from.</param>
            <param name="offset">The offset in the buffer to start from.</param>
            <param name="count">The number of bytes to write.</param>
        </member>
        <member name="M:Microsoft.OData.BufferingReadStream.ResetStream">
            <summary>
            Stops the buffering mode and turns the reader into normal read mode where first
            the buffered data is re-read before the reads are performed on the underlying stream.
            </summary>
        </member>
        <member name="M:Microsoft.OData.BufferingReadStream.StopBuffering">
            <summary>
            Stop buffering.
            </summary>
        </member>
        <member name="M:Microsoft.OData.BufferingReadStream.Dispose(System.Boolean)">
            <summary>
            Disposes the object.
            </summary>
            <param name="disposing">True if called from Dispose; false if called from the finalizer.</param>
        </member>
        <member name="M:Microsoft.OData.BufferingReadStream.MoveToNextBuffer">
            <summary>
            Moves the reader to the next buffer and drops already consumed
            data if not in buffering mode.
            </summary>
        </member>
        <member name="T:Microsoft.OData.Buffers.BufferUtils">
            <summary>
            Helpers to deal with buffers
            </summary>
        </member>
        <member name="F:Microsoft.OData.Buffers.BufferUtils.BufferLength">
            <summary>
            Buffer length
            </summary>
        </member>
        <member name="M:Microsoft.OData.Buffers.BufferUtils.InitializeBufferIfRequired(System.Char[])">
            <summary>
            Checks if the buffer is not initialized and if initialized returns the same buffer or creates a new one.
            </summary>
            <param name="buffer">The buffer to verify</param>
            <returns>The initialized buffer</returns>
        </member>
        <member name="T:Microsoft.OData.CollectionWithoutExpectedTypeValidator">
            <summary>
            Helper class to verify that all items of a collection are of the same kind and type.
            </summary>
            <remarks>This class is only used if no expected item type is specified for the collection;
            otherwise all items are already validated against the expected item type.</remarks>
        </member>
        <member name="F:Microsoft.OData.CollectionWithoutExpectedTypeValidator.itemTypeDerivedFromCollectionValue">
            <summary>true if the item type was derived from the collection value; otherwise false.</summary>
        </member>
        <member name="F:Microsoft.OData.CollectionWithoutExpectedTypeValidator.itemTypeName">
            <summary>The item type name extracted from the first non-null item.</summary>
        </member>
        <member name="F:Microsoft.OData.CollectionWithoutExpectedTypeValidator.primitiveItemType">
            <summary>
            The primitive type denoted by the item type name or null if the type name is not a valid primitive type name.
            </summary>
        </member>
        <member name="F:Microsoft.OData.CollectionWithoutExpectedTypeValidator.itemTypeKind">
            <summary>The item type kind from the first non-null item.</summary>
        </member>
        <member name="M:Microsoft.OData.CollectionWithoutExpectedTypeValidator.#ctor(System.String)">
            <summary>
            Constructor.
            </summary>
            <param name="itemTypeNameFromCollection">The item type name extracted from the collection type name.</param>
        </member>
        <member name="P:Microsoft.OData.CollectionWithoutExpectedTypeValidator.ItemTypeNameFromCollection">
            <summary>
            If specified on a collection, returns the item type name that all items are expected to be compatible with; otherwise null.
            </summary>
        </member>
        <member name="P:Microsoft.OData.CollectionWithoutExpectedTypeValidator.ItemTypeKindFromCollection">
            <summary>
            If specified on a collection, returns the item type kind that all items are expected to be compatible with; otherwise EdmTypeKind.None.
            </summary>
        </member>
        <member name="M:Microsoft.OData.CollectionWithoutExpectedTypeValidator.ValidateCollectionItem(System.String,Microsoft.OData.Edm.EdmTypeKind)">
            <summary>
            Validates a collection item that was read to make sure it is valid (i.e., has the correct
            type name and type kind) with respect to the other items in the collection.
            </summary>
            <param name="collectionItemTypeName">The type name of the item from the payload.</param>
            <param name="collectionItemTypeKind">The type kind of the item from the payload.</param>
        </member>
        <member name="M:Microsoft.OData.CollectionWithoutExpectedTypeValidator.ComputeExpectedTypeKind(System.String,Microsoft.OData.Edm.IEdmPrimitiveType@)">
            <summary>
            Computes the expected type kind of an item from the type name read from the payload.
            </summary>
            <param name="typeName">The type name to compute the type kind from.</param>
            <param name="primitiveItemType">The primitive type for the specified type name or null if the type name is not a valid primitve type.</param>
            <returns>The <see cref="T:Microsoft.OData.Edm.EdmTypeKind"/> of the type with the specified <paramref name="typeName"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.CollectionWithoutExpectedTypeValidator.GetItemTypeFullName(System.String)">
            <summary>
            Get the item type full name if it's the primitive type
            </summary>
            <param name="typeName">the original type name</param>
            <returns>the item type full name if it's the primitive type</returns>
        </member>
        <member name="M:Microsoft.OData.CollectionWithoutExpectedTypeValidator.ValidateCollectionItemTypeNameAndKind(System.String,Microsoft.OData.Edm.EdmTypeKind)">
            <summary>
            Validate that the expected and actual type names and type kinds are compatible.
            </summary>
            <param name="collectionItemTypeName">The actual type name.</param>
            <param name="collectionItemTypeKind">The actual type kind.</param>
        </member>
        <member name="T:Microsoft.OData.ContainerBuilderExtensions">
            <summary>
            Extension methods for <see cref="T:Microsoft.OData.IContainerBuilder"/>.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ContainerBuilderExtensions.AddService``2(Microsoft.OData.IContainerBuilder,Microsoft.OData.ServiceLifetime)">
            <summary>
            Adds a service of <typeparamref name="TService"/> with an <typeparamref name="TImplementation"/>.
            </summary>
            <typeparam name="TService">The type of the service to add.</typeparam>
            <typeparam name="TImplementation">The type of the implementation to use.</typeparam>
            <param name="builder">The <see cref="T:Microsoft.OData.IContainerBuilder"/> to add the service to.</param>
            <param name="lifetime">The lifetime of the service to register.</param>
            <returns>The <see cref="T:Microsoft.OData.IContainerBuilder"/> instance itself.</returns>
        </member>
        <member name="M:Microsoft.OData.ContainerBuilderExtensions.AddService(Microsoft.OData.IContainerBuilder,Microsoft.OData.ServiceLifetime,System.Type)">
            <summary>
            Adds a service of <paramref name="serviceType"/>.
            </summary>
            <param name="builder">The <see cref="T:Microsoft.OData.IContainerBuilder"/> to add the service to.</param>
            <param name="lifetime">The lifetime of the service to register.</param>
            <param name="serviceType">The type of the service to register and the implementation to use.</param>
            <returns>The <see cref="T:Microsoft.OData.IContainerBuilder"/> instance itself.</returns>
        </member>
        <member name="M:Microsoft.OData.ContainerBuilderExtensions.AddService``1(Microsoft.OData.IContainerBuilder,Microsoft.OData.ServiceLifetime)">
            <summary>
            Adds a service of <typeparamref name="TService"/>.
            </summary>
            <typeparam name="TService">The type of the service to add.</typeparam>
            <param name="builder">The <see cref="T:Microsoft.OData.IContainerBuilder"/> to add the service to.</param>
            <param name="lifetime">The lifetime of the service to register.</param>
            <returns>The <see cref="T:Microsoft.OData.IContainerBuilder"/> instance itself.</returns>
        </member>
        <member name="M:Microsoft.OData.ContainerBuilderExtensions.AddService``1(Microsoft.OData.IContainerBuilder,Microsoft.OData.ServiceLifetime,System.Func{System.IServiceProvider,``0})">
            <summary>
            Adds a service of <typeparamref name="TService"/> with an <paramref name="implementationFactory"/>.
            </summary>
            <typeparam name="TService">The type of the service to add.</typeparam>
            <param name="builder">The <see cref="T:Microsoft.OData.IContainerBuilder"/> to add the service to.</param>
            <param name="lifetime">The lifetime of the service to register.</param>
            <param name="implementationFactory">The factory that creates the service.</param>
            <returns>The <see cref="T:Microsoft.OData.IContainerBuilder"/> instance itself.</returns>
        </member>
        <member name="M:Microsoft.OData.ContainerBuilderExtensions.AddServicePrototype``1(Microsoft.OData.IContainerBuilder,``0)">
            <summary>
            Adds a service prototype of type <typeparamref name="TService"/>.
            </summary>
            <typeparam name="TService">The type of the service prototype to add.</typeparam>
            <param name="builder">The <see cref="T:Microsoft.OData.IContainerBuilder"/> to add the service to.</param>
            <param name="instance">The service prototype to add.</param>
            <returns>The <see cref="T:Microsoft.OData.IContainerBuilder"/> instance itself.</returns>
        </member>
        <member name="M:Microsoft.OData.ContainerBuilderExtensions.AddDefaultODataServices(Microsoft.OData.IContainerBuilder)">
            <summary>
            Adds the default OData services to the <see cref="T:Microsoft.OData.IContainerBuilder"/>.
            </summary>
            <param name="builder">The <see cref="T:Microsoft.OData.IContainerBuilder"/> to add the services to.</param>
            <returns>The <see cref="T:Microsoft.OData.IContainerBuilder"/> instance itself.</returns>
        </member>
        <member name="T:Microsoft.OData.DuplicatePropertyNameChecker">
            <summary>
            Validates that
              1) No duplicate property.
              2) No duplicate "@odata.associationLink" on a property.
              3) "@odata.associationLink"s are put on navigation properties.
            </summary>
        </member>
        <member name="F:Microsoft.OData.DuplicatePropertyNameChecker.propertyState">
            <summary>
            Caches property processing state.
            </summary>
        </member>
        <member name="T:Microsoft.OData.DuplicatePropertyNameChecker.State">
            <summary>
            Property processing state.
            </summary>
        </member>
        <member name="F:Microsoft.OData.DuplicatePropertyNameChecker.State.NonNestedResource">
            <summary>
            `ValidatePropertyUniqueness(ODataProperty)` has been called.
            </summary>
        </member>
        <member name="F:Microsoft.OData.DuplicatePropertyNameChecker.State.NestedResource">
            <summary>
            `ValidatePropertyUniqueness(ODataNestedResourceInfo)` has been called.
            </summary>
        </member>
        <member name="F:Microsoft.OData.DuplicatePropertyNameChecker.State.AssociationLink">
            <summary>
            `ValidatePropertyOpenForAssociationLink` has been called.
            </summary>
        </member>
        <member name="M:Microsoft.OData.DuplicatePropertyNameChecker.ValidatePropertyUniqueness(Microsoft.OData.ODataProperty)">
            <summary>
            Validates property uniqueness.
            </summary>
            <param name="property">The property.</param>
        </member>
        <member name="M:Microsoft.OData.DuplicatePropertyNameChecker.ValidatePropertyUniqueness(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            Validates property uniqueness.
            </summary>
            <param name="property">The property.</param>
        </member>
        <member name="M:Microsoft.OData.DuplicatePropertyNameChecker.ValidatePropertyOpenForAssociationLink(System.String)">
            <summary>
            Validates that "@odata.associationLink" is put on a navigation property,
            and that no duplicate exists.
            </summary>
            <param name="propertyName">Name of the property.</param>
        </member>
        <member name="M:Microsoft.OData.DuplicatePropertyNameChecker.Reset">
            <summary>
            Resets to initial state for reuse.
            </summary>
        </member>
        <member name="T:Microsoft.OData.NullDuplicatePropertyNameChecker">
            <summary>
            Mock version of `DuplicatePropertyNameChecker`, which does nothing.
            </summary>
        </member>
        <member name="M:Microsoft.OData.EdmExtensionMethods.FindNavigationTarget(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmNavigationProperty,System.Func{Microsoft.OData.Edm.IEdmPathExpression,System.Boolean})">
            <summary>
            Find the navigation target which is <paramref name="navigationProperty"/> of current <paramref name="navigationSource"/> targets.
            </summary>
            <param name="navigationSource">The navigation source to find.</param>
            <param name="navigationProperty">The navigation property</param>
            <param name="matchBindingPath">The function used to determine if the binding path matches.</param>
            <returns>The navigation target which matches the binding path.</returns>
        </member>
        <member name="M:Microsoft.OData.EdmExtensionMethods.FindNavigationTarget(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmNavigationProperty,System.Func{Microsoft.OData.Edm.IEdmPathExpression,System.Collections.Generic.List{Microsoft.OData.UriParser.ODataPathSegment},System.Boolean},System.Collections.Generic.List{Microsoft.OData.UriParser.ODataPathSegment},Microsoft.OData.Edm.IEdmPathExpression@)">
            <summary>
            Find the navigation target which is <paramref name="navigationProperty"/> of current <paramref name="navigationSource"/> targets.
            The function is specifically used in Uri parser.
            </summary>
            <param name="navigationSource">The navigation source to find.</param>
            <param name="navigationProperty">The navigation property</param>
            <param name="matchBindingPath">The function used to determine if the binding path matches.</param>
            <param name="parsedSegments">The parsed segments in path, which is used to match binding path.</param>
            <param name="bindingPath">The output binding path of the navigation property which matches the <paramref name="parsedSegments"/></param>
            <returns>The navigation target which matches the binding path.</returns>
        </member>
        <member name="M:Microsoft.OData.EdmExtensionMethods.HasKey(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Decide whether <paramref name="currentNavigationSource"/> with type <paramref name="currentResourceType"/> should have key.
            </summary>
            <param name="currentNavigationSource">The navigation source to be evaluated.</param>
            <param name="currentResourceType">The resource type to be evaluated.</param>
            <returns>True if the navigation source should have key.</returns>
        </member>
        <member name="T:Microsoft.OData.ErrorUtils">
            <summary>
            Utility methods serializing the xml error payload
            </summary>
        </member>
        <member name="F:Microsoft.OData.ErrorUtils.ODataErrorMessageDefaultLanguage">
            <summary>Default language for error messages if not specified.</summary>
            <remarks>
            This constant is included here since this file is compiled into WCF DS Server as well
            so we can't compile in the ODataConstants.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ErrorUtils.GetErrorDetails(Microsoft.OData.ODataError,System.String@,System.String@)">
            <summary>
            Extracts error details from an <see cref="T:Microsoft.OData.ODataError"/>.
            </summary>
            <param name="error">The ODataError instance to extract the error details from.</param>
            <param name="code">A data service-defined string which serves as a substatus to the HTTP response code.</param>
            <param name="message">A human readable message describing the error.</param>
        </member>
        <member name="M:Microsoft.OData.ErrorUtils.WriteXmlError(System.Xml.XmlWriter,Microsoft.OData.ODataError,System.Boolean,System.Int32)">
            <summary>
            Write an error message.
            </summary>
            <param name="writer">The Xml writer to write to.</param>
            <param name="error">The error instance to write.</param>
            <param name="includeDebugInformation">A flag indicating whether error details should be written (in debug mode only) or not.</param>
            <param name="maxInnerErrorDepth">The maximumum number of nested inner errors to allow.</param>
        </member>
        <member name="M:Microsoft.OData.ErrorUtils.WriteXmlError(System.Xml.XmlWriter,System.String,System.String,Microsoft.OData.ODataInnerError,System.Int32)">
            <summary>
            Write an error message.
            </summary>
            <param name="writer">The Xml writer to write to.</param>
            <param name="code">The code of the error.</param>
            <param name="message">The message of the error.</param>
            <param name="innerError">Inner error details that will be included in debug mode (if present).</param>
            <param name="maxInnerErrorDepth">The maximumum number of nested inner errors to allow.</param>
        </member>
        <member name="M:Microsoft.OData.ErrorUtils.WriteXmlInnerError(System.Xml.XmlWriter,Microsoft.OData.ODataInnerError,System.String,System.Int32,System.Int32)">
            <summary>
            Writes the inner exception information in debug mode.
            </summary>
            <param name="writer">The Xml writer to write to.</param>
            <param name="innerError">The inner error to write.</param>
            <param name="innerErrorElementName">The local name of the element representing the inner error.</param>
            <param name="recursionDepth">The number of times this method has been called recursively.</param>
            <param name="maxInnerErrorDepth">The maximumum number of nested inner errors to allow.</param>
        </member>
        <member name="T:Microsoft.OData.Evaluation.EdmValueUtils">
            <summary>
            Class with utility methods to deal with EDM values
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.EdmValueUtils.ConvertPrimitiveValue(System.Object,Microsoft.OData.Edm.IEdmPrimitiveTypeReference)">
            <summary>
            Converts a primitive OData value to the corresponding <see cref="T:Microsoft.OData.Edm.Vocabularies.IEdmDelayedValue"/>.
            </summary>
            <param name="primitiveValue">The primitive OData value to convert.</param>
            <param name="type">The <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/> for the primitive value (if available).</param>
            <returns>An <see cref="T:Microsoft.OData.Edm.Vocabularies.IEdmDelayedValue"/> for the <paramref name="primitiveValue"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.EdmValueUtils.ToClrValue(Microsoft.OData.Edm.Vocabularies.IEdmPrimitiveValue)">
            <summary>
            Gets the clr value of the edm value based on its type.
            </summary>
            <param name="edmValue">The edm value.</param>
            <returns>The clr value</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.EdmValueUtils.TryGetStreamProperty(Microsoft.OData.Edm.Vocabularies.IEdmStructuredValue,System.String,Microsoft.OData.Edm.IEdmProperty@)">
            <summary>
            Tries to get a stream property of the specified name.
            </summary>
            <param name="entityInstance">The instance of the entity to get the stream property for.</param>
            <param name="streamPropertyName">The stream property name to find.</param>
            <param name="streamProperty">The stream property found.</param>
            <returns>true if the stream property was found or if the stream property name was null (default stream).
            false if the stream property doesn't exist.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.EdmValueUtils.GetPrimitivePropertyClrValue(Microsoft.OData.Edm.Vocabularies.IEdmStructuredValue,System.String)">
            <summary>
            Gets the the CLR value for a primitive property.
            </summary>
            <param name="structuredValue">The structured value.</param>
            <param name="propertyName">Name of the property.</param>
            <returns>The clr value of the property.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.EdmValueUtils.ConvertFloatingValue(Microsoft.OData.Edm.Vocabularies.IEdmFloatingValue,Microsoft.OData.Edm.EdmPrimitiveTypeKind)">
            <summary>
            Converts a floating-point edm value to a clr value
            </summary>
            <param name="floatingValue">The edm floating-point value.</param>
            <param name="primitiveKind">Kind of the primitive.</param>
            <returns>The converted value</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.EdmValueUtils.ConvertIntegerValue(Microsoft.OData.Edm.Vocabularies.IEdmIntegerValue,Microsoft.OData.Edm.EdmPrimitiveTypeKind)">
            <summary>
            Converts an integer edm value to a clr value.
            </summary>
            <param name="integerValue">The integer value.</param>
            <param name="primitiveKind">Kind of the primitive.</param>
            <returns>The converted value</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.EdmValueUtils.ConvertPrimitiveValueWithoutTypeCode(System.Object,Microsoft.OData.Edm.IEdmPrimitiveTypeReference)">
            <summary>
            Convert a primitive value which didn't match any of the known values of the TypeCode enumeration.
            </summary>
            <param name="primitiveValue">The value to convert.</param>
            <param name="type">The expected primitive type or null.</param>
            <returns>The converted value.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.EdmValueUtils.EnsurePrimitiveType(Microsoft.OData.Edm.IEdmPrimitiveTypeReference,Microsoft.OData.Edm.EdmPrimitiveTypeKind)">
            <summary>
            Ensures a primitive type reference for a given primitive type kind.
            </summary>
            <param name="type">The possibly null type reference.</param>
            <param name="primitiveKindFromValue">The primitive type kind to ensure.</param>
            <returns>An <see cref="T:Microsoft.OData.Edm.IEdmPrimitiveTypeReference"/> instance created for the <paramref name="primitiveKindFromValue"/>
            if <paramref name="type"/> is null; if <paramref name="type"/> is not null, validates it and then returns it.</returns>
        </member>
        <member name="T:Microsoft.OData.Evaluation.IODataResourceMetadataContext">
            <summary>
            Interface used for substitutability of the metadata-centric responsibilities of a resource.
            Metadata may come from a user-provided model or from the SetSerializationInfo() method on a resource set or resource. The latter is considered the "no-model" case since only strings
            are provided, and there is no interconnectedness. The goal of this interface is to provide a way to query the metadata information available on a resource without
            needing to know where the metadata originated from.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.IODataResourceMetadataContext.Resource">
            <summary>
            The resource instance.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.IODataResourceMetadataContext.TypeContext">
            <summary>
            The context object to answer basic questions regarding the type of the resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.IODataResourceMetadataContext.ActualResourceTypeName">
            <summary>
            The actual structured type of the resource, i.e. ODataResource.TypeName.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.IODataResourceMetadataContext.KeyProperties">
            <summary>
            The key property name and value pairs of the resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.IODataResourceMetadataContext.ETagProperties">
            <summary>
            The ETag property name and value pairs of the resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.IODataResourceMetadataContext.SelectedNavigationProperties">
            <summary>
            The selected navigation properties.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.IODataResourceMetadataContext.SelectedStreamProperties">
            <summary>
            The selected stream properties.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.IODataResourceMetadataContext.SelectedBindableOperations">
            <summary>
            The selected bindable operations.
            </summary>
        </member>
        <member name="T:Microsoft.OData.Evaluation.KeySerializer">
            <summary>
            Component for serializing entity key values for building identities, edit links, etc.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.KeySerializer.DefaultInstance">
            <summary>Singleton instance of the default serializer.</summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.KeySerializer.SegmentInstance">
            <summary>Singleton instance of the segment-based serializer.</summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.KeySerializer.Create(System.Boolean)">
            <summary>
            Creates a new key serializer.
            </summary>
            <param name="enableKeyAsSegment">Whether enable key as segment.</param>
            <returns>A new key serializer.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.KeySerializer.AppendKeyExpression``1(System.Text.StringBuilder,System.Collections.Generic.ICollection{``0},System.Func{``0,System.String},System.Func{``0,System.Object})">
            <summary>
            Appends the key expression for an entity to the given <see cref="T:System.Text.StringBuilder"/>
            </summary>
            <typeparam name="TProperty">The type used to represent properties.</typeparam>
            <param name="builder">The builder to append onto.</param>
            <param name="keyProperties">The key properties.</param>
            <param name="getPropertyName">The callback to get each property's name.</param>
            <param name="getPropertyValue">The callback to get each property's value.</param>
        </member>
        <member name="M:Microsoft.OData.Evaluation.KeySerializer.GetKeyValueAsString``1(System.Func{``0,System.Object},``0,Microsoft.OData.Evaluation.LiteralFormatter)">
            <summary>
            Gets the value of the key property and serializes it to a string.
            </summary>
            <typeparam name="TProperty">The type used to represent properties.</typeparam>
            <param name="getPropertyValue">The callback to get the value for a property.</param>
            <param name="property">The key property.</param>
            <param name="literalFormatter">The literal formatter to use.</param>
            <returns>The serialized key property value.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.KeySerializer.AppendKeyWithParentheses``1(System.Text.StringBuilder,System.Collections.Generic.ICollection{``0},System.Func{``0,System.String},System.Func{``0,System.Object})">
            <summary>
            Appends the key using the parentheses-based syntax (e.g. Customers(1)) onto the given <see cref="T:System.Text.StringBuilder"/>.
            </summary>
            <param name="builder">The builder to append onto.</param>
            <typeparam name="TProperty">The type used to represent properties.</typeparam>
            <param name="keyProperties">The key properties.</param>
            <param name="getPropertyName">The callback to get each property's name.</param>
            <param name="getPropertyValue">The callback to get each property's value.</param>
        </member>
        <member name="T:Microsoft.OData.Evaluation.KeySerializer.DefaultKeySerializer">
            <summary>
            Default implementation of the key serializer which uses parentheses (e.g. Customers(1)).
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.KeySerializer.DefaultKeySerializer.AppendKeyExpression``1(System.Text.StringBuilder,System.Collections.Generic.ICollection{``0},System.Func{``0,System.String},System.Func{``0,System.Object})">
            <summary>
            Appends the key expression for an entity to the given <see cref="T:System.Text.StringBuilder"/>
            </summary>
            <param name="builder">The builder to append onto.</param>
            <typeparam name="TProperty">The type used to represent properties.</typeparam>
            <param name="keyProperties">The key properties.</param>
            <param name="getPropertyName">The callback to get each property's name.</param>
            <param name="getPropertyValue">The callback to get each property's value.</param>
        </member>
        <member name="T:Microsoft.OData.Evaluation.KeySerializer.SegmentKeySerializer">
            <summary>
            Implementation of the key serializer which uses segments (e.g. Customers/1).
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.KeySerializer.SegmentKeySerializer.#ctor">
            <summary>
            Creates a new instance of <see cref="T:Microsoft.OData.Evaluation.KeySerializer.SegmentKeySerializer"/>.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.KeySerializer.SegmentKeySerializer.AppendKeyExpression``1(System.Text.StringBuilder,System.Collections.Generic.ICollection{``0},System.Func{``0,System.String},System.Func{``0,System.Object})">
            <summary>
            Appends the key expression for an entity to the given <see cref="T:System.Text.StringBuilder"/>
            </summary>
            <param name="builder">The builder to append onto.</param>
            <typeparam name="TProperty">The type used to represent properties.</typeparam>
            <param name="keyProperties">The key properties.</param>
            <param name="getPropertyName">The callback to get each property's name.</param>
            <param name="getPropertyValue">The callback to get each property's value.</param>
        </member>
        <member name="M:Microsoft.OData.Evaluation.KeySerializer.SegmentKeySerializer.AppendKeyWithSegments``1(System.Text.StringBuilder,System.Collections.Generic.ICollection{``0},System.Func{``0,System.Object})">
            <summary>
            Appends the key for the current resource using segment-based syntax (e.g. Customers/1) onto the given <see cref="T:System.Text.StringBuilder"/>.
            </summary>
            <param name="builder">The builder to append onto.</param>
            <typeparam name="TProperty">The type used to represent properties.</typeparam>
            <param name="keyProperties">The key properties.</param>
            <param name="getPropertyValue">The callback to get each property's value.</param>
        </member>
        <member name="T:Microsoft.OData.Evaluation.LiteralFormatter">
            <summary>
            Component for formatting literals for use in URIs, ETags, and skip-tokens.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.LiteralFormatter.DefaultInstance">
            <summary>Default singleton instance for parenthetical keys, etags, or skiptokens.</summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.LiteralFormatter.DefaultInstanceWithoutEncoding">
            <summary>Default singleton instance which does not URL-encode the resulting string.</summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.LiteralFormatter.KeyAsSegmentInstance">
            <summary>Default singleton instance for keys formatted as segments.</summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.LiteralFormatter.ForConstants">
            <summary>
            Gets the literal formatter for URL constants.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.LiteralFormatter.ForConstantsWithoutEncoding">
            <summary>
            Gets the literal formatter for URL constants which does not URL-encode the string.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.LiteralFormatter.ForKeys(System.Boolean)">
            <summary>
            Gets the literal formatter for keys.
            </summary>
            <param name="keysAsSegment">if set to <c>true</c> then the key is going to be written as a segment, rather than in parentheses.</param>
            <returns>The literal formatter for keys.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.LiteralFormatter.Format(System.Object)">
            <summary>Converts the specified value to an encoded, serializable string for URI key.</summary>
            <param name="value">Non-null value to convert.</param>
            <returns>value converted to a serializable string for URI key.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.LiteralFormatter.EscapeResultForUri(System.String)">
            <summary>
            Escapes the result accoridng to URI escaping rules.
            </summary>
            <param name="result">The result to escape.</param>
            <returns>The escaped string.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.LiteralFormatter.ConvertByteArrayToKeyString(System.Byte[])">
            <summary>Converts the given byte[] into string.</summary>
            <param name="byteArray">byte[] that needs to be converted.</param>
            <returns>String containing hex values representing the byte[].</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.LiteralFormatter.FormatRawLiteral(System.Object)">
            <summary>
            Formats the literal without a type prefix, quotes, or escaping.
            </summary>
            <param name="value">The non-null value to format.</param>
            <returns>The formatted literal, without type marker or quotes.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.LiteralFormatter.FormatAndEscapeLiteral(System.Object)">
            <summary>
            Formats the literal without a type prefix or quotes, but does escape it.
            </summary>
            <param name="value">The non-null value to format.</param>
            <returns>The formatted literal, without type marker or quotes.</returns>
        </member>
        <member name="T:Microsoft.OData.Evaluation.LiteralFormatter.SharedUtils">
            <summary>
            Helper utilities that capture any deltas between ODL, the WCF DS Client, and the WCF DS Server.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.LiteralFormatter.SharedUtils.CreateExceptionForUnconvertableType(System.Object)">
            <summary>
            Creates a new exception instance to be thrown if the value is not a type that can be formatted as a literal.
            DEVNOTE: Will return a different exception depending on whether this is ODataLib, the WCF DS Server, or the WCF DS client.
            </summary>
            <param name="value">The literal value that could not be converted.</param>
            <returns>The exception that should be thrown.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.LiteralFormatter.SharedUtils.TryConvertToStandardType(System.Object,System.Object@)">
            <summary>
            Tries to convert the given value to one of the standard recognized types. Used specifically for handling XML and binary types.
            </summary>
            <param name="value">The original value.</param>
            <param name="converted">The value converted to one of the standard types.</param>
            <returns>Whether or not the value was converted.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.LiteralFormatter.SharedUtils.AppendDecimalMarkerToDouble(System.String)">
            <summary>
            Appends the decimal marker to string form of double value if necessary.
            DEVNOTE: Only used by the client and ODL, for legacy/back-compat reasons.
            </summary>
            <param name="input">Input string.</param>
            <returns>String with decimal marker optionally added.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.LiteralFormatter.SharedUtils.TryGetByteArrayFromBinary(System.Object,System.Byte[]@)">
            <summary>
            Tries to convert an instance of System.Data.Linq.Binary to a byte array.
            </summary>
            <param name="value">The original value which might be an instance of System.Data.Linq.Binary.</param>
            <param name="array">The converted byte array, if it was converted.</param>
            <returns>Whether or not the value was converted.</returns>
        </member>
        <member name="T:Microsoft.OData.Evaluation.LiteralFormatter.DefaultLiteralFormatter">
            <summary>
            Default literal formatter implementation.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.LiteralFormatter.DefaultLiteralFormatter.disableUrlEncoding">
            <summary>If true, literals will not be URL encoded.</summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.LiteralFormatter.DefaultLiteralFormatter.#ctor">
            <summary>
            Creates a new instance of <see cref="T:Microsoft.OData.Evaluation.LiteralFormatter.DefaultLiteralFormatter"/>.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.LiteralFormatter.DefaultLiteralFormatter.#ctor(System.Boolean)">
            <summary>
            Creates a new instance of <see cref="T:Microsoft.OData.Evaluation.LiteralFormatter.DefaultLiteralFormatter"/>.
            </summary>
            <param name="disableUrlEncoding">If true, literals will not be URL encoded.</param>
        </member>
        <member name="M:Microsoft.OData.Evaluation.LiteralFormatter.DefaultLiteralFormatter.Format(System.Object)">
            <summary>Converts the specified value to an encoded, serializable string for URI key.</summary>
            <param name="value">Non-null value to convert.</param>
            <returns>value converted to a serializable string for URI key.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.LiteralFormatter.DefaultLiteralFormatter.EscapeResultForUri(System.String)">
            <summary>
            Escapes the result accoridng to URI escaping rules.
            </summary>
            <param name="result">The result to escape.</param>
            <returns>The escaped string.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.LiteralFormatter.DefaultLiteralFormatter.FormatLiteralWithTypePrefix(System.Object)">
            <summary>
            Formats the literal with a type prefix and quotes (if the type requires it).
            </summary>
            <param name="value">The value to format.</param>
            <returns>The formatted literal, with type marker if needed.</returns>
        </member>
        <member name="T:Microsoft.OData.Evaluation.LiteralFormatter.KeysAsSegmentsLiteralFormatter">
            <summary>
            Literal formatter for keys which are written as URI segments.
            Very similar to the default, but it never puts the type markers or single quotes around the value.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.LiteralFormatter.KeysAsSegmentsLiteralFormatter.#ctor">
            <summary>
            Creates a new instance of <see cref="T:Microsoft.OData.Evaluation.LiteralFormatter.KeysAsSegmentsLiteralFormatter"/>.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.LiteralFormatter.KeysAsSegmentsLiteralFormatter.Format(System.Object)">
            <summary>Converts the specified value to an encoded, serializable string for URI key.</summary>
            <param name="value">Non-null value to convert.</param>
            <returns>value converted to a serializable string for URI key.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.LiteralFormatter.KeysAsSegmentsLiteralFormatter.EscapeLeadingDollarSign(System.String)">
            <summary>
            If the string starts with a '$', prepends another '$' to escape it.
            </summary>
            <param name="stringValue">The string value.</param>
            <returns>The string value with a leading '$' escaped, if one was present.</returns>
        </member>
        <member name="T:Microsoft.OData.Evaluation.NoOpResourceMetadataBuilder">
            <summary>
            Implementation of the metadata builder which only returns values which were explicitly set (never computing or modifying them).
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.NoOpResourceMetadataBuilder.resource">
            <summary>
            The resource whose payload metadata is being queried.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.NoOpResourceMetadataBuilder.#ctor(Microsoft.OData.ODataResourceBase)">
            <summary>
            Creates a new no-op metadata builder.
            </summary>
            <param name="resource">The resource whose payload metadata is being queried.</param>
        </member>
        <member name="M:Microsoft.OData.Evaluation.NoOpResourceMetadataBuilder.GetEditLink">
            <summary>
            Gets the edit link of the entity.
            </summary>
            <returns>
            The absolute URI of the edit link for the entity.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.NoOpResourceMetadataBuilder.GetReadLink">
            <summary>
            Gets the read link of the entity.
            </summary>
            <returns>
            The absolute URI of the read link for the entity.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.NoOpResourceMetadataBuilder.GetId">
            <summary>
            Gets the ID of the entity.
            </summary>
            <returns>
            The ID for the entity.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.NoOpResourceMetadataBuilder.GetETag">
            <summary>
            Gets the ETag of the entity.
            </summary>
            <returns>
            The ETag for the entity.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.NoOpResourceMetadataBuilder.GetMediaResource">
            <summary>
            Gets the default media resource of the entity.
            </summary>
            <returns>
            The the default media resource of the entity.
            Or null if the entity is not an MLE.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.NoOpResourceMetadataBuilder.GetProperties(System.Collections.Generic.IEnumerable{Microsoft.OData.ODataProperty})">
            <summary>
            Gets the entity properties.
            </summary>
            <param name="nonComputedProperties">Non-computed properties from the entity.</param>
            <returns>The the computed and non-computed entity properties.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.NoOpResourceMetadataBuilder.GetActions">
            <summary>
            Gets the list of computed and non-computed actions for the entity.
            </summary>
            <returns>The list of computed and non-computed actions for the entity.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.NoOpResourceMetadataBuilder.GetFunctions">
            <summary>
            Gets the list of computed and non-computed functions for the entity.
            </summary>
            <returns>The list of computed and non-computed functions for the entity.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.NoOpResourceMetadataBuilder.GetNavigationLinkUri(System.String,System.Uri,System.Boolean)">
            <summary>
            Gets the navigation link URI for the specified navigation property.
            </summary>
            <param name="navigationPropertyName">The name of the navigation property to get the navigation link URI for.</param>
            <param name="navigationLinkUrl">The value of the link URI as seen on the wire or provided explicitly by the user or previously returned by the metadata builder, which may be null.</param>
            <param name="hasNestedResourceInfoUrl">true if the value of the <paramref name="navigationLinkUrl"/> was seen on the wire or provided explicitly by the user or previously returned by
            the metadata builder, false otherwise. This flag allows the metadata builder to determine whether a null navigation link url is an uninitialized value or a value that was set explicitly.</param>
            <returns>
            The navigation link URI for the navigation property.
            null if its not possible to determine the navigation link for the specified navigation property.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.NoOpResourceMetadataBuilder.GetAssociationLinkUri(System.String,System.Uri,System.Boolean)">
            <summary>
            Gets the association link URI for the specified navigation property.
            </summary>
            <param name="navigationPropertyName">The name of the navigation property to get the association link URI for.</param>
            <param name="associationLinkUrl">The value of the link URI as seen on the wire or provided explicitly by the user or previously returned by the metadata builder, which may be null.</param>
            <param name="hasAssociationLinkUrl">true if the value of the <paramref name="associationLinkUrl"/> was seen on the wire or provided explicitly by the user or previously returned by
            the metadata builder, false otherwise. This flag allows the metadata builder to determine whether a null association link url is an uninitialized value or a value that was set explicitly.</param>
            <returns>
            The association link URI for the navigation property.
            null if its not possible to determine the association link for the specified navigation property.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.NoOpResourceMetadataBuilder.TryGetIdForSerialization(System.Uri@)">
            <summary>
            Get the id that need to be written into wire
            </summary>
            <param name="id">The id return to the caller</param>
            <returns>
            If writer should write odata.id property into wire
            </returns>
        </member>
        <member name="T:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder">
            <summary>
            Implementation of OData entity metadata builder based on OData protocol conventions.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.computedEditLink">
            <summary>The edit link.</summary>
            <remarks>This is lazily evaluated. It may be retrieved from the resource or computed.</remarks>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.computedReadLink">
            <summary>The read link.</summary>
            <remarks>This is lazily evaluated. It may be retrieved from the resource or computed.</remarks>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.computedETag">
            <summary>The computed ETag.</summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.etagComputed">
            <summary>true if the etag value has been computed, false otherwise.</summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.computedId">
            <summary>The computed ID of this entity instance.</summary>
            <remarks>
            This is always built from the key properties, and never comes from the resource.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.computedMediaResource">
            <summary>The computed MediaResource for MLEs.</summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.computedStreamProperties">
            <summary>The list of computed stream properties.</summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.isResourceEnd">
            <summary>
            Mark if we are at state of ResourceEnd, if it is true, GetProperties would concat computed stream properties.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.unprocessedNestedResourceInfos">
            <summary>The enumerator for unprocessed navigation links.</summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.missingOperationGenerator">
            <summary>The missing operation generator for the current resource.</summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.computedKeyProperties">
            <summary>The computed key property name and value pairs of the resource.</summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.#ctor(Microsoft.OData.Evaluation.IODataResourceMetadataContext,Microsoft.OData.Evaluation.IODataMetadataContext,Microsoft.OData.Evaluation.ODataUriBuilder)">
            <summary>
            Constructor
            </summary>
            <param name="resourceMetadataContext">The context to answer basic metadata questions about the resource.</param>
            <param name="metadataContext">The metadata context.</param>
            <param name="uriBuilder">The uri builder to use.</param>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.ComputedId">
            <summary>
            Lazy evaluated computed entity Id. This is always a computed value and never comes from the resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.MissingOperationGenerator">
            <summary>
            The missing operation generator for the current resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.ComputedKeyProperties">
            <summary>
            The computed key property name and value pairs of the resource.
            If a value is unsigned integer, it will be automatically converted to its underlying type.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.GetCanonicalUrl">
            <summary>
            Gets canonical url of current resource.
            </summary>
            <returns>The canonical url of current resource.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.GetEditUrl">
            <summary>
            Gets the edit url of current entity.
            </summary>
            <returns>The edit url of current entity.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.GetReadUrl">
            <summary>
            Gets the read url of current entity.
            </summary>
            <returns>The read url of current entity.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.GetEditLink">
            <summary>
            Gets the edit link of the entity.
            </summary>
            <returns>
            The absolute URI of the edit link for the entity.
            Or null if it is not possible to determine the edit link.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.GetReadLink">
            <summary>
            Gets the read link of the entity.
            </summary>
            <returns>
            The absolute URI of the read link for the entity.
            Or null if it is not possible to determine the read link.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.GetId">
            <summary>
            Gets the ID of the entity.
            </summary>
            <returns>
            The ID for the entity.
            Or null if it is not possible to determine the ID.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.GetETag">
            <summary>
            Gets the ETag of the entity.
            </summary>
            <returns>
            The ETag for the entity.
            Or null if it is not possible to determine the ETag.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.GetMediaResource">
            <summary>
            Gets the default media resource of the entity.
            </summary>
            <returns>
            The the default media resource of the entity.
            Or null if the entity is not an MLE.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.GetProperties(System.Collections.Generic.IEnumerable{Microsoft.OData.ODataProperty})">
            <summary>
            Gets the entity properties.
            </summary>
            <param name="nonComputedProperties">Non-computed properties from the entity.</param>
            <returns>The the computed and non-computed entity properties.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.StartResource">
            <summary>
            Mark the resource is just started to process.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.EndResource">
            <summary>
            Mark the resource has finished the processing. So GetProperties() need append ComputedStreamProperties for entity.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.GetActions">
            <summary>
            Gets the list of computed and non-computed actions for the entity.
            </summary>
            <returns>The list of computed and non-computed actions for the entity.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.GetFunctions">
            <summary>
            Gets the list of computed and non-computed functions for the entity.
            </summary>
            <returns>The list of computed and non-computed functions for the entity.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.MarkNestedResourceInfoProcessed(System.String)">
            <summary>
            Marks the given nested resource info as processed.
            </summary>
            <param name="navigationPropertyName">The nested resource info we've already processed.</param>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.GetNextUnprocessedNavigationLink">
            <summary>
            Returns the next unprocessed navigation link or null if there's no more navigation links to process.
            </summary>
            <returns>Returns the next unprocessed navigation link or null if there's no more navigation links to process.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.GetStreamEditLink(System.String)">
            <summary>
            Gets the edit link of a stream value.
            </summary>
            <param name="streamPropertyName">The name of the stream property the edit link is computed for;
            or null for the default media resource.</param>
            <returns>
            The absolute URI of the edit link for the specified stream property or the default media resource.
            Or null if it is not possible to determine the stream edit link.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.GetStreamReadLink(System.String)">
            <summary>
            Gets the read link of a stream value.
            </summary>
            <param name="streamPropertyName">The name of the stream property the read link is computed for;
            or null for the default media resource.</param>
            <returns>
            The absolute URI of the read link for the specified stream property or the default media resource.
            Or null if it is not possible to determine the stream read link.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.GetNavigationLinkUri(System.String,System.Uri,System.Boolean)">
            <summary>
            Gets the navigation link URI for the specified navigation property.
            </summary>
            <param name="navigationPropertyName">The name of the navigation property to get the navigation link URI for.</param>
            <param name="navigationLinkUrl">The value of the link URI as seen on the wire or provided explicitly by the user or previously returned by the metadata builder, which may be null.</param>
            <param name="hasNestedResourceInfoUrl">true if the value of the <paramref name="navigationLinkUrl"/> was seen on the wire or provided explicitly by the user or previously returned by
            the metadata builder, false otherwise. This flag allows the metadata builder to determine whether a null navigation link url is an uninitialized value or a value that was set explicitly.</param>
            <returns>
            The navigation link URI for the navigation property.
            null if its not possible to determine the navigation link for the specified navigation property.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.GetAssociationLinkUri(System.String,System.Uri,System.Boolean)">
            <summary>
            Gets the association link URI for the specified navigation property.
            </summary>
            <param name="navigationPropertyName">The name of the navigation property to get the association link URI for.</param>
            <param name="associationLinkUrl">The value of the link URI as seen on the wire or provided explicitly by the user or previously returned by the metadata builder, which may be null.</param>
            <param name="hasAssociationLinkUrl">true if the value of the <paramref name="associationLinkUrl"/> was seen on the wire or provided explicitly by the user or previously returned by
            the metadata builder, false otherwise. This flag allows the metadata builder to determine whether a null association link url is an uninitialized value or a value that was set explicitly.</param>
            <returns>
            The association link URI for the navigation property.
            null if its not possible to determine the association link for the specified navigation property.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.GetOperationTargetUri(System.String,System.String,System.String)">
            <summary>
            Get the operation target URI for the specified <paramref name="operationName"/>.
            </summary>
            <param name="operationName">The fully qualified name of the operation for which to get the target URI.</param>
            <param name="bindingParameterTypeName">The binding parameter type name.</param>
            <param name="parameterNames">The parameter names to include in the target, or null/empty if there is none.</param>
            <returns>
            The target URI for the operation.
            null if it is not possible to determine the target URI for the specified operation.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.GetOperationTitle(System.String)">
            <summary>
            Get the operation title for the specified <paramref name="operationName"/>.
            </summary>
            <param name="operationName">The fully qualified name of the operation for which to get the target URI.</param>
            <returns>
            The title for the operation.
            null if it is not possible to determine the title for the specified operation.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.TryGetIdForSerialization(System.Uri@)">
            <summary>
            Get the id that need to be written into wire
            </summary>
            <param name="id">The id return to the caller</param>
            <returns>
            If writer should write odata.id property into wire
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.ComputeEditLink">
            <summary>
            Computes the edit link.
            </summary>
            <returns>Uri that was computed based on the computed Id and possible type segment.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.ComputeAndCacheId">
            <summary>
            Computes and sets the field for the computed Id.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.ComputeId">
            <summary>
            Compute id for neither singleton, nor containment scenario.
            </summary>
            <returns>
            The <see cref="T:System.Uri"/> of @odata.id.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.ComputeIdForContainment">
            <summary>
            Compute id for containment scenario.
            </summary>
            <returns>
            The <see cref="T:System.Uri"/> of @odata.id.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.ComputeIdForSingleton">
            <summary>
            Compute id for singleton scenario.
            </summary>
            <returns>
            The <see cref="T:System.Uri"/> of @odata.id.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.GetComputedStreamProperties(System.Collections.Generic.IEnumerable{Microsoft.OData.ODataProperty})">
            <summary>
            Computes all projected or missing stream properties.
            </summary>
            <param name="nonComputedProperties">Non-computed properties from the entity.</param>
            <returns>The the computed stream properties for the resource.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalEntityMetadataBuilder.GetContainingEntitySetUri(System.Uri,Microsoft.OData.ODataUri)">
            <summary>
            Gets resource path from service root, and request Uri.
            </summary>
            <param name="baseUri">The service root Uri.</param>
            <param name="odataUri">The request Uri.</param>
            <returns>The resource path.</returns>
        </member>
        <member name="T:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder">
            <summary>
            Implementation of OData resource metadata builder based on OData protocol conventions.
            This metadata builder will be created for complex or for the resource which is not explicitly known as entity.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.ResourceMetadataContext">
            <summary>The context to answer basic metadata questions about the resource.</summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.UriBuilder">
            <summary>The URI builder to use.</summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.MetadataContext">
            <summary>The metadata context.</summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.ProcessedNestedResourceInfos">
            <summary>The list of nested info that have been processed. Here navigation property and complex will both be marked for convenience.</summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.unprocessedNavigationLinks">
            <summary>The enumerator for unprocessed navigation links.</summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.readUrl">
            <summary>The read url.</summary>
            <remarks>This is lazily evaluated. It may be retrieved from the resource or computed.</remarks>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.editUrl">
            <summary>The edit url.</summary>
            <remarks>This is lazily evaluated. It may be retrieved from the resource or computed.</remarks>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.canonicalUrl">
            <summary>The canonical url. </summary>
            <remarks>This is lazily evaluated. It may be retrieved from the resource or computed.</remarks>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.resource">
            <summary>
            The resource whose payload metadata is being queried.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.#ctor(Microsoft.OData.Evaluation.IODataResourceMetadataContext,Microsoft.OData.Evaluation.IODataMetadataContext,Microsoft.OData.Evaluation.ODataUriBuilder)">
            <summary>
            Constructor
            </summary>
            <param name="resourceMetadataContext">The context to answer basic metadata questions about the resource.</param>
            <param name="metadataContext">The metadata context.</param>
            <param name="uriBuilder">The uri builder to use.</param>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.ODataUri">
            <summary>
            OData uri that parsed based on the context url
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.GetEditUrl">
            <summary>
            Gets edit url of current resource.
            Computes edit url of current resource from:
            1. NonComputedEditLink
            2. CanonicalUrl
            3. Parent edit url
            </summary>
            <returns>The edit url of current resource.</returns>
            <remarks>The method is used to compute edit Url for current resource, including complex.</remarks>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.GetReadUrl">
            <summary>
            Gets read url of current resource.
            Computes read url of current resource from:
            1. NonComputedReadLink
            2. Computed edit url
            3. Parent read url
            </summary>
            <returns>The read url of current resource.</returns>
            <remarks>The method is used to compute edit url for resource, including complex.</remarks>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.GetCanonicalUrl">
            <summary>
            Gets canonical url of current resource.
            </summary>
            <returns>The canonical url of current resource.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.StartResource">
            <summary>
            Mark the resource is just started to process.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.EndResource">
            <summary>
            Mark the resource has finished the processing.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.GetEditLink">
            <summary>
            Gets the edit link of the resource.
            </summary>
            <returns>The edit link of the resource.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.GetReadLink">
            <summary>
            Gets the read link of the resource.
            </summary>
            <returns>The read link of the resource.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.GetId">
            <summary>
            Gets the id of the resource.
            Only applies entity, so return null here, and will be overridden by entity.
            </summary>
            <returns>null</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.TryGetIdForSerialization(System.Uri@)">
            <summary>
            Tries to get id which is needed to written into wire.
            Only applies to entity.
            </summary>
            <param name="id">The id returns to caller, null here and will be overridden by entity.</param>
            <returns>false</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.GetETag">
            <summary>
            Gets the etag for current resource.
            </summary>
            <returns>The etag for current resource.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.GetProperties(System.Collections.Generic.IEnumerable{Microsoft.OData.ODataProperty})">
            <summary>
            Gets the entity properties.
            </summary>
            <param name="nonComputedProperties">Non-computed properties from the entity.</param>
            <returns>The the computed and non-computed entity properties.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.GetActions">
            <summary>
            Gets the list of computed and non-computed actions for the entity.
            </summary>
            <returns>The list of computed and non-computed actions for the entity.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.GetFunctions">
            <summary>
            Gets the list of computed and non-computed functions for the entity.
            </summary>
            <returns>The list of computed and non-computed functions for the entity.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.MarkNestedResourceInfoProcessed(System.String)">
            <summary>
            Marks the given nested resource info as processed.
            </summary>
            <param name="navigationPropertyName">The nested resource info we've already processed.</param>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.GetNextUnprocessedNavigationLink">
            <summary>
            Returns the next unprocessed navigation link or null if there's no more navigation links to process.
            </summary>
            <returns>Returns the next unprocessed navigation link or null if there's no more navigation links to process.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.GetNavigationLinkUri(System.String,System.Uri,System.Boolean)">
            <summary>
            Gets the navigation link URI for the specified navigation property.
            </summary>
            <param name="navigationPropertyName">The name of the navigation property to get the navigation link URI for.</param>
            <param name="navigationLinkUrl">The value of the link URI as seen on the wire or provided explicitly by the user or previously returned by the metadata builder, which may be null.</param>
            <param name="hasNestedResourceInfoUrl">true if the value of the <paramref name="navigationLinkUrl"/> was seen on the wire or provided explicitly by the user or previously returned by
            the metadata builder, false otherwise. This flag allows the metadata builder to determine whether a null navigation link url is an uninitialized value or a value that was set explicitly.</param>
            <returns>
            The navigation link URI for the navigation property.
            null if its not possible to determine the navigation link for the specified navigation property.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.GetAssociationLinkUri(System.String,System.Uri,System.Boolean)">
            <summary>
            Gets the association link URI for the specified navigation property.
            </summary>
            <param name="navigationPropertyName">The name of the navigation property to get the association link URI for.</param>
            <param name="associationLinkUrl">The value of the link URI as seen on the wire or provided explicitly by the user or previously returned by the metadata builder, which may be null.</param>
            <param name="hasAssociationLinkUrl">true if the value of the <paramref name="associationLinkUrl"/> was seen on the wire or provided explicitly by the user or previously returned by
            the metadata builder, false otherwise. This flag allows the metadata builder to determine whether a null association link url is an uninitialized value or a value that was set explicitly.</param>
            <returns>
            The association link URI for the navigation property.
            null if its not possible to determine the association link for the specified navigation property.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.GetOperationTargetUri(System.String,System.String,System.String)">
            <summary>
            Get the operation target URI for the specified <paramref name="operationName"/>.
            </summary>
            <param name="operationName">The fully qualified name of the operation for which to get the target URI.</param>
            <param name="bindingParameterTypeName">The binding parameter type name.</param>
            <param name="parameterNames">The parameter names to include in the target, or null/empty if there is none.</param>
            <returns>
            The target URI for the operation.
            null if it is not possible to determine the target URI for the specified operation.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalResourceMetadataBuilder.GetOperationTitle(System.String)">
            <summary>
            Get the operation title for the specified <paramref name="operationName"/>.
            </summary>
            <param name="operationName">The fully qualified name of the operation for which to get the target URI.</param>
            <returns>
            The title for the operation.
            null if it is not possible to determine the title for the specified operation.
            </returns>
        </member>
        <member name="T:Microsoft.OData.Evaluation.ODataConventionalUriBuilder">
            <summary>
            Implementation of OData URI builder based on OData protocol conventions.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataConventionalUriBuilder.serviceBaseUri">
            <summary>The base URI of the service. This will be used as the base URI for all entity containers.</summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataConventionalUriBuilder.keySerializer">
            <summary>The specific key-serializer to use based on the convention.</summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalUriBuilder.#ctor(System.Uri,Microsoft.OData.ODataUrlKeyDelimiter)">
            <summary>
            Constructor.
            </summary>
            <param name="serviceBaseUri">The base URI of the service. This will be used as the base URI for all entity containers.</param>
            <param name="urlKeyDelimiter">Key delimiter used in url.</param>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalUriBuilder.BuildBaseUri">
            <summary>
            Builds the base URI for the entity container.
            </summary>
            <returns>
            The base URI for the entity container.
            This can be either an absolute URI,
            or relative URI which will be combined with the URI of the metadata document for the service.
            null if the model doesn't have the service base URI annotation.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalUriBuilder.BuildEntitySetUri(System.Uri,System.String)">
            <summary>
            Builds the URI for an entity set.
            </summary>
            <param name="baseUri">The URI to append to.</param>
            <param name="entitySetName">The entity set name.</param>
            <returns>The entity set URI.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalUriBuilder.BuildEntityInstanceUri(System.Uri,System.Collections.Generic.ICollection{System.Collections.Generic.KeyValuePair{System.String,System.Object}},System.String)">
            <summary>
            Builds the entity instance URI with the given key property values.
            </summary>
            <param name="baseUri">The URI to append to.</param>
            <param name="keyProperties">The list of name value pair for key properties.</param>
            <param name="entityTypeName">The full name of the entity type we are building the key expression for.</param>
            <returns>The entity instance URI.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalUriBuilder.BuildStreamEditLinkUri(System.Uri,System.String)">
            <summary>
            Builds the edit link for a stream property.
            </summary>
            <param name="baseUri">The URI to append to.</param>
            <param name="streamPropertyName">
            The name of the stream property the link is computed for;
            or null for the default media resource.
            </param>
            <returns>The edit link for the stream.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalUriBuilder.BuildStreamReadLinkUri(System.Uri,System.String)">
            <summary>
            Builds the read link for a stream property.
            </summary>
            <param name="baseUri">The URI to append to.</param>
            <param name="streamPropertyName">
            The name of the stream property the link is computed for;
            or null for the default media resource.
            </param>
            <returns>The read link for the stream.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalUriBuilder.BuildNavigationLinkUri(System.Uri,System.String)">
            <summary>
            Builds the navigation link for the navigation property.
            </summary>
            <param name="baseUri">The URI to append to.</param>
            <param name="navigationPropertyName">The name of the navigation property to get the navigation link URI for.</param>
            <returns>The navigation link URI for the navigation property.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalUriBuilder.BuildAssociationLinkUri(System.Uri,System.String)">
            <summary>
            Builds the association link for the navigation property.
            </summary>
            <param name="baseUri">The URI to append to.</param>
            <param name="navigationPropertyName">The name of the navigation property to get the association link URI for.</param>
            <returns>The association link URI for the navigation property.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalUriBuilder.BuildOperationTargetUri(System.Uri,System.String,System.String,System.String)">
            <summary>
            Builds the operation target URI for the specified <paramref name="operationName"/>.
            </summary>
            <param name="baseUri">The URI to append to.</param>
            <param name="operationName">The fully qualified name of the operation for which to get the target URI.</param>
            <param name="bindingParameterTypeName">The binding parameter type name to include in the target, or null/empty if there is none.</param>
            <param name="parameterNames">The parameter names to include in the target, or null/empty if there is none.</param>
            <returns>The target URI for the operation.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalUriBuilder.AppendTypeSegment(System.Uri,System.String)">
            <summary>
            Builds a URI with the given type name appended as a new segment on the base URI.
            </summary>
            <param name="baseUri">The URI to append to.</param>
            <param name="typeName">The fully qualified type name to append.</param>
            <returns>The URI with the type segment appended.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalUriBuilder.ValidateBaseUri(System.Uri)">
            <summary>
            Validates the base URI parameter to be a non-null absolute URI.
            </summary>
            <param name="baseUri">The base URI parameter to validate.</param>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalUriBuilder.AppendSegment(System.Uri,System.String,System.Boolean)">
            <summary>
            Appends a segment to the specified base URI.
            </summary>
            <param name="baseUri">The base Uri to append the segment to.</param>
            <param name="segment">The segment to append.</param>
            <param name="escapeSegment">True if the new segment should be escaped, otherwise False.</param>
            <returns>New URI with the appended segment and no trailing slash added.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalUriBuilder.ValidateKeyValue(System.String,System.Object,System.String)">
            <summary>
            Gets the CLR value of a primitive key property.
            </summary>
            <param name="keyPropertyName">The key property name.</param>
            <param name="keyPropertyValue">The key property value.</param>
            <param name="entityTypeName">The entity type name we are validating the key value for.</param>
            <returns>The primitive value of the key property.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataConventionalUriBuilder.AppendKeyExpression(System.Text.StringBuilder,System.Collections.Generic.ICollection{System.Collections.Generic.KeyValuePair{System.String,System.Object}},System.String)">
            <summary>
            Appends the key expression for the given entity to the given <see cref="T:System.Text.StringBuilder"/>
            </summary>
            <param name="builder">The builder to append onto.</param>
            <param name="keyProperties">The list of name value pair for key properties.</param>
            <param name="entityTypeName">The full name of the entity type we are building the key expression for.</param>
        </member>
        <member name="T:Microsoft.OData.Evaluation.IODataMetadataContext">
            <summary>
            Interface used for substitutability of the metadata-centric responsibilities of <see cref="T:Microsoft.OData.JsonLight.ODataJsonLightDeserializer"/>.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.IODataMetadataContext.Model">
            <summary>
            Gets the Edm Model.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.IODataMetadataContext.ServiceBaseUri">
            <summary>
            Gets the service base Uri.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.IODataMetadataContext.MetadataDocumentUri">
            <summary>
            Gets the metadata document uri.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.IODataMetadataContext.ODataUri">
            <summary>
            Gets the OData uri.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.IODataMetadataContext.GetResourceMetadataBuilderForReader(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,System.Boolean)">
            <summary>
            Gets an entity metadata builder for the given resource.
            </summary>
            <param name="resourceState">Resource state to use as reference for information needed by the builder.</param>
            <param name="useKeyAsSegment">true if keys should go in separate segments in auto-generated URIs, false if they should go in parentheses.</param>
            <returns>An entity metadata builder.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.IODataMetadataContext.GetBindableOperationsForType(Microsoft.OData.Edm.IEdmType)">
            <summary>
            Gets the list of operations that are bindable to a type.
            </summary>
            <param name="bindingType">The binding type in question.</param>
            <returns>The list of operations that are always bindable to a type.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.IODataMetadataContext.OperationsBoundToStructuredTypeMustBeContainerQualified(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Determines whether operations bound to this type must be qualified with the operation they belong to when appearing in a $select clause.
            </summary>
            <param name="structuredType">The structured type the operations are bound to.</param>
            <returns>True if the operations must be container qualified, otherwise false.</returns>
        </member>
        <member name="T:Microsoft.OData.Evaluation.ODataMetadataContext">
            <summary>
            Default implementation of <see cref="T:Microsoft.OData.Evaluation.IODataMetadataContext"/>.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataMetadataContext.model">
            <summary>
            The Edm Model.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataMetadataContext.edmTypeResolver">
            <summary>
            EdmTypeResolver instance to resolve entity set base type.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataMetadataContext.bindableOperationsCache">
            <summary>
            Cache of operations that are bindable to entity types.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataMetadataContext.isResponse">
            <summary>
            true if we are reading or writing a response payload, false otherwise.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataMetadataContext.operationsBoundToStructuredTypeMustBeContainerQualified">
            <summary>
            Callback to determine whether operations bound to this type must be qualified with the operation they belong to when appearing in a $select clause.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataMetadataContext.metadataDocumentUri">
            <summary>
            The metadata document Uri.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataMetadataContext.odataUri">
            <summary>
            The OData Uri.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataMetadataContext.serviceBaseUri">
            <summary>
            The service base Uri.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataMetadataContext.metadataLevel">
            <summary>
            The MetadataLevel.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataMetadataContext.#ctor(System.Boolean,Microsoft.OData.Edm.IEdmModel,System.Uri,Microsoft.OData.ODataUri)">
            <summary>
            Constructs an ODataMetadataContext.
            </summary>
            <param name="isResponse">true if we are writing a response payload, false otherwise.</param>
            <param name="model">The Edm model.</param>
            <param name="metadataDocumentUri">The metadata document uri.</param>
            <param name="odataUri">The request Uri.</param>
            <remarks>This overload should only be used by the writer.</remarks>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataMetadataContext.#ctor(System.Boolean,System.Func{Microsoft.OData.Edm.IEdmStructuredType,System.Boolean},Microsoft.OData.Metadata.EdmTypeResolver,Microsoft.OData.Edm.IEdmModel,System.Uri,Microsoft.OData.ODataUri)">
            <summary>
            Constructs an ODataMetadataContext.
            </summary>
            <param name="isResponse">true if we are reading a response payload, false otherwise.</param>
            <param name="operationsBoundToStructuredTypeMustBeContainerQualified">Callback to determine whether operations bound to this type must be qualified with the operation they belong to when appearing in a $select clause.</param>
            <param name="edmTypeResolver">EdmTypeResolver instance to resolve entity set base type.</param>
            <param name="model">The Edm model.</param>
            <param name="metadataDocumentUri">The metadata document Uri.</param>
            <param name="odataUri">The request Uri.</param>
            <remarks>This overload should only be used by the reader.</remarks>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataMetadataContext.#ctor(System.Boolean,System.Func{Microsoft.OData.Edm.IEdmStructuredType,System.Boolean},Microsoft.OData.Metadata.EdmTypeResolver,Microsoft.OData.Edm.IEdmModel,System.Uri,Microsoft.OData.ODataUri,Microsoft.OData.JsonLight.JsonLightMetadataLevel)">
            <summary>
            Constructs an ODataMetadataContext.
            </summary>
            <param name="isResponse">true if we are reading a response payload, false otherwise.</param>
            <param name="operationsBoundToEntityTypeMustBeContainerQualified">Callback to determine whether operations bound to this type must be qualified with the operation they belong to when appearing in a $select clause.</param>
            <param name="edmTypeResolver">EdmTypeResolver instance to resolve entity set base type.</param>
            <param name="model">The Edm model.</param>
            <param name="metadataDocumentUri">The metadata document Uri.</param>
            <param name="odataUri">The request Uri.</param>
            <param name="metadataLevel">Current Json Light MetadataLevel</param>
            <remarks>This overload should only be used by the reader.</remarks>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataMetadataContext.Model">
            <summary>
            Gets the Edm Model.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataMetadataContext.ServiceBaseUri">
            <summary>
            Gets the service base Uri.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataMetadataContext.MetadataDocumentUri">
            <summary>
            Gets the metadata document uri.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataMetadataContext.ODataUri">
            <summary>
            Gets the OData uri.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataMetadataContext.GetResourceMetadataBuilderForReader(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,System.Boolean)">
            <summary>
            Gets a resource metadata builder for the given resource.
            </summary>
            <param name="resourceState">Resource state to use as reference for information needed by the builder.</param>
            <param name="useKeyAsSegment">true if keys should go in separate segments in auto-generated URIs, false if they should go in parentheses.</param>
            <returns>A resource metadata builder.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataMetadataContext.GetBindableOperationsForType(Microsoft.OData.Edm.IEdmType)">
            <summary>
            Gets the list of operations that are always bindable to a type.
            </summary>
            <param name="bindingType">The binding type in question.</param>
            <returns>The list of operations that are always bindable to a type.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataMetadataContext.OperationsBoundToStructuredTypeMustBeContainerQualified(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Determines whether operations bound to this type must be qualified with the operation they belong to when appearing in a $select clause.
            </summary>
            <param name="structuredType">The structured type the operations are bound to.</param>
            <returns>True if the operations must be container qualified, otherwise false.</returns>
        </member>
        <member name="T:Microsoft.OData.Evaluation.ODataMissingOperationGenerator">
            <summary>
            Generates operations which were omitted by the service because they fully match conventions/templates and are always available.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataMissingOperationGenerator.metadataContext">
            <summary>The current resource metadata context.</summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataMissingOperationGenerator.resourceMetadataContext">
            <summary>The metadata context of the resource to generate the missing operations for.</summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataMissingOperationGenerator.computedActions">
            <summary>The list of computed actions.</summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataMissingOperationGenerator.computedFunctions">
            <summary>The list of computed functions.</summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataMissingOperationGenerator.#ctor(Microsoft.OData.Evaluation.IODataResourceMetadataContext,Microsoft.OData.Evaluation.IODataMetadataContext)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.OData.Evaluation.ODataMissingOperationGenerator"/> class.
            </summary>
            <param name="resourceMetadataContext">The metadata context of the resource to generate the missing operations for.</param>
            <param name="metadataContext">The current resource metadata context.</param>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataMissingOperationGenerator.GetComputedActions">
            <summary>
            Gets the computed missing Actions from the generator.
            </summary>
            <returns>The computed missing Actions.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataMissingOperationGenerator.GetComputedFunctions">
            <summary>
            Gets the computed missing Functions from the generator.
            </summary>
            <returns>The computed missing Functions.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataMissingOperationGenerator.GetOperationsInEntry(Microsoft.OData.ODataResourceBase,Microsoft.OData.Edm.IEdmModel,System.Uri)">
            <summary>
            Returns a hash set of operation imports (actions and functions) in the given resource.
            </summary>
            <param name="resource">The resource in question.</param>
            <param name="model">The edm model to resolve operation imports.</param>
            <param name="metadataDocumentUri">The metadata document uri.</param>
            <returns>The hash set of operation imports (actions and functions) in the given resource.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataMissingOperationGenerator.ComputeMissingOperationsToResource">
            <summary>
            Computes the operations that are missing from the payload but should be added by conventions onto the resource.
            </summary>
        </member>
        <member name="T:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder">
            <summary>
            Extensibility point for customizing how OData entity metadata (edit-links, IDs, ETags, etc) is built.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.Null">
            <summary>
            Gets an instance of the metadata builder which never returns anything other than nulls.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.ParentMetadataBuilder">
            <summary>
            Gets instance of the metadata builder which belongs to the parent odata resource
            </summary>
            <returns>
            The metadata builder of the parent odata resource
            Or null if there is no parent odata resource
            </returns>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.IsFromCollection">
            <summary>
            Whether the resource is from collection.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.NameAsProperty">
            <summary>
            The name of property that current resource represents.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.GetEditLink">
            <summary>
            Gets the edit link of the entity.
            </summary>
            <returns>
            The absolute URI of the edit link for the entity.
            Or null if it is not possible to determine the edit link.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.GetReadLink">
            <summary>
            Gets the read link of the entity.
            </summary>
            <returns>
            The absolute URI of the read link for the entity.
            Or null if it is not possible to determine the read link.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.GetId">
            <summary>
            Gets the ID of the entity.
            </summary>
            <returns>
            The ID for the entity.
            Or null if it is not possible to determine the ID.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.TryGetIdForSerialization(System.Uri@)">
            <summary>
            Get the id that need to be written into wire
            </summary>
            <param name="id">The id return to the caller</param>
            <returns>
            If writer should write odata.id property into wire
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.GetETag">
            <summary>
            Gets the ETag of the entity.
            </summary>
            <returns>
            The ETag for the entity.
            Or null if it is not possible to determine the ETag.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.GetMediaResource">
            <summary>
            Gets the default media resource of the entity.
            </summary>
            <returns>
            The the default media resource of the entity.
            Or null if the entity is not an MLE.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.GetProperties(System.Collections.Generic.IEnumerable{Microsoft.OData.ODataProperty})">
            <summary>
            Gets the entity properties.
            </summary>
            <param name="nonComputedProperties">Non-computed properties from the entity.</param>
            <returns>The the computed and non-computed entity properties.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.GetActions">
            <summary>
            Gets the list of computed and non-computed actions for the entity.
            </summary>
            <returns>The list of computed and non-computed actions for the entity.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.GetFunctions">
            <summary>
            Gets the list of computed and non-computed functions for the entity.
            </summary>
            <returns>The list of computed and non-computed functions for the entity.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.MarkNestedResourceInfoProcessed(System.String)">
            <summary>
            Marks the given nested resource info as processed.
            </summary>
            <param name="navigationPropertyName">The nested resource info we've already processed.</param>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.GetNextUnprocessedNavigationLink">
            <summary>
            Returns the next unprocessed nested resource info or null if there's no more navigation links to process.
            </summary>
            <returns>Returns the next unprocessed nested resource info or null if there's no more navigation links to process.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.GetStreamEditLink(System.String)">
            <summary>
            Gets the edit link of a stream value.
            </summary>
            <param name="streamPropertyName">The name of the stream property the edit link is computed for;
            or null for the default media resource.</param>
            <returns>
            The absolute URI of the edit link for the specified stream property or the default media resource.
            Or null if it is not possible to determine the stream edit link.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.GetStreamReadLink(System.String)">
            <summary>
            Gets the read link of a stream value.
            </summary>
            <param name="streamPropertyName">The name of the stream property the read link is computed for;
            or null for the default media resource.</param>
            <returns>
            The absolute URI of the read link for the specified stream property or the default media resource.
            Or null if it is not possible to determine the stream read link.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.GetNavigationLinkUri(System.String,System.Uri,System.Boolean)">
            <summary>
            Gets the navigation link URI for the specified navigation property.
            </summary>
            <param name="navigationPropertyName">The name of the navigation property to get the navigation link URI for.</param>
            <param name="navigationLinkUrl">The value of the link URI as seen on the wire or provided explicitly by the user or previously returned by the metadata builder, which may be null.</param>
            <param name="hasNestedResourceInfoUrl">true if the value of the <paramref name="navigationLinkUrl"/> was seen on the wire or provided explicitly by the user or previously returned by
            the metadata builder, false otherwise. This flag allows the metadata builder to determine whether a null navigation link url is an uninitialized value or a value that was set explicitly.</param>
            <returns>
            The navigation link URI for the navigation property.
            null if its not possible to determine the navigation link for the specified navigation property.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.GetAssociationLinkUri(System.String,System.Uri,System.Boolean)">
            <summary>
            Gets the association link URI for the specified navigation property.
            </summary>
            <param name="navigationPropertyName">The name of the navigation property to get the association link URI for.</param>
            <param name="associationLinkUrl">The value of the link URI as seen on the wire or provided explicitly by the user or previously returned by the metadata builder, which may be null.</param>
            <param name="hasAssociationLinkUrl">true if the value of the <paramref name="associationLinkUrl"/> was seen on the wire or provided explicitly by the user or previously returned by
            the metadata builder, false otherwise. This flag allows the metadata builder to determine whether a null association link url is an uninitialized value or a value that was set explicitly.</param>
            <returns>
            The association link URI for the navigation property.
            null if its not possible to determine the association link for the specified navigation property.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.GetOperationTargetUri(System.String,System.String,System.String)">
            <summary>
            Get the operation target URI for the specified <paramref name="operationName"/>.
            </summary>
            <param name="operationName">The fully qualified name of the operation for which to get the target URI.</param>
            <param name="bindingParameterTypeName">The binding parameter type name to include in the target, or null/empty if there is none.</param>
            <param name="parameterNames">The parameter names to include in the target, or null/empty if there is none.</param>
            <returns>
            The target URI for the operation.
            null if it is not possible to determine the target URI for the specified operation.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.GetOperationTitle(System.String)">
            <summary>
            Get the operation title for the specified <paramref name="operationName"/>.
            </summary>
            <param name="operationName">The fully qualified name of the operation for which to get the target URI.</param>
            <returns>
            The title for the operation.
            null if it is not possible to determine the title for the specified operation.
            </returns>
        </member>
        <member name="T:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.NullResourceMetadataBuilder">
            <summary>
            Implementation of the metadata builder which only returns nulls.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.NullResourceMetadataBuilder.Instance">
            <summary>
            Singleton instance of the null metadata builder.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.NullResourceMetadataBuilder.#ctor">
            <summary>
            Prevents a default instance of the <see cref="T:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.NullResourceMetadataBuilder"/> class from being created.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.NullResourceMetadataBuilder.GetEditLink">
            <summary>
            Gets the edit link of the entity.
            </summary>
            <returns>
            The absolute URI of the edit link for the entity.
            Or null if it is not possible to determine the edit link.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.NullResourceMetadataBuilder.GetReadLink">
            <summary>
            Gets the read link of the entity.
            </summary>
            <returns>
            The absolute URI of the read link for the entity.
            Or null if it is not possible to determine the read link.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.NullResourceMetadataBuilder.GetId">
            <summary>
            Gets the ID of the entity.
            </summary>
            <returns>
            The ID for the entity.
            Or null if it is not possible to determine the ID.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.NullResourceMetadataBuilder.GetETag">
            <summary>
            Gets the ETag of the entity.
            </summary>
            <returns>
            The ETag for the entity.
            Or null if it is not possible to determine the ETag.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataBuilder.NullResourceMetadataBuilder.TryGetIdForSerialization(System.Uri@)">
            <summary>
            Get the id that need to be written into wire
            </summary>
            <param name="id">The id return to the caller</param>
            <returns>
            If writer should write odata.id property into wire
            </returns>
        </member>
        <member name="T:Microsoft.OData.Evaluation.ODataResourceMetadataContext">
            <summary>
            Default implementation of <see cref="T:Microsoft.OData.Evaluation.IODataResourceMetadataContext"/>
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataResourceMetadataContext.EmptyProperties">
            <summary>
            Empty array of properties.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataResourceMetadataContext.resource">
            <summary>
            The resource instance.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataResourceMetadataContext.typeContext">
            <summary>
            The context object to answer basic questions regarding the type of the resource.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataResourceMetadataContext.keyProperties">
            <summary>
            The key property name and value pairs of the resource.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataResourceMetadataContext.etagProperties">
            <summary>
            The ETag property name and value pairs of the resource.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataResourceMetadataContext.selectedNavigationProperties">
            <summary>
            The selected navigation properties.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataResourceMetadataContext.selectedStreamProperties">
            <summary>
            The selected stream properties.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataResourceMetadataContext.selectedBindableOperations">
            <summary>
            The selected bindable operations.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataContext.#ctor(Microsoft.OData.ODataResourceBase,Microsoft.OData.IODataResourceTypeContext)">
            <summary>
            Constructs an instance of <see cref="T:Microsoft.OData.Evaluation.ODataResourceMetadataContext"/>.
            </summary>
            <param name="resource">The resource instance.</param>
            <param name="typeContext">The context object to answer basic questions regarding the type of the resource.</param>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataContext.Resource">
            <summary>
            The resource instance.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataContext.TypeContext">
            <summary>
            The context object to answer basic questions regarding the type of the resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ActualResourceTypeName">
            <summary>
            The actual structured type of the resource, i.e. ODataResource.TypeName.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataContext.KeyProperties">
            <summary>
            The key property name and value pairs of the resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ETagProperties">
            <summary>
            The ETag property name and value pairs of the resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataContext.SelectedNavigationProperties">
            <summary>
            The selected navigation properties.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataContext.SelectedStreamProperties">
            <summary>
            The selected stream properties.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataContext.SelectedBindableOperations">
            <summary>
            The selected bindable operations.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataContext.Create(Microsoft.OData.ODataResourceBase,Microsoft.OData.IODataResourceTypeContext,Microsoft.OData.ODataResourceSerializationInfo,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.Evaluation.IODataMetadataContext,Microsoft.OData.SelectedPropertiesNode)">
            <summary>
            Creates an instance of <see cref="T:Microsoft.OData.Evaluation.ODataResourceMetadataContext"/>.
            </summary>
            <param name="resource">The resource instance.</param>
            <param name="typeContext">The context object to answer basic questions regarding the type of the resource.</param>
            <param name="serializationInfo">The serialization info of the resource for writing without model.</param>
            <param name="actualResourceType">The structured type of the resource.</param>
            <param name="metadataContext">The metadata context to use.</param>
            <param name="selectedProperties">The selected properties.</param>
            <returns>A new instance of <see cref="T:Microsoft.OData.Evaluation.ODataResourceMetadataContext"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataContext.GetKeyProperties(Microsoft.OData.ODataResourceBase,Microsoft.OData.ODataResourceSerializationInfo,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Get key value pair array for specifc odata resource using specifc entity type
            </summary>
            <param name="resource">The resource instance.</param>
            <param name="serializationInfo">The serialization info of the resource for writing without model.</param>
            <param name="actualEntityType">The edm entity type of the resource</param>
            <returns>Key value pair array</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataContext.GetPrimitiveOrEnumPropertyValue(Microsoft.OData.ODataResourceBase,System.String,System.String,System.Boolean)">
            <summary>
            Gets the value for a primitive or enum property.
            </summary>
            <param name="resource">The resource to get the property value.</param>
            <param name="propertyName">Name of the property.</param>
            <param name="entityTypeName">The name of the entity type to get the property value.</param>
            <param name="isKeyProperty">true if the property is a key property, false otherwise.</param>
            <returns>The value of the property.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataContext.GetPrimitiveOrEnumPropertyValue(System.String,Microsoft.OData.ODataProperty,System.Boolean)">
            <summary>
            Gets the value for a primitive or enum property. For primitive type, returns its CLR value; for enum type, returns OData enum value.
            </summary>
            <param name="entityTypeName">The name of the entity type to get the property value.</param>
            <param name="property">The ODataProperty to get the value from.</param>
            <param name="isKeyProperty">true if the property is a key property, false otherwise.</param>
            <returns>The value of the property.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ValidateEntityTypeHasKeyProperties(System.Collections.Generic.KeyValuePair{System.String,System.Object}[],System.String)">
            <summary>
            Validates that the resource has key properties.
            </summary>
            <param name="keyProperties">Key properties of the resource.</param>
            <param name="actualEntityTypeName">The entity type name of the resource.</param>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataContext.GetPropertiesBySerializationInfoPropertyKind(Microsoft.OData.ODataResourceBase,Microsoft.OData.ODataPropertyKind,System.String)">
            <summary>
            Gets the property name value pairs filtered by serialization property kind.
            </summary>
            <param name="resource">The resource to get the properties from.</param>
            <param name="propertyKind">The serialization info property kind.</param>
            <param name="actualEntityTypeName">The entity type name of the resource.</param>
            <returns>The property name value pairs filtered by serialization property kind.</returns>
        </member>
        <member name="T:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithoutModel">
            <summary>
            Implementation of <see cref="T:Microsoft.OData.Evaluation.IODataResourceMetadataContext"/> based on serialization info.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithoutModel.EmptyNavigationProperties">
            <summary>
            Empty array of navigation properties.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithoutModel.EmptyStreamProperties">
            <summary>
            Empty dictionary of stream properties.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithoutModel.EmptyOperations">
            <summary>
            Empty array of operations.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithoutModel.serializationInfo">
            <summary>
            The serialization info of the resource for writing without model.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithoutModel.#ctor(Microsoft.OData.ODataResourceBase,Microsoft.OData.IODataResourceTypeContext,Microsoft.OData.ODataResourceSerializationInfo)">
            <summary>
            Constructs an instance of <see cref="T:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithoutModel"/>.
            </summary>
            <param name="resource">The resource instance.</param>
            <param name="typeContext">The context object to answer basic questions regarding the type of the resource.</param>
            <param name="serializationInfo">The serialization info of the resource for writing without model.</param>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithoutModel.KeyProperties">
            <summary>
            The key property name and value pairs of the resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithoutModel.ETagProperties">
            <summary>
            The ETag property name and value pairs of the resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithoutModel.ActualResourceTypeName">
            <summary>
            The actual structured type of the resource, i.e. ODataResource.TypeName.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithoutModel.SelectedNavigationProperties">
            <summary>
            The selected navigation properties.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithoutModel.SelectedStreamProperties">
            <summary>
            The selected stream properties.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithoutModel.SelectedBindableOperations">
            <summary>
            The selected bindable operations.
            </summary>
        </member>
        <member name="T:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithModel">
            <summary>
            Implementation of <see cref="T:Microsoft.OData.Evaluation.IODataResourceMetadataContext"/> based on the given model.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithModel.actualResourceType">
            <summary>
            The structured type of the resource.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithModel.metadataContext">
            <summary>
            The metadata context to use.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithModel.selectedProperties">
            <summary>
            The selected properties.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithModel.#ctor(Microsoft.OData.ODataResourceBase,Microsoft.OData.IODataResourceTypeContext,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.Evaluation.IODataMetadataContext,Microsoft.OData.SelectedPropertiesNode)">
            <summary>
            Constructs an instance of <see cref="T:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithModel"/>.
            </summary>
            <param name="resource">The resource instance.</param>
            <param name="typeContext">The context object to answer basic questions regarding the type of the resource.</param>
            <param name="actualResourceType">The structured type of the resource.</param>
            <param name="metadataContext">The metadata context to use.</param>
            <param name="selectedProperties">The selected properties.</param>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithModel.KeyProperties">
            <summary>
            The key property name and value pairs of the resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithModel.ETagProperties">
            <summary>
            The ETag property name and value pairs of the resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithModel.ActualResourceTypeName">
            <summary>
            The actual structured type name of the resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithModel.SelectedNavigationProperties">
            <summary>
            The selected navigation properties.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithModel.SelectedStreamProperties">
            <summary>
            The selected stream properties.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithModel.SelectedBindableOperations">
            <summary>
            The selected bindable operations.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataResourceMetadataContext.ODataResourceMetadataContextWithModel.ComputeETagPropertiesFromAnnotation">
            <summary>
            Compute ETag from Annotation Org.OData.Core.V1.OptimisticConcurrency on EntitySet
            </summary>
            <returns>Enumerable of IEdmStructuralProperty</returns>
        </member>
        <member name="T:Microsoft.OData.Evaluation.ODataUriBuilder">
            <summary>
            Extensibility point for customizing how OData uri's are built.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataUriBuilder.BuildBaseUri">
            <summary>
            Builds the base URI for the entity container.
            </summary>
            <returns>
            The base URI for the entity container.
            This can be either an absolute URI,
            or relative URI which will be combined with the URI of the metadata document for the service.
            null if the model doesn't have the service base URI annotation.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataUriBuilder.BuildEntitySetUri(System.Uri,System.String)">
            <summary>
            Builds the URI for an entity set.
            </summary>
            <param name="baseUri">The URI to append to.</param>
            <param name="entitySetName">The entity set name.</param>
            <returns>The entity set URI.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataUriBuilder.BuildEntityInstanceUri(System.Uri,System.Collections.Generic.ICollection{System.Collections.Generic.KeyValuePair{System.String,System.Object}},System.String)">
            <summary>
            Builds the entity instance URI with the given key property values.
            </summary>
            <param name="baseUri">The URI to append to.</param>
            <param name="keyProperties">The list of name value pair for key properties.</param>
            <param name="entityTypeName">The full name of the entity type we are building the key expression for.</param>
            <returns>The entity instance URI.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataUriBuilder.BuildStreamEditLinkUri(System.Uri,System.String)">
            <summary>
            Builds the edit link for a stream property.
            </summary>
            <param name="baseUri">The URI to append to.</param>
            <param name="streamPropertyName">
            The name of the stream property the link is computed for;
            or null for the default media resource.
            </param>
            <returns>The edit link for the stream.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataUriBuilder.BuildStreamReadLinkUri(System.Uri,System.String)">
            <summary>
            Builds the read link for a stream property.
            </summary>
            <param name="baseUri">The URI to append to.</param>
            <param name="streamPropertyName">
            The name of the stream property the link is computed for;
            or null for the default media resource.
            </param>
            <returns>The read link for the stream.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataUriBuilder.BuildNavigationLinkUri(System.Uri,System.String)">
            <summary>
            Builds the navigation link for the navigation property.
            </summary>
            <param name="baseUri">The URI to append to.</param>
            <param name="navigationPropertyName">The name of the navigation property to get the navigation link URI for.</param>
            <returns>The navigation link URI for the navigation property.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataUriBuilder.BuildAssociationLinkUri(System.Uri,System.String)">
            <summary>
            Builds the association link for the navigation property.
            </summary>
            <param name="baseUri">The URI to append to.</param>
            <param name="navigationPropertyName">The name of the navigation property to get the association link URI for.</param>
            <returns>The association link URI for the navigation property.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataUriBuilder.BuildOperationTargetUri(System.Uri,System.String,System.String,System.String)">
            <summary>
            Builds the operation target URI for the specified <paramref name="operationName"/>.
            </summary>
            <param name="baseUri">The URI to append to.</param>
            <param name="operationName">The fully qualified name of the operation for which to get the target URI.</param>
            <param name="bindingParameterTypeName">The binding parameter type name to include in the target, or null/empty if there is none.</param>
            <param name="parameterNames">The parameter names to include in the target, or null/empty if there is none.</param>
            <returns>The target URI for the operation.</returns>
        </member>
        <member name="M:Microsoft.OData.Evaluation.ODataUriBuilder.AppendTypeSegment(System.Uri,System.String)">
            <summary>
            Builds a URI with the given type name appended as a new segment on the base URI.
            </summary>
            <param name="baseUri">The URI to append to.</param>
            <param name="typeName">The fully qualified type name to append.</param>
            <returns>The URI with the type segment appended.</returns>
        </member>
        <member name="T:Microsoft.OData.ExceptionUtils">
            <summary>
            Class with utility methods to work with exceptions
            </summary>
        </member>
        <member name="F:Microsoft.OData.ExceptionUtils.OutOfMemoryType">
            <summary>Type of OutOfMemoryException.</summary>
        </member>
        <member name="M:Microsoft.OData.ExceptionUtils.IsCatchableExceptionType(System.Exception)">
            <summary>
            Determines whether the specified exception can be caught and
            handled, or whether it should be allowed to continue unwinding.
            </summary>
            <param name="e"><see cref="T:System.Exception"/> to test.</param>
            <returns>
            true if the specified exception can be caught and handled;
            false otherwise.
            </returns>
        </member>
        <member name="M:Microsoft.OData.ExceptionUtils.CheckArgumentNotNull``1(``0,System.String)">
            <summary>
            Checks the argument value for null and throws <see cref="T:System.ArgumentNullException"/> if it is null.
            </summary>
            <typeparam name="T">Type of the argument, used to force usage only for reference types.</typeparam>
            <param name="value">Argument whose value needs to be checked.</param>
            <param name="parameterName">Name of the argument, used for exception message.</param>
            <returns>The value</returns>
        </member>
        <member name="M:Microsoft.OData.ExceptionUtils.CheckArgumentStringNotEmpty(System.String,System.String)">
            <summary>
            Checks the argument string value empty string and throws <see cref="T:System.ArgumentNullException"/> if it is empty. The value can be null though.
            </summary>
            <param name="value">Argument whose value needs to be checked.</param>
            <param name="parameterName">Name of the argument, used for exception message.</param>
        </member>
        <member name="M:Microsoft.OData.ExceptionUtils.CheckArgumentStringNotNullOrEmpty(System.String,System.String)">
            <summary>
            Checks the argument string value for null or empty string and throws <see cref="T:System.ArgumentNullException"/> if it is null or empty.
            </summary>
            <param name="value">Argument whose value needs to be checked.</param>
            <param name="parameterName">Name of the argument, used for exception message.</param>
        </member>
        <member name="M:Microsoft.OData.ExceptionUtils.CheckIntegerNotNegative(System.Int32,System.String)">
            <summary>
            Checks the <paramref name="value"/> for not being negative and throws <see cref="T:System.ArgumentOutOfRangeException"/> if it is negative.
            </summary>
            <param name="value">Argument whose value needs to be checked.</param>
            <param name="parameterName">Name of the argument, used for exception message.</param>
        </member>
        <member name="M:Microsoft.OData.ExceptionUtils.CheckIntegerPositive(System.Int32,System.String)">
            <summary>
            Checks the <paramref name="value"/> for being greater than zero and throws <see cref="T:System.ArgumentOutOfRangeException"/> if it is not positive.
            </summary>
            <param name="value">Argument whose value needs to be checked.</param>
            <param name="parameterName">Name of the argument, used for exception message.</param>
        </member>
        <member name="M:Microsoft.OData.ExceptionUtils.CheckLongPositive(System.Int64,System.String)">
            <summary>
            Checks the <paramref name="value"/> for being greater than zero and throws <see cref="T:System.ArgumentOutOfRangeException"/> if it is not positive.
            </summary>
            <param name="value">Argument whose value needs to be checked.</param>
            <param name="parameterName">Name of the argument, used for exception message.</param>
        </member>
        <member name="M:Microsoft.OData.ExceptionUtils.CheckArgumentCollectionNotNullOrEmpty``1(System.Collections.Generic.ICollection{``0},System.String)">
            <summary>
            Checks the <paramref name="value"/> for not being empty.
            </summary>
            <param name="value">Argument whose value needs to be checked.</param>
            <param name="parameterName">Name of the argument, used for exception message.</param>
            <typeparam name="T">Type of the collection. It does not matter.</typeparam>
        </member>
        <member name="T:Microsoft.OData.ExceptionUtils.ValidatedNotNullAttribute">
            <summary>
            A workaround to a problem with FxCop which does not recognize the CheckArgumentNotNull method
            as the one which validates the argument is not null.
            </summary>
            <remarks>This has been suggested as a workaround in msdn forums by the VS team. Note that even though this is production code
            the attribute has no effect on anything else.</remarks>
        </member>
        <member name="T:Microsoft.OData.GeographyTypeConverter">
            <summary>
            Handles serialization and deserialization for types derived from Geography.
            </summary>
        </member>
        <member name="M:Microsoft.OData.GeographyTypeConverter.WriteAtom(System.Object,System.Xml.XmlWriter)">
            <summary>
            Write the Atom representation of an instance of a primitive type to an XmlWriter.
            </summary>
            <param name="instance">The instance to write.</param>
            <param name="writer">The Xml writer to use to write the instance.</param>
        </member>
        <member name="M:Microsoft.OData.GeographyTypeConverter.WriteAtom(System.Object,System.IO.TextWriter)">
            <summary>
            Write the Atom representation of an instance of a primitive type to an TextWriter.
            </summary>
            <param name="instance">The instance to write.</param>
            <param name="writer">The text writer to use to write the instance.</param>
        </member>
        <member name="M:Microsoft.OData.GeographyTypeConverter.WriteJsonLight(System.Object,Microsoft.OData.Json.IJsonWriter)">
            <summary>
            Write the Json Lite representation of an instance of a primitive type to a json writer.
            </summary>
            <param name="instance">The instance to write.</param>
            <param name="jsonWriter">Instance of JsonWriter.</param>
        </member>
        <member name="T:Microsoft.OData.GeometryTypeConverter">
            <summary>
            Handles serialization and deserialization for types derived from Geometry.
            This file is currently compiled by ODataLib and Astoria server, because it contains
                 functionality related to both serialization and deserialization, but deserialization
                 is not yet integrated into Astoria. Once that integration happens this functionality
                 should be fully contained within ODataLib only.
            </summary>
        </member>
        <member name="M:Microsoft.OData.GeometryTypeConverter.WriteAtom(System.Object,System.Xml.XmlWriter)">
            <summary>
            Write the Atom representation of an instance of a primitive type to an XmlWriter.
            </summary>
            <param name="instance">The instance to write.</param>
            <param name="writer">The Xml writer to use to write the instance.</param>
        </member>
        <member name="M:Microsoft.OData.GeometryTypeConverter.WriteAtom(System.Object,System.IO.TextWriter)">
            <summary>
            Write the Atom representation of an instance of a primitive type to an TextWriter.
            </summary>
            <param name="instance">The instance to write.</param>
            <param name="writer">The text writer to use to write the instance.</param>
        </member>
        <member name="M:Microsoft.OData.GeometryTypeConverter.WriteJsonLight(System.Object,Microsoft.OData.Json.IJsonWriter)">
            <summary>
            Write the Json Lite representation of an instance of a primitive type to a json object.
            </summary>
            <param name="instance">The instance to write.</param>
            <param name="jsonWriter">Instance of JsonWriter.</param>
        </member>
        <member name="T:Microsoft.OData.HttpHeaderValue">
            <summary>
            Extension methods for http header values.
            </summary>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValue.#ctor">
            <summary>
            Constructs a new instance of <see cref="T:Microsoft.OData.HttpHeaderValue"/>.
            </summary>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValue.ToString">
            <summary>
            Returns the HTTP header value string which can be used to set the header on the requst and response messages.
            </summary>
            <returns>Returns the HTTP header value string which can be used to set the header on the requst and response messages.</returns>
        </member>
        <member name="T:Microsoft.OData.HttpHeaderValueElement">
            <summary>
            Class to represent a HTTP header value element.
            </summary>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueElement.#ctor(System.String,System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}})">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.OData.HttpHeaderValueElement"/> class.
            </summary>
            <param name="name">The name of the preference.</param>
            <param name="value">The value of the preference.</param>
            <param name="parameters">The enumeration of preference parameter key value pairs.</param>
        </member>
        <member name="P:Microsoft.OData.HttpHeaderValueElement.Name">
            <summary>
            The name of the preference.
            </summary>
        </member>
        <member name="P:Microsoft.OData.HttpHeaderValueElement.Value">
            <summary>
            The value of the preference.
            </summary>
        </member>
        <member name="P:Microsoft.OData.HttpHeaderValueElement.Parameters">
            <summary>
            The enumeration of preference parameter key value pairs.
            </summary>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueElement.ToString">
            <summary>
            Converts the current <see cref="T:Microsoft.OData.HttpHeaderValueElement"/> to string.
            </summary>
            <returns>The string for <see cref="T:Microsoft.OData.HttpHeaderValueElement"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueElement.AppendNameValuePair(System.Text.StringBuilder,System.String,System.String)">
            <summary>
            Appends the <paramref name="name"/> and <paramref name="value"/> to <paramref name="stringBuilder"/> as name=value.
            </summary>
            <param name="stringBuilder">The string builder to append to.</param>
            <param name="name">The name to append.</param>
            <param name="value">The value to append.</param>
        </member>
        <member name="T:Microsoft.OData.HttpHeaderValueLexer">
            <summary>
            Lexer to parse HTTP header values.
            </summary>
        </member>
        <member name="F:Microsoft.OData.HttpHeaderValueLexer.ElementSeparator">
            <summary>
            The ',' separator.
            </summary>
        </member>
        <member name="F:Microsoft.OData.HttpHeaderValueLexer.ParameterSeparator">
            <summary>
            The ';' separator.
            </summary>
        </member>
        <member name="F:Microsoft.OData.HttpHeaderValueLexer.ValueSeparator">
            <summary>
            The '=' separator.
            </summary>
        </member>
        <member name="F:Microsoft.OData.HttpHeaderValueLexer.httpHeaderName">
            <summary>
            The name of the HTTP header being parsed.
            </summary>
        </member>
        <member name="F:Microsoft.OData.HttpHeaderValueLexer.httpHeaderValue">
            <summary>
            The value of the HTTP header being parsed.
            </summary>
        </member>
        <member name="F:Microsoft.OData.HttpHeaderValueLexer.startIndexOfNextItem">
            <summary>
            The starting index to the next item to be parsed.
            </summary>
        </member>
        <member name="F:Microsoft.OData.HttpHeaderValueLexer.value">
            <summary>
            The value of the current parsed item. If the item type is quoted-string, this returns the unescaped and unquoted string value. For other item types,
            the value is the same as the original text from the header.
            </summary>
        </member>
        <member name="F:Microsoft.OData.HttpHeaderValueLexer.originalText">
            <summary>
            The original text of the current parsed item. If the item type is quoted-string, this returns the escaped and quoted string value straight from the header.
            For other item types, the original text is the same as the item value.
            </summary>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueLexer.#ctor(System.String,System.String,System.String,System.String,System.Int32)">
            <summary>
            Constructs a new instance of <see cref="T:Microsoft.OData.HttpHeaderValueLexer"/>.
            </summary>
            <param name="httpHeaderName">The name of the HTTP header being parsed.</param>
            <param name="httpHeaderValue">The value of the HTTP header being parsed.</param>
            <param name="value">The value of the current parsed item. If the item type is quoted-string, this returns the unescaped and unquoted string value. For other item types,
            the value is the same as the original text from the header.</param>
            <param name="originalText">The original text of the current parsed item. If the item type is quoted-string, this returns the escaped and quoted string value straight from the header.
            For other item types, the original text is the same as the item value.</param>
            <param name="startIndexOfNextItem">The start index of the next item to be parsed.</param>
        </member>
        <member name="T:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderValueItemType">
            <summary>
            The item type enum.
            </summary>
        </member>
        <member name="F:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderValueItemType.Start">
            <summary>Currently at the start of the header value.</summary>
        </member>
        <member name="F:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderValueItemType.Token">
            <summary>The current item is a token.</summary>
        </member>
        <member name="F:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderValueItemType.QuotedString">
            <summary>The current item is a quoted-string.</summary>
        </member>
        <member name="F:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderValueItemType.ElementSeparator">
            <summary>The current item is the header element separator ','.</summary>
        </member>
        <member name="F:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderValueItemType.ParameterSeparator">
            <summary>The current item is the parameter separator ';'.</summary>
        </member>
        <member name="F:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderValueItemType.ValueSeparator">
            <summary>The current item is the value separator '='.</summary>
        </member>
        <member name="F:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderValueItemType.End">
            <summary>At the end of the header value.</summary>
        </member>
        <member name="P:Microsoft.OData.HttpHeaderValueLexer.Value">
            <summary>
            The value of the current parsed item. If the item type is quoted-string, this returns the unescaped and unquoted string value. For other item types,
            the value is the same as the original text from the header.
            </summary>
        </member>
        <member name="P:Microsoft.OData.HttpHeaderValueLexer.OriginalText">
            <summary>
            The original text of the current parsed item. If the item type is quoted-string, this returns the escaped and quoted string value straight from the header.
            For other item types, the original text is the same as the item value.
            </summary>
        </member>
        <member name="P:Microsoft.OData.HttpHeaderValueLexer.Type">
            <summary>
            The type of the current parsed item.
            </summary>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueLexer.Create(System.String,System.String)">
            <summary>
            Constructs a new instance of the HTTP header value item.
            </summary>
            <param name="httpHeaderName">The name of the HTTP header being parsed.</param>
            <param name="httpHeaderValue">The value of the HTTP header being parsed.</param>
            <returns>The newly created instance of <see cref="T:Microsoft.OData.HttpHeaderValueLexer"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueLexer.ToHttpHeaderValue">
            <summary>
            Reads the content of a HTTP header from this <see cref="T:Microsoft.OData.HttpHeaderValueLexer"/> instance to a new <see cref="T:Microsoft.OData.HttpHeaderValue"/> instance.
            </summary>
            <returns>A new <see cref="T:Microsoft.OData.HttpHeaderValue"/> instance populated with the content from this <see cref="T:Microsoft.OData.HttpHeaderValueLexer"/> instance.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueLexer.ReadNext">
            <summary>
            Returns an instance of <see cref="T:Microsoft.OData.HttpHeaderValueLexer"/> to parse the rest of the items on the header value.
            Parsing is based on this grammar:
                header = "header-name" ":" 1#element
                element = token [ BWS "=" BWS (token | quoted-string) ]
                             *( OWS ";" [ OWS parameter ] )
                parameter = token [ BWS "=" BWS (token | quoted-string) ]
            </summary>
            <returns>Returns an instance of <see cref="T:Microsoft.OData.HttpHeaderValueLexer"/> to parse the rest of the items on the header value.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueLexer.ReadHttpHeaderValueElement(Microsoft.OData.HttpHeaderValueLexer@)">
            <summary>
            Reads a <see cref="T:Microsoft.OData.HttpHeaderValueElement"/> from <paramref name="lexer"/> and advances the <paramref name="lexer"/> forward.
            </summary>
            <param name="lexer">The lexer to read from.</param>
            <returns>The <see cref="T:Microsoft.OData.HttpHeaderValueElement"/> that was read.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueLexer.ReadKeyValuePair(Microsoft.OData.HttpHeaderValueLexer@)">
            <summary>
            Reads a token or token=(token|quoted-string) from the <paramref name="lexer"/>, convert it to a key value pair and advances the <paramref name="lexer"/>.
            </summary>
            <param name="lexer">The lexer to read from.</param>
            <returns>The converted key value pair.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueLexer.EndOfHeaderValue">
            <summary>
            Returns true if we've parsed to the end of the header value, false otherwise.
            </summary>
            <returns>Returns true if we've parsed to the end of the header value, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueLexer.ReadNextTokenOrQuotedString">
            <summary>
            Reads a token or quoted-string value from the header.
            </summary>
            <returns>The token or quoted-string value that was read from the header.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueLexer.ReadNextToken">
            <summary>
            Reads a token from the header.
            </summary>
            <returns>The token item that was read from the header.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueLexer.ReadNextSeparator">
            <summary>
            Reads a separator from the header.
            </summary>
            <returns>The separator item that was read from the header.</returns>
        </member>
        <member name="T:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderStart">
            <summary>
            Represents the start of the http header value.
            </summary>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderStart.#ctor(System.String,System.String)">
            <summary>
            Constructs a new instance of <see cref="T:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderStart"/>.
            </summary>
            <param name="httpHeaderName">The name of the HTTP header being parsed.</param>
            <param name="httpHeaderValue">The value of the HTTP header being parsed.</param>
        </member>
        <member name="P:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderStart.Type">
            <summary>
            The type of the current item.
            </summary>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderStart.ReadNext">
            <summary>
            Returns an instance of <see cref="T:Microsoft.OData.HttpHeaderValueLexer"/> to parse the rest of the items on the header value.
            Parsing is based on this grammar:
                header = "header-name" ":" 1#element
                element = token [ BWS "=" BWS (token | quoted-string) ]
                             *( OWS ";" [ OWS parameter ] )
                parameter = token [ BWS "=" BWS (token | quoted-string) ]
            </summary>
            <returns>Returns an instance of <see cref="T:Microsoft.OData.HttpHeaderValueLexer"/> to parse the rest of the items on the header value.</returns>
        </member>
        <member name="T:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderToken">
            <summary>
            Represents a token in the HTTP header value.
            </summary>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderToken.#ctor(System.String,System.String,System.String,System.Int32)">
            <summary>
            Constructs a new instance of <see cref="T:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderToken"/>.
            </summary>
            <param name="httpHeaderName">The name of the HTTP header being parsed.</param>
            <param name="httpHeaderValue">The value of the HTTP header being parsed.</param>
            <param name="value">The value of the token.</param>
            <param name="startIndexOfNextItem">The start index of the next item.</param>
        </member>
        <member name="P:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderToken.Type">
            <summary>
            The type of the current item.
            </summary>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderToken.ReadNext">
            <summary>
            Returns an instance of <see cref="T:Microsoft.OData.HttpHeaderValueLexer"/> to parse the rest of the items on the header value.
            Parsing is based on this grammar:
                header = "header-name" ":" 1#element
                element = token [ BWS "=" BWS (token | quoted-string) ]
                             *( OWS ";" [ OWS parameter ] )
                parameter = token [ BWS "=" BWS (token | quoted-string) ]
            </summary>
            <returns>Returns an instance of <see cref="T:Microsoft.OData.HttpHeaderValueLexer"/> to parse the rest of the items on the header value.</returns>
        </member>
        <member name="T:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderQuotedString">
            <summary>
            Represents a quoted-string in the HTTP header value.
            </summary>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderQuotedString.#ctor(System.String,System.String,System.String,System.String,System.Int32)">
            <summary>
            Constructs a new instance of <see cref="T:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderQuotedString"/>.
            </summary>
            <param name="httpHeaderName">The name of the HTTP header being parsed.</param>
            <param name="httpHeaderValue">The value of the HTTP header being parsed.</param>
            <param name="value">The value of the quoted string, unescaped and without quotes.</param>
            <param name="originalText">The original text of the quoted string, escaped and with quotes.</param>
            <param name="startIndexOfNextItem">The start index of the next item.</param>
        </member>
        <member name="P:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderQuotedString.Type">
            <summary>
            The type of the current item.
            </summary>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderQuotedString.ReadNext">
            <summary>
            Returns an instance of <see cref="T:Microsoft.OData.HttpHeaderValueLexer"/> to parse the rest of the items on the header value.
            Parsing is based on this grammar:
                header = "header-name" ":" 1#element
                element = token [ BWS "=" BWS (token | quoted-string) ]
                             *( OWS ";" [ OWS parameter ] )
                parameter = token [ BWS "=" BWS (token | quoted-string) ]
            </summary>
            <returns>Returns an instance of <see cref="T:Microsoft.OData.HttpHeaderValueLexer"/> to parse the rest of the items on the header value.</returns>
        </member>
        <member name="T:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderSeparator">
            <summary>
            Represents a separator in the HTTP header value.
            </summary>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderSeparator.#ctor(System.String,System.String,System.String,System.Int32)">
            <summary>
            Constructs a new instance of <see cref="T:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderSeparator"/>.
            </summary>
            <param name="httpHeaderName">The name of the HTTP header being parsed.</param>
            <param name="httpHeaderValue">The value of the HTTP header being parsed.</param>
            <param name="value">The value of the separator.</param>
            <param name="startIndexOfNextItem">The start index of the next item.</param>
        </member>
        <member name="P:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderSeparator.Type">
            <summary>
            The type of the current item.
            </summary>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderSeparator.ReadNext">
            <summary>
            Returns an instance of <see cref="T:Microsoft.OData.HttpHeaderValueLexer"/> to parse the rest of the items on the header value.
            Parsing is based on this grammar:
                header = "header-name" ":" 1#element
                element = token [ BWS "=" BWS (token | quoted-string) ]
                             *( OWS ";" [ OWS parameter ] )
                parameter = token [ BWS "=" BWS (token | quoted-string) ]
            </summary>
            <returns>Returns an instance of <see cref="T:Microsoft.OData.HttpHeaderValueLexer"/> to parse the rest of the items on the header value.</returns>
        </member>
        <member name="T:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderEnd">
            <summary>
            Represents the end of the http header value.
            </summary>
        </member>
        <member name="F:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderEnd.Instance">
            <summary>
            Static instance of the end item.
            </summary>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderEnd.#ctor">
            <summary>
            Constructs a new instance of <see cref="T:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderEnd"/>.
            </summary>
        </member>
        <member name="P:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderEnd.Type">
            <summary>
            The type of the current item.
            </summary>
        </member>
        <member name="M:Microsoft.OData.HttpHeaderValueLexer.HttpHeaderEnd.ReadNext">
            <summary>
            Returns an instance of <see cref="T:Microsoft.OData.HttpHeaderValueLexer"/> to parse the rest of the items on the header value.
            Parsing is based on this grammar:
                header = "header-name" ":" 1#element
                element = token [ BWS "=" BWS (token | quoted-string) ]
                             *( OWS ";" [ OWS parameter ] )
                parameter = token [ BWS "=" BWS (token | quoted-string) ]
            </summary>
            <returns>Returns an instance of <see cref="T:Microsoft.OData.HttpHeaderValueLexer"/> to parse the rest of the items on the header value.</returns>
        </member>
        <member name="T:Microsoft.OData.HttpUtils">
            <summary>
            Class with utility methods to work with HTTP concepts
            </summary>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.ReadMimeType(System.String,System.String@,System.String@)">
            <summary>Reads a Content-Type header and extracts the media type's name (type/subtype) and parameters.</summary>
            <param name="contentType">The Content-Type header.</param>
            <param name="mediaTypeName">The media type in standard type/subtype form, without parameters.</param>
            <param name="mediaTypeCharset">The (optional) charset parameter of the media type.</param>
            <returns>The parameters of the media type not including the 'charset' parameter.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.BuildContentType(Microsoft.OData.ODataMediaType,System.Text.Encoding)">
            <summary>Builds a Content-Type header which includes media type and encoding information.</summary>
            <param name="mediaType">Media type to be used.</param>
            <param name="encoding">Encoding to be used in response, possibly null.</param>
            <returns>The value for the Content-Type header.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.MediaTypesFromString(System.String)">
            <summary>Returns all media types from the specified (non-blank) <paramref name='text' />.</summary>
            <param name='text'>Non-blank text, as it appears on an HTTP Accepts header.</param>
            <returns>An enumerable object with key/value pairs of media type descriptions with their (optional) charset parameter values.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.CompareMediaTypeNames(System.String,System.String)">
            <summary>
            Does an ordinal ignore case comparision of the given media type names.
            </summary>
            <param name="mediaTypeName1">First media type name.</param>
            <param name="mediaTypeName2">Second media type name.</param>
            <returns>returns true if the media type names are the same.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.CompareMediaTypeParameterNames(System.String,System.String)">
            <summary>
            Does an ordinal ignore case comparision of the given MIME type parameter name.
            </summary>
            <param name="parameterName1">First parameter name.</param>
            <param name="parameterName2">Second parameter name.</param>
            <returns>returns true if the parameter names are the same.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.IsMetadataParameter(System.String)">
            <summary>
            Determines whether or not a parameter is the odata metadata parameter.
            </summary>
            <param name="parameterName">The name of the parameter.</param>
            <returns>returns true if the parameter name is the odata metadata parameter.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.IsStreamingParameter(System.String)">
            <summary>
            Determines whether or not a parameter is the odata streaming parameter.
            </summary>
            <param name="parameterName">The name of the parameter.</param>
            <returns>returns true if the parameter name is the odata streaming parameter.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.EncodingFromAcceptableCharsets(System.String,Microsoft.OData.ODataMediaType,System.Text.Encoding,System.Text.Encoding)">
            <summary>Gets the best encoding available for the specified charset request.</summary>
            <param name="acceptableCharsets">
            The Accept-Charset header value (eg: "iso-8859-5, unicode-1-1;q=0.8").
            </param>
            <param name="mediaType">The media type used to compute the default encoding for the payload.</param>
            <param name="utf8Encoding">The encoding to use for UTF-8 charsets; we use the one without the BOM.</param>
            <param name="defaultEncoding">The encoding to use if no encoding could be computed from the <paramref name="acceptableCharsets"/> or <paramref name="mediaType"/>.</param>
            <returns>An Encoding object appropriate to the specifed charset request.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.ReadQualityValue(System.String,System.Int32@,System.Int32@)">
            <summary>
            Reads the numeric part of a quality value substring, normalizing it to 0-1000
            rather than the standard 0.000-1.000 ranges.
            </summary>
            <param name="text">Text to read qvalue from.</param>
            <param name="textIndex">Index into text where the qvalue starts.</param>
            <param name="qualityValue">After the method executes, the normalized qvalue.</param>
            <remarks>
            For more information, see RFC 2616.3.8.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.ValidateHttpMethod(System.String)">
            <summary>
            Validates that the HTTP method string matches one of the supported HTTP methods.
            </summary>
            <param name="httpMethodString">The HTTP method string to validate.</param>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.IsQueryMethod(System.String)">
            <summary>
            Determines whether the given HTTP method is one that is accepted for queries. GET is accepted for queries.
            </summary>
            <param name="httpMethod">The HTTP method to check.</param>
            <returns>True if the given httpMethod is GET.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.GetStatusMessage(System.Int32)">
            <summary>
            Gets the string status message for a given Http response status code.
            </summary>
            <param name="statusCode">The status code to get the status message for.</param>
            <returns>The string status message for the <paramref name="statusCode"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.GetEncodingFromCharsetName(System.String)">
            <summary>
            Returns the encoding object for the specified charset name.
            </summary>
            <param name="charsetName">The of the charset to get the encoding for.</param>
            <returns>The encoding object or null if such encoding is not supported.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.ReadTokenOrQuotedStringValue(System.String,System.String,System.Int32@,System.Boolean@,System.Func{System.String,System.Exception})">
            <summary>
            Reads a token or quoted-string value from the header.
            </summary>
            <param name="headerName">Name of the header.</param>
            <param name="headerText">Header text.</param>
            <param name="textIndex">Parsing index in <paramref name="headerText"/>.</param>
            <param name="isQuotedString">Returns true if the value is a quoted-string, false if the value is a token.</param>
            <param name="createException">Func to create the appropriate exception to throw from the given error message.</param>
            <returns>The token or quoted-string value that was read from the header.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.SkipWhitespace(System.String,System.Int32@)">
            <summary>
            Skips whitespace in the specified text by advancing an index to
            the next non-whitespace character.
            </summary>
            <param name="text">Text to scan.</param>
            <param name="textIndex">Index to begin scanning from.</param>
            <returns>true if the end of the string was reached, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.AcceptCharsetParts(System.String)">
            <summary>
            Enumerates each charset part in the specified Accept-Charset header.
            </summary>
            <param name="headerValue">Non-null and non-empty header value for Accept-Charset.</param>
            <returns>
            A (non-sorted) enumeration of CharsetPart elements, which include
            a charset name and a quality (preference) value, normalized to 0-1000.
            </returns>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.ReadMediaTypes(System.String)">
            <summary>Reads a media type definition as used in a Content-Type header.</summary>
            <param name="text">Text to read.</param>
            <returns>A list of key/value pairs representing the <see cref="T:Microsoft.OData.ODataMediaType"/>s and their (optional) 'charset' parameters
            parsed from the specified <paramref name="text"/></returns>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.ReadMediaTypeParameter(System.String,System.Int32@,System.Collections.Generic.List{System.Collections.Generic.KeyValuePair{System.String,System.String}}@,System.String@)">
            <summary>Read a parameter for a media type/range.</summary>
            <param name="text">Text to read from.</param>
            <param name="textIndex">Pointer in text.</param>
            <param name="parameters">Array with parameters to grow as necessary.</param>
            <param name="charset">The (optional) charset parameter value.</param>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.ReadMediaTypeAndSubtype(System.String,System.Int32@,System.String@,System.String@)">
            <summary>Reads the type and subtype specifications for a media type name.</summary>
            <param name='mediaTypeName'>Text in which specification exists.</param>
            <param name='textIndex'>Pointer into text.</param>
            <param name='type'>Type of media found.</param>
            <param name='subType'>Subtype of media found.</param>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.IsHttpToken(System.Char)">
            <summary>
            Determines whether the specified character is a valid HTTP header token character.
            </summary>
            <param name="c">Character to verify.</param>
            <returns>true if c is a valid HTTP header token character; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.IsValidInQuotedHeaderValue(System.Char)">
            <summary>
            Determines whether the specified character is valid in the quoted header values.
            </summary>
            <param name="c">Character to verify.</param>
            <returns>true if c is a valid in a quoted HTTP header value; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.IsHttpSeparator(System.Char)">
            <summary>
            Determines whether the specified character is a valid HTTP separator.
            </summary>
            <param name="c">Character to verify.</param>
            <returns>true if c is a separator; false otherwise.</returns>
            <remarks>
            See RFC 2616 2.2 for further information.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.ReadToken(System.String,System.Int32@)">
            <summary>
            Reads a token on the specified text by advancing an index on it.
            </summary>
            <param name="text">Text to read token from.</param>
            <param name="textIndex">Index for the position being scanned on text.</param>
            <returns>true if the end of the text was reached; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.DigitToInt32(System.Char)">
            <summary>
            Converts the specified character from the ASCII range to a digit.
            </summary>
            <param name="c">Character to convert.</param>
            <returns>
            The Int32 value for c, or -1 if it is an element separator.
            </returns>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.IsHttpElementSeparator(System.Char)">
            <summary>
            Verfies whether the specified character is a valid separator in
            an HTTP header list of element.
            </summary>
            <param name="c">Character to verify.</param>
            <returns>true if c is a valid character for separating elements; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.ReadLiteral(System.String,System.Int32,System.String)">
            <summary>
            "Reads" a literal from the specified string by verifying that
            the exact text can be found at the specified position.
            </summary>
            <param name="text">Text within which a literal should be checked.</param>
            <param name="textIndex">Index in text where the literal should be found.</param>
            <param name="literal">Literal to check at the specified position.</param>
            <returns>true if the end of string is found; false otherwise.</returns>
        </member>
        <member name="T:Microsoft.OData.HttpUtils.CharsetPart">
            <summary>
            Structure to represent a charset name with a quality value.
            </summary>
        </member>
        <member name="F:Microsoft.OData.HttpUtils.CharsetPart.Charset">
            <summary>Name of the charset.</summary>
        </member>
        <member name="F:Microsoft.OData.HttpUtils.CharsetPart.Quality">
            <summary>Charset quality (desirability), normalized to 0-1000.</summary>
        </member>
        <member name="M:Microsoft.OData.HttpUtils.CharsetPart.#ctor(System.String,System.Int32)">
            <summary>
            Initializes a new CharsetPart with the specified values.
            </summary>
            <param name="charset">Name of charset.</param>
            <param name="quality">Charset quality (desirability), normalized to 0-1000.</param>
        </member>
        <member name="T:Microsoft.OData.IContainerBuilder">
            <summary>
            An interface that decouples ODataLib from any implementation of dependency injection container.
            </summary>
        </member>
        <member name="M:Microsoft.OData.IContainerBuilder.AddService(Microsoft.OData.ServiceLifetime,System.Type,System.Type)">
            <summary>
            Adds a service of <paramref name="serviceType"/> with an <paramref name="implementationType"/>.
            </summary>
            <param name="lifetime">The lifetime of the service to register.</param>
            <param name="serviceType">The type of the service to register.</param>
            <param name="implementationType">The implementation type of the service.</param>
            <returns>The <see cref="T:Microsoft.OData.IContainerBuilder"/> instance itself.</returns>
        </member>
        <member name="M:Microsoft.OData.IContainerBuilder.AddService(Microsoft.OData.ServiceLifetime,System.Type,System.Func{System.IServiceProvider,System.Object})">
            <summary>
            Adds a service of <paramref name="serviceType"/> with an <paramref name="implementationFactory"/>.
            </summary>
            <param name="lifetime">The lifetime of the service to register.</param>
            <param name="serviceType">The type of the service to register.</param>
            <param name="implementationFactory">The factory that creates the service.</param>
            <returns>The <see cref="T:Microsoft.OData.IContainerBuilder"/> instance itself.</returns>
        </member>
        <member name="M:Microsoft.OData.IContainerBuilder.BuildContainer">
            <summary>
            Builds a container which implements <see cref="T:System.IServiceProvider"/> and contains
            all the services registered.
            </summary>
            <returns>The container built by this builder.</returns>
        </member>
        <member name="T:Microsoft.OData.IContainerProvider">
            <summary>
            An interface that provides a dependency injection container.
            </summary>
        </member>
        <member name="P:Microsoft.OData.IContainerProvider.Container">
            <summary>
            Gets a container which implements <see cref="T:System.IServiceProvider"/> and contains
            all the services registered.
            </summary>
        </member>
        <member name="T:Microsoft.OData.IDuplicatePropertyNameChecker">
            <summary>
            Validates that
              1) No duplicate property.
              2) No duplicate "@odata.associationLink" on a property.
              3) "@odata.associationLink"s are put on navigation properties.
            </summary>
        </member>
        <member name="M:Microsoft.OData.IDuplicatePropertyNameChecker.ValidatePropertyUniqueness(Microsoft.OData.ODataProperty)">
            <summary>
            Validates property uniqueness.
            </summary>
            <param name="property">The property.</param>
        </member>
        <member name="M:Microsoft.OData.IDuplicatePropertyNameChecker.ValidatePropertyUniqueness(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            Validates property uniqueness.
            </summary>
            <param name="property">The property.</param>
        </member>
        <member name="M:Microsoft.OData.IDuplicatePropertyNameChecker.ValidatePropertyOpenForAssociationLink(System.String)">
            <summary>
            Validates that "@odata.associationLink" is put on a navigation property,
            and that no duplicate exists.
            </summary>
            <param name="propertyName">Name of the property.</param>
        </member>
        <member name="M:Microsoft.OData.IDuplicatePropertyNameChecker.Reset">
            <summary>
            Resets to initial state for reuse.
            </summary>
        </member>
        <member name="T:Microsoft.OData.InstanceAnnotationWriteTracker">
            <summary>
            Helper class to track if an annotation has been written.
            </summary>
        </member>
        <member name="F:Microsoft.OData.InstanceAnnotationWriteTracker.writeStatus">
            <summary>
            Maintains the write status for each annotation using its key.
            If a key exists in the list then it is considered written.
            </summary>
        </member>
        <member name="M:Microsoft.OData.InstanceAnnotationWriteTracker.#ctor">
            <summary>
            Creates a new <see cref="T:Microsoft.OData.InstanceAnnotationWriteTracker"/> to hold write status for instance annotations.
            </summary>
        </member>
        <member name="M:Microsoft.OData.InstanceAnnotationWriteTracker.IsAnnotationWritten(System.String)">
            <summary>
            Check if an annotation is already written.
            </summary>
            <returns>true if the annotation is written; otherwise false.</returns>
            <param name="key">The key of the element to check if its written.</param>
        </member>
        <member name="M:Microsoft.OData.InstanceAnnotationWriteTracker.MarkAnnotationWritten(System.String)">
            <summary>
            Mark an annotation as written.
            </summary>
            <returns>true if the annotation was unmarked before; otherwise false.</returns>
            <param name="key">The key of the element to mark as written.</param>
        </member>
        <member name="T:Microsoft.OData.InternalErrorCodes">
            <summary>
            An enumeration that lists the internal errors.
            </summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataWriterCore_WriteEnd_UnreachableCodePath">
            <summary>Unreachable codepath in ODataWriterCore.WriteEnd</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataWriterCore_ValidateTransition_UnreachableCodePath">
            <summary>Unreachable codepath in ODataWriterCore.ValidateTransition</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataWriterCore_Scope_Create_UnreachableCodePath">
            <summary>Unreachable codepath in ODataWriterCore.Scope.Create</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataWriterCore_PropertyAndAnnotationCollector">
            <summary>Unreachable codepath in ODataWriterCore.PropertyAndAnnotationCollector.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataWriterCore_ParentNestedResourceInfoScope">
            <summary>Unreachable codepath in ODataWriterCore.ParentNestedResourceInfoScope.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataUtils_VersionString_UnreachableCodePath">
            <summary>Unreachable codepath in ODataUtils.VersionString</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataUtilsInternal_IsPayloadKindSupported_UnreachableCodePath">
            <summary>Unreachable codepath in ODataUtilsInternal.IsPayloadKindSupported</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataUtils_GetDefaultEncoding_UnreachableCodePath">
            <summary>Unreachable codepath in ODataUtils.GetDefaultEncoding</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataMessageWriter_WriteProperty">
            <summary>Unreachable codepath in ODataMessageWriter.WriteProperty</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataMessageWriter_WriteEntityReferenceLink">
            <summary>Unreachable codepath in ODataMessageWriter.WriteEntityReferenceLink</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataMessageWriter_WriteEntityReferenceLinks">
            <summary>Unreachable codepath in ODataMessageWriter.WriteEntityReferenceLinks</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataMessageWriter_WriteError">
            <summary>Unreachable codepath in ODataMessageWriter.WriteError</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataMessageWriter_WriteServiceDocument">
            <summary>Unreachable codepath in ODataMessageWriter.WriteServiceDocument</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataMessageWriter_WriteMetadataDocument">
            <summary>Unreachable codepath in ODataMessageWriter.WriteMetadataDocument</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataCollectionWriter_CreateCollectionWriter_UnreachableCodePath">
            <summary>Unreachable codepath in ODataCollectionWriter.CreateCollectionWriter</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataCollectionWriterCore_ValidateTransition_UnreachableCodePath">
            <summary>Unreachable codepath in ODataCollectionWriterCore.ValidateTransition</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataCollectionWriterCore_WriteEnd_UnreachableCodePath">
            <summary>Unreachable codepath in ODataCollectionWriterCore.WriteEnd</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataParameterWriter_CannotCreateParameterWriterForFormat">
            <summary>Unreachable codepath in ODataParameterWriter.CreateParameterWriter</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataParameterWriterCore_ValidateTransition_InvalidTransitionFromStart">
            <summary>Unreachable codepath in ODataParameterWriter.ValidateTransition</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataParameterWriterCore_ValidateTransition_InvalidTransitionFromCanWriteParameter">
            <summary>Unreachable codepath in ODataParameterWriter.ValidateTransition</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataParameterWriterCore_ValidateTransition_InvalidTransitionFromActiveSubWriter">
            <summary>Unreachable codepath in ODataParameterWriter.ValidateTransition</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataParameterWriterCore_ValidateTransition_InvalidTransitionFromCompleted">
            <summary>Unreachable codepath in ODataParameterWriter.ValidateTransition</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataParameterWriterCore_ValidateTransition_InvalidTransitionFromError">
            <summary>Unreachable codepath in ODataParameterWriter.ValidateTransition</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataParameterWriterCore_ValidateTransition_UnreachableCodePath">
            <summary>Unreachable codepath in ODataParameterWriter.ValidateTransition</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataParameterWriterCore_WriteEndImplementation_UnreachableCodePath">
            <summary>Unreachable codepath in ODataParameterWriter.WriteEndImplementation</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.QueryPathValidator_ValidateSegment_Root">
            <summary>Unreachable codepath in ODataPathValidator.ValidateSegment root branch</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.QueryPathValidator_ValidateSegment_NonRoot">
            <summary>Unreachable codepath in ODataPathValidator.ValidateSegment non-root branch</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataBatchWriter_ValidateTransition_UnreachableCodePath">
            <summary>Unreachable codepath in ODataBatchWriter.ValidateTransition</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataBatchWriterUtils_HttpMethod_ToText_UnreachableCodePath">
            <summary>Unreachable codepath in ODataBatchWriter.ToText(this HttpMethod).</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataBatchReader_ReadImplementation">
            <summary>Unreachable codepath in ODataBatchReader.ReadImplementation.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataBatchReader_GetEndBoundary_Completed">
            <summary>Unreachable codepath in ODataBatchReader.GetEndBoundary in state Completed.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataBatchReader_GetEndBoundary_Exception">
            <summary>Unreachable codepath in ODataBatchReader.GetEndBoundary in state Exception.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataBatchReader_GetEndBoundary_UnknownValue">
            <summary>Unreachable codepath in ODataBatchReader.GetEndBoundary because of invalid enum value.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataBatchReaderStream_SkipToBoundary">
            <summary>Unreachable codepath in ODataBatchReaderStream.SkipToBoundary.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataBatchReaderStream_ReadLine">
            <summary>Unreachable codepath in ODataBatchReaderStream.ReadLine.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataBatchReaderStream_ReadWithDelimiter">
            <summary>Unreachable codepath in ODataBatchReaderStream.ReadWithDelimiter.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataBatchReaderStreamBuffer_ScanForBoundary">
            <summary>Unreachable codepath in ODataBatchReaderStreamBuffer.ScanForBoundary.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataBatchReaderStreamBuffer_ReadWithLength">
            <summary>Unreachable codepath in ODataBatchReaderStreamBuffer.ReadWithLength.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.JsonReader_Read">
            <summary>Unreachable codepath in JsonReader.Read.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataReader_CreateReader_UnreachableCodePath">
            <summary>Unreachable codepath in ODataReader.CreateReader.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataReaderCore_ReadImplementation">
            <summary>Unreachable codepath in ODataReaderCore.ReadImplementation.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataReaderCoreAsync_ReadAsynchronously">
            <summary>Unreachable codepath in ODataReaderCoreAsync.ReadAsynchronously.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataCollectionReader_CreateReader_UnreachableCodePath">
            <summary>Unreachable codepath in ODataCollectionReader.CreateReader.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataCollectionReaderCore_ReadImplementation">
            <summary>Unreachable codepath in ODataCollectionReaderCore.ReadImplementation.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataCollectionReaderCoreAsync_ReadAsynchronously">
            <summary>Unreachable codepath in ODataCollectionReaderCoreAsync.ReadAsynchronously.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataParameterReaderCore_ReadImplementation">
            <summary>Unreachable codepath in ODataParameterReaderCore.ReadImplementation.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataParameterReaderCoreAsync_ReadAsynchronously">
            <summary>Unreachable codepath in ODataParameterReaderCoreAsync.ReadAsynchronously.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataParameterReaderCore_ValueMustBePrimitiveOrNull">
            <summary>The value from the parameter reader must be a primitive value, or null</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataRawValueUtils_ConvertStringToPrimitive">
            <summary>Unreachable codepath in ODataRawValueUtils.ConvertStringToPrimitive.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.EdmCoreModel_PrimitiveType">
            <summary>Unreachable codepath in EdmCoreModel.PrimitiveType (unsupported type).</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ReaderValidationUtils_ResolveAndValidateTypeName_Strict_TypeKind">
            <summary>Unreachable codepath in ReaderValidationUtils.ResolveAndValidateTypeName in the strict branch, unexpected type kind.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ReaderValidationUtils_ResolveAndValidateTypeName_Lax_TypeKind">
            <summary>Unreachable codepath in ReaderValidationUtils.ResolveAndValidateTypeName in the lax branch, unexpected type kind.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataMetadataFormat_CreateOutputContextAsync">
            <summary>The ODataMetadataFormat.CreateOutputContextAsync was called, but this method is not yet supported.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataMetadataFormat_CreateInputContextAsync">
            <summary>The ODataMetadataFormat.CreateInputContextAsync was called, but this method is not yet supported.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataModelFunctions_UnsupportedMethodOrProperty">
            <summary>An unsupported method or property has been called on the IDictionary implementation of the ODataModelFunctions.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataJsonLightPropertyAndValueDeserializer_ReadPropertyValue">
            <summary>Unreachable codepath in ODataJsonLightPropertyAndValueDeserializer.ReadPropertyValue.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataJsonLightPropertyAndValueDeserializer_GetNonEntityValueKind">
            <summary>Unreachable codepath in ODataJsonLightPropertyAndValueDeserializer.GetNonEntityValueKind.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataJsonLightReader_ReadResourceStart">
            <summary>Unreachable codepath in ODataJsonLightReader.ReadResourceStart.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataJsonLightResourceDeserializer_ReadTopLevelResourceSetAnnotations">
            <summary>Unreachable codepath in ODataJsonLightResourceDeserializer.ReadTopLevelResourceSetAnnotations.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataJsonLightCollectionDeserializer_ReadCollectionStart">
            <summary>Unreachable codepath in ODataJsonLightCollectionDeserializer.ReadCollectionStart.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataJsonLightCollectionDeserializer_ReadCollectionStart_TypeKindFromPayloadFunc">
            <summary>Unreachable codepath in ODataJsonLightCollectionDeserializer.ReadCollectionStart.TypeKindFromPayloadFunc.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataJsonLightCollectionDeserializer_ReadCollectionEnd">
            <summary>Unreachable codepath in ODataJsonLightCollectionDeserializer.ReadCollectionEnd.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataJsonLightEntityReferenceLinkDeserializer_ReadSingleEntityReferenceLink">
            <summary>Unreachable codepath in ODataJsonLightEntityReferenceLinkDeserializer.ReadSingleEntityReferenceLink.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataJsonLightEntityReferenceLinkDeserializer_ReadEntityReferenceLinksAnnotations">
            <summary>Unreachable codepath in ODataJsonLightEntityReferenceLinkDeserializer.ReadEntityReferenceLinksAnnotations.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataJsonLightParameterDeserializer_ReadNextParameter">
            <summary>Unreachable codepath in ODataJsonLightParameterDeserializer.ReadNextParameter.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.EdmTypeWriterResolver_GetReturnTypeForOperationImportGroup">
            <summary>Unreachable codepath in EdmTypeWriterResolver.GetReturnType for operation import group.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodes.ODataVersionCache_UnknownVersion">
            <summary>Unreachable codepath in the indexer of ODataVersionCache for unknown versions.</summary>
        </member>
        <member name="T:Microsoft.OData.InternalErrorCodesCommon">
            <summary>
            An enumeration that lists the internal errors that are shared between the OData library and the query library.
            </summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodesCommon.EdmLibraryExtensions_ToTypeReference">
            <summary>Unreachable codepath in EdmLibraryExtensions.ToTypeReference (unsupported type kind).</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodesCommon.EdmLibraryExtensions_ToClrType">
            <summary>Unreachable codepath in EdmLibraryExtensions.ToClrType (unsupported type kind).</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodesCommon.EdmLibraryExtensions_PrimitiveTypeReference">
            <summary>Unreachable codepath in EdmLibraryExtensions.PrimitiveTypeReference (unsupported primitive type kind).</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodesCommon.EdmLibraryExtensions_IsAssignableFrom_Primitive">
            <summary>Unreachable codepath in EdmLibraryExtensions.IsAssignableFrom(IEdmPrimitiveType, IEdmPrimitiveType).</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodesCommon.EdmLibraryExtensions_IsAssignableFrom_Type">
            <summary>Unreachable codepath in EdmLibraryExtensions.IsAssignableFrom(IEdmType, IEdmType).</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodesCommon.EdmLibraryExtensions_BaseType">
            <summary>Unreachable codepath in EdmLibraryExtensions.BaseType.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodesCommon.EdmLibraryExtensions_Clone_TypeKind">
            <summary>Unreachable codepath in EdmLibraryExtensions.Clone for unexpected type kind.</summary>
        </member>
        <member name="F:Microsoft.OData.InternalErrorCodesCommon.EdmLibraryExtensions_Clone_PrimitiveTypeKind">
            <summary>Unreachable codepath in EdmLibraryExtensions.Clone for unexpected primitive type kind.</summary>
        </member>
        <member name="T:Microsoft.OData.IODataBatchOperationListener">
            <summary>
            An interface that allows creators of a <see cref="T:Microsoft.OData.ODataBatchOperationStream"/> to listen for status changes
            of the operation stream.
            </summary>
        </member>
        <member name="M:Microsoft.OData.IODataBatchOperationListener.BatchOperationContentStreamRequested">
            <summary>
            This method notifies the implementer of this interface that the content stream for a batch operation has been requested.
            </summary>
        </member>
        <member name="M:Microsoft.OData.IODataBatchOperationListener.BatchOperationContentStreamRequestedAsync">
            <summary>
            This method notifies the implementer of this interface that the content stream for a batch operation has been requested.
            </summary>
            <returns>
            A task representing any async operation that is running in reaction to the
            status change (or null if no such action is required).
            </returns>
        </member>
        <member name="M:Microsoft.OData.IODataBatchOperationListener.BatchOperationContentStreamDisposed">
            <summary>
            This method notifies the implementer of this interface that the content stream of a batch operation has been disposed.
            </summary>
        </member>
        <member name="T:Microsoft.OData.IODataOutputInStreamErrorListener">
            <summary>
            An interface that allows the implementations of the writers to get notified if an in-stream error is to be written.
            </summary>
        </member>
        <member name="M:Microsoft.OData.IODataOutputInStreamErrorListener.OnInStreamError">
            <summary>
            This method notifies the listener, that an in-stream error is to be written.
            </summary>
            <remarks>
            This listener can choose to fail, if the currently written payload doesn't support in-stream error at this position.
            If the listener returns, the writer should not allow any more writing, since the in-stream error is the last thing in the payload.
            </remarks>
        </member>
        <member name="T:Microsoft.OData.IODataPayloadUriConverter">
            <summary>Supports custom conversion of URLs found in the payload.</summary>
            <remarks>
            This interface can be implemented on messages (see <see cref="T:Microsoft.OData.IODataRequestMessage"/> and
            <see cref="T:Microsoft.OData.IODataResponseMessage"/>). When a message implementing this interface is
            passed to an <see cref="T:Microsoft.OData.ODataMessageWriter"/> or <see cref="T:Microsoft.OData.ODataMessageReader"/>, the
            message writer/reader will use this interface for custom URL conversion.
            On writers this means that whenever a URI is written into the payload the conversion
            method on this interface is called to convert a base URI and a payload URI to the
            actual URI to be written to the payload. If the method returns null from a conversion
            call the default conversion will be used.
            On readers this means that a base URI (either from the payload or the reader settings) and
            the URI read from the payload are passed to the method. The result is what is being reported
            on the OData OM instances. Again if the conversion method returns null the default conversion
            kicks in.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.IODataPayloadUriConverter.ConvertPayloadUri(System.Uri,System.Uri)">
            <summary>Implements a custom URL conversion scheme. This method returns null if no custom conversion is desired. If the method returns a non-null URL that value will be used without further validation.</summary>
            <returns>An instance that reflects the custom conversion of the method arguments into a URL or null if no custom conversion is desired; in that case the default conversion is used.</returns>
            <param name="baseUri">The (optional) base URI to use for the conversion.</param>
            <param name="payloadUri">The URI read from the payload.</param>
        </member>
        <member name="T:Microsoft.OData.IODataReaderWriterListener">
            <summary>
            An interface that allows the creator of a reader/writer to listen for status changes of the created reader/writer.
            </summary>
        </member>
        <member name="M:Microsoft.OData.IODataReaderWriterListener.OnException">
            <summary>
            This method notifies the implementer of this interface that the created reader is in Exception state.
            </summary>
        </member>
        <member name="M:Microsoft.OData.IODataReaderWriterListener.OnCompleted">
            <summary>
            This method notifies the implementer of this interface that the created reader is in Completed state.
            </summary>
        </member>
        <member name="T:Microsoft.OData.IODataRequestMessage">
            <summary>
            Interface for synchronous OData request messages.
            </summary>
        </member>
        <member name="P:Microsoft.OData.IODataRequestMessage.Headers">
            <summary>Gets an enumerable over all the headers for this message.</summary>
            <returns>An enumerable over all the headers for this message.</returns>
        </member>
        <member name="P:Microsoft.OData.IODataRequestMessage.Url">
            <summary>Gets or sets the request URL for this request message.</summary>
            <returns>The request URL for this request message.</returns>
        </member>
        <member name="P:Microsoft.OData.IODataRequestMessage.Method">
            <summary>Gets or sets the HTTP method used for this request message.</summary>
            <returns>The HTTP method used for this request message.</returns>
        </member>
        <member name="M:Microsoft.OData.IODataRequestMessage.GetHeader(System.String)">
            <summary>Returns a value of an HTTP header.</summary>
            <returns>The value of the HTTP header, or null if no such header was present on the message.</returns>
            <param name="headerName">The name of the header to get.</param>
        </member>
        <member name="M:Microsoft.OData.IODataRequestMessage.SetHeader(System.String,System.String)">
            <summary>Sets the value of an HTTP header.</summary>
            <param name="headerName">The name of the header to set.</param>
            <param name="headerValue">The value of the HTTP header or 'null' if the header should be removed.</param>
        </member>
        <member name="M:Microsoft.OData.IODataRequestMessage.GetStream">
            <summary>Gets the stream backing for this message.</summary>
            <returns>The stream backing for this message.</returns>
        </member>
        <member name="T:Microsoft.OData.IODataRequestMessageAsync">
            <summary>
            Interface for asynchronous OData request messages.
            </summary>
        </member>
        <member name="M:Microsoft.OData.IODataRequestMessageAsync.GetStreamAsync">
            <summary>Asynchronously get the stream backing for this message.</summary>
            <returns>The stream for this message.</returns>
        </member>
        <member name="T:Microsoft.OData.IODataResourceTypeContext">
            <summary>
            Interface used for substitutability, to answer basic questions regarding the type of the resource or resource set.
            Metadata may come from a user-provided model or from the SetSerializationInfo() method on a resource set or resource. The latter is considered the "no-model" case since only strings
            are provided, and there is no interconnectedness. The goal of this interface is to provide a way to query the metadata information available on a resource or resource set without
            needing to know where the metadata originated from.
            </summary>
        </member>
        <member name="P:Microsoft.OData.IODataResourceTypeContext.NavigationSourceName">
            <summary>
            The navigation source name of the resource set or resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.IODataResourceTypeContext.NavigationSourceEntityTypeName">
            <summary>
            The entity type name of the navigation source of the resource set or resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.IODataResourceTypeContext.NavigationSourceFullTypeName">
            <summary>
            The full type name of the navigation source of the resource set or resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.IODataResourceTypeContext.NavigationSourceKind">
            <summary>
            The kind of the navigation source of the resource set or resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.IODataResourceTypeContext.ExpectedResourceTypeName">
            <summary>
            The expected entity type name of the resource.
            For example, in the request URI 'http://example.com/Service.svc/People/Namespace.VIP_Person', the expected entity type is Namespace.VIP_Person.
            (The entity set element type name in this example may be Person, and the actual entity type of a particular entity might be a type more derived than VIP_Person)
            </summary>
        </member>
        <member name="P:Microsoft.OData.IODataResourceTypeContext.IsMediaLinkEntry">
            <summary>
            true if the resource is an MLE, false otherwise.
            </summary>
        </member>
        <member name="P:Microsoft.OData.IODataResourceTypeContext.IsFromCollection">
            <summary>
            The flag we use to identify if the current resource is from a navigation property with collection type or not.
            </summary>
        </member>
        <member name="T:Microsoft.OData.IODataResponseMessage">
            <summary>
            Interface for synchronous OData response messages.
            </summary>
        </member>
        <member name="P:Microsoft.OData.IODataResponseMessage.Headers">
            <summary>Gets an enumerable over all the headers for this message.</summary>
            <returns>An enumerable over all the headers for this message.</returns>
        </member>
        <member name="P:Microsoft.OData.IODataResponseMessage.StatusCode">
            <summary>Gets or sets the result status code of the response message.</summary>
            <returns>The result status code of the response message.</returns>
        </member>
        <member name="M:Microsoft.OData.IODataResponseMessage.GetHeader(System.String)">
            <summary>Returns a value of an HTTP header.</summary>
            <returns>The value of the HTTP header, or null if no such header was present on the message.</returns>
            <param name="headerName">The name of the header to get.</param>
        </member>
        <member name="M:Microsoft.OData.IODataResponseMessage.SetHeader(System.String,System.String)">
            <summary>Sets the value of an HTTP header.</summary>
            <param name="headerName">The name of the header to set.</param>
            <param name="headerValue">The value of the HTTP header or 'null' if the header should be removed.</param>
        </member>
        <member name="M:Microsoft.OData.IODataResponseMessage.GetStream">
            <summary>Gets the stream backing for this message.</summary>
            <returns>The stream backing for this message.</returns>
        </member>
        <member name="T:Microsoft.OData.IODataResponseMessageAsync">
            <summary>
            Interface for asynchronous OData response messages.
            </summary>
        </member>
        <member name="M:Microsoft.OData.IODataResponseMessageAsync.GetStreamAsync">
            <summary>Asynchronously get the stream backing for this message.</summary>
            <returns>The stream backing for this message.</returns>
        </member>
        <member name="T:Microsoft.OData.IPrimitiveTypeConverter">
            <summary>
            Interface used for serialization and deserialization of primitive types.
            </summary>
        </member>
        <member name="M:Microsoft.OData.IPrimitiveTypeConverter.WriteAtom(System.Object,System.Xml.XmlWriter)">
            <summary>
            Write the Atom representation of an instance of a primitive type to an XmlWriter.
            </summary>
            <param name="instance">The instance to write.</param>
            <param name="writer">The Xml writer to use to write the instance.</param>
        </member>
        <member name="M:Microsoft.OData.IPrimitiveTypeConverter.WriteAtom(System.Object,System.IO.TextWriter)">
            <summary>
            Write the Atom representation of an instance of a primitive type to an TextWriter.
            </summary>
            <param name="instance">The instance to write.</param>
            <param name="writer">The text writer to use to write the instance.</param>
        </member>
        <member name="M:Microsoft.OData.IPrimitiveTypeConverter.WriteJsonLight(System.Object,Microsoft.OData.Json.IJsonWriter)">
            <summary>
            Write the Json Lite representation of an instance of a primitive type to a json writer.
            </summary>
            <param name="instance">The instance to write.</param>
            <param name="jsonWriter">Instance of JsonWriter.</param>
        </member>
        <member name="T:Microsoft.OData.IReaderValidator">
            <summary>
            Reader validator interface.
            </summary>
        </member>
        <member name="M:Microsoft.OData.IReaderValidator.ValidateMediaResource(Microsoft.OData.ODataResourceBase,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Validates that the specified <paramref name="resource"/> is a valid resource as per the specified type.
            </summary>
            <param name="resource">The resource to validate.</param>
            <param name="resourceType">Optional entity type to validate the resource against.</param>
            <remarks>If the <paramref name="resourceType"/> is available only resource-level tests are performed,
            properties and such are not validated.</remarks>
        </member>
        <member name="M:Microsoft.OData.IReaderValidator.CreatePropertyAndAnnotationCollector">
            <summary>
            Creates a PropertyAndAnnotationCollector instance.
            </summary>
            <returns>The created instance.</returns>
        </member>
        <member name="M:Microsoft.OData.IReaderValidator.ValidateNullValue(Microsoft.OData.Edm.IEdmTypeReference,System.Boolean,System.String,System.Nullable{System.Boolean})">
            <summary>
            Validate a null value.
            </summary>
            <param name="expectedTypeReference">The expected type of the null value.</param>
            <param name="validateNullValue">true to validate the null value; false to only check whether the type is
            supported.</param>
            <param name="propertyName">The name of the property whose value is being read, if applicable
            (used for error reporting).</param>
            <param name="isDynamicProperty">Indicates whether the property is dynamic or unknown.</param>
        </member>
        <member name="M:Microsoft.OData.IReaderValidator.ResolvePayloadTypeNameAndComputeTargetType(Microsoft.OData.Edm.EdmTypeKind,System.Nullable{System.Boolean},Microsoft.OData.Edm.IEdmType,Microsoft.OData.Edm.IEdmTypeReference,System.String,Microsoft.OData.Edm.IEdmModel,System.Func{Microsoft.OData.Edm.EdmTypeKind},Microsoft.OData.Edm.EdmTypeKind@,Microsoft.OData.ODataTypeAnnotation@)">
            <summary>
            Resolves and validates the payload type against the expected type and returns the target type.
            </summary>
            <param name="expectedTypeKind">The expected type kind for the value.</param>
            <param name="expectStructuredType">This value indicates if a structured type is expected to be return.
            True for structured type, false for non-structured type, null for indetermination.</param>
            <param name="defaultPrimitivePayloadType">The default payload type if none is specified in the payload;
            for ATOM this is Edm.String, for JSON it is null since there is no payload type name for primitive types in the payload.</param>
            <param name="expectedTypeReference">The expected type reference, or null if no expected type is available.</param>
            <param name="payloadTypeName">The payload type name, or null if no payload type was specified.</param>
            <param name="model">The model to use.</param>
            <param name="typeKindFromPayloadFunc">A func to compute the type kind from the payload shape if it could not be determined from the expected type or the payload type.</param>
            <param name="targetTypeKind">The target type kind to be used to read the payload.</param>
            <param name="typeAnnotation">Potentially non-null instance of an annotation to put on the value reported from the reader.</param>
            <returns>
            The target type reference to use for parsing the value.
            If there is no user specified model, this will return null.
            If there is a user specified model, this method never returns null.
            </returns>
            <remarks>
            This method cannot be used for primitive type resolution. Primitive type resolution is format dependent and format specific methods should be used instead.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.IReaderValidator.ValidatePropertyDefined(System.String,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Validates that a property with the specified name exists on a given structured type.
            The structured type can be null if no metadata is available.
            </summary>
            <param name="propertyName">The name of the property to validate.</param>
            <param name="owningStructuredType">The owning type of the property with name <paramref name="propertyName"/>
            or null if no metadata is available.</param>
            <returns>The <see cref="T:Microsoft.OData.Edm.IEdmProperty"/> instance representing the property with name <paramref name="propertyName"/>
            or null if no metadata is available.</returns>
        </member>
        <member name="M:Microsoft.OData.IReaderValidator.ValidateStreamReferenceProperty(Microsoft.OData.ODataProperty,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.Edm.IEdmProperty)">
            <summary>
            Validates a stream reference property.
            </summary>
            <param name="streamProperty">The stream property to check.</param>
            <param name="structuredType">The owning type of the stream property or null if no metadata is available.</param>
            <param name="streamEdmProperty">The stream property defined by the model.</param>
        </member>
        <member name="T:Microsoft.OData.IWriterValidator">
            <summary>
            Writer validator interface.
            </summary>
        </member>
        <member name="M:Microsoft.OData.IWriterValidator.CreateDuplicatePropertyNameChecker">
            <summary>
            Creates a DuplicatePropertyNameChecker instance.
            </summary>
            <returns>The created instance.</returns>
        </member>
        <member name="M:Microsoft.OData.IWriterValidator.ValidateResourceInNestedResourceInfo(Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Validates a resource in an expanded link to make sure that the types match.
            </summary>
            <param name="resourceType">The <see cref="T:Microsoft.OData.Edm.IEdmStructuredType"/> of the resource.</param>
            <param name="parentNavigationPropertyType">The type of the parent navigation property or
            complex property or complex collection property.</param>
        </member>
        <member name="M:Microsoft.OData.IWriterValidator.ValidateNestedResourceInfoHasCardinality(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            Validates that the specified nested resource info has cardinality set, i.e., it has the
            IsCollection value set.
            </summary>
            <param name="nestedResourceInfo">The nested resource info to validate.</param>
        </member>
        <member name="M:Microsoft.OData.IWriterValidator.ValidateOpenPropertyValue(System.String,System.Object)">
            <summary>
            Validates that an open property value is supported.
            </summary>
            <param name="propertyName">The name of the open property.</param>
            <param name="value">The value of the open property.</param>
        </member>
        <member name="M:Microsoft.OData.IWriterValidator.ValidateIsExpectedPrimitiveType(System.Object,Microsoft.OData.Edm.IEdmPrimitiveTypeReference,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Validates that a given primitive value is of the expected (primitive) type.
            </summary>
            <param name="value">The value to check.</param>
            <param name="valuePrimitiveTypeReference">The primitive type reference for the value.
            So some callers have this already, and we save the lookup here.</param>
            <param name="expectedTypeReference">The expected type for the value.</param>
            <remarks>
            Some callers have the primitive type reference already resolved (from the value type),
            and the method will not lookup the primitive type reference again.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.IWriterValidator.ValidateTypeReference(Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Validates the value type reference against metadata.
            </summary>
            <param name="typeReferenceFromMetadata">The metadata type reference.</param>
            <param name="typeReferenceFromValue">The value type reference.</param>
        </member>
        <member name="M:Microsoft.OData.IWriterValidator.ValidateTypeKind(Microsoft.OData.Edm.EdmTypeKind,Microsoft.OData.Edm.EdmTypeKind,System.Nullable{System.Boolean},Microsoft.OData.Edm.IEdmType)">
            <summary>
            Validates that the observed type kind is the expected type kind.
            </summary>
            <param name="actualTypeKind">The actual type kind.</param>
            <param name="expectedTypeKind">The expected type kind.</param>
            <param name="expectStructuredType">This value indicates if the <paramref name="actualTypeKind"/> is expected to be complex or entity.
            True for complex or entity, false for non-structured type kind, null for indetermination.</param>
            <param name="edmType">The edm type to use in the error.</param>
        </member>
        <member name="M:Microsoft.OData.IWriterValidator.ValidateMetadataResource(Microsoft.OData.ODataResourceBase,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Validates that the specified <paramref name="resource"/> is a valid resource as per the
            specified type.
            </summary>
            <param name="resource">The resource to validate.</param>
            <param name="resourceType">Optional entity type to validate the resource against.</param>
            <remarks>
            If the <paramref name="resourceType"/> is available, only resource-level tests are
            performed; properties and such are not validated.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.IWriterValidator.ValidateNullPropertyValue(Microsoft.OData.Edm.IEdmTypeReference,System.String,System.Boolean,Microsoft.OData.Edm.IEdmModel)">
            <summary>
            Validates that the expected property allows null value.
            </summary>
            <param name="expectedPropertyTypeReference">The expected property type or null if we
            don't have any.</param>
            <param name="propertyName">The name of the property.</param>
            <param name="isTopLevel">true if the property is top-level.</param>
            <param name="model">The model used to get the OData version.</param>
        </member>
        <member name="M:Microsoft.OData.IWriterValidator.ValidateNullCollectionItem(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Validates a null collection item against the expected type.
            </summary>
            <param name="expectedItemType">The expected item type or null if none.</param>
        </member>
        <member name="M:Microsoft.OData.IWriterValidator.ValidatePropertyDefined(System.String,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Validates that a property with the specified name exists on a given structured type.
            The structured type can be null if no metadata is available.
            </summary>
            <param name="propertyName">Name of the property.</param>
            <param name="owningStructuredType">Hosting type of the property or null if no metadata is
            available.</param>
            <returns>An <see cref="T:Microsoft.OData.Edm.IEdmProperty"/> instance representing the specified property or
            null if no metadata is available.</returns>
        </member>
        <member name="M:Microsoft.OData.IWriterValidator.ValidateNestedResourceInfo(Microsoft.OData.ODataNestedResourceInfo,Microsoft.OData.Edm.IEdmStructuredType,System.Nullable{Microsoft.OData.ODataPayloadKind})">
            <summary>
            Validates an <see cref="T:Microsoft.OData.ODataNestedResourceInfo"/> to ensure all required information is specified and valid.
            </summary>
            <param name="nestedResourceInfo">The nested resource info to validate.</param>
            <param name="declaringStructuredType">The <see cref="T:Microsoft.OData.Edm.IEdmStructuredType"/> declaring the structural property or navigation property; or null if metadata is not available.</param>
            <param name="expandedPayloadKind">The <see cref="T:Microsoft.OData.ODataPayloadKind"/> of the expanded content of this nested resource info or null for deferred links.</param>
            <returns>The type of the navigation property for this nested resource info; or null if no <paramref name="declaringStructuredType"/> was specified.</returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState">
            <summary>
            Interface representing a state of the JSON reader for resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState.Resource">
            <summary>
            The resource being read.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState.ResourceType">
            <summary>
            The structured type for the resource (if available)
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState.ResourceTypeFromMetadata">
            <summary>
            The expected type defined in the model for the resource (if available)
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState.NavigationSource">
            <summary>
            The navigation source for the resource (if available)
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState.MetadataBuilder">
            <summary>
            The metadata builder instance for the resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState.AnyPropertyFound">
            <summary>
            Flag which indicates that during parsing of the resource represented by this state,
            any property which is not an instance annotation was found. This includes property annotations
            for property which is not present in the payload.
            </summary>
            <remarks>
            This is used to detect incorrect ordering of the payload (for example odata.id must not come after the first property).
            </remarks>
        </member>
        <member name="P:Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState.FirstNestedResourceInfo">
            <summary>
            If the reader finds a nested resource info to report, but it must first report the parent resource
            it will store the nested resource info in this property. So this will only ever store the first nested resource info of a resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState.PropertyAndAnnotationCollector">
            <summary>
            The duplicate property names checker for the resource represented by the current state. May be null.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState.SelectedProperties">
            <summary>
            The selected properties that should be expanded during template evaluation.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState.NavigationPropertiesRead">
            <summary>
            The set of names of the navigation properties we have read so far while reading the resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState.ProcessingMissingProjectedNestedResourceInfos">
            <summary>
            true if we have started processing missing projected navigation links, false otherwise.
            </summary>
        </member>
        <member name="T:Microsoft.OData.JsonLight.IODataJsonLightWriterResourceState">
            <summary>
            Interface representing a state of the JSON writer for resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.IODataJsonLightWriterResourceState.Resource">
            <summary>
            The resource being written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.IODataJsonLightWriterResourceState.ResourceType">
            <summary>
            The structured type for the resource (if available)
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.IODataJsonLightWriterResourceState.ResourceTypeFromMetadata">
            <summary>
            The structured type which was derived from the model (may be either the same as structured type or its base type).
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.IODataJsonLightWriterResourceState.SerializationInfo">
            <summary>
            The serialization info for the current resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.IODataJsonLightWriterResourceState.IsUndeclared">
            <summary>
            The current resource is for undeclared property or not.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.IODataJsonLightWriterResourceState.EditLinkWritten">
            <summary>
            Flag which indicates that the odata.editLink metadata property has been written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.IODataJsonLightWriterResourceState.ReadLinkWritten">
            <summary>
            Flag which indicates that the odata.readLink metadata property has been written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.IODataJsonLightWriterResourceState.MediaEditLinkWritten">
            <summary>
            Flag which indicates that the odata.mediaEditLink metadata property has been written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.IODataJsonLightWriterResourceState.MediaReadLinkWritten">
            <summary>
            Flag which indicates that the odata.mediaReadLink metadata property has been written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.IODataJsonLightWriterResourceState.MediaContentTypeWritten">
            <summary>
            Flag which indicates that the odata.mediaContentType metadata property has been written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.IODataJsonLightWriterResourceState.MediaETagWritten">
            <summary>
            Flag which indicates that the odata.mediaEtag metadata property has been written.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.IODataJsonLightWriterResourceState.GetOrCreateTypeContext(System.Boolean)">
            <summary>
            Gets or creates the type context to answer basic questions regarding the type info of the resource.
            </summary>
            <param name="writingResponse">True if writing a response payload, false otherwise.</param>
            <returns>The type context to answer basic questions regarding the type info of the resource.</returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.JsonFullMetadataLevel">
            <summary>
            Class responsible for logic specific to the JSON Light full metadata level (indicated by "odata.metadata=full" in the media type).
            </summary>
            <remarks>
            The general rule-of-thumb for full-metadata payloads is that they include all "odata.*" annotations that would be included in minimal metadata mode,
            plus any "odata.*" annotations that could be computed client-side if we the client had a model.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonFullMetadataLevel.model">
            <summary>
            The Edm model.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonFullMetadataLevel.metadataDocumentUri">
            <summary>
            The metadata document uri from the writer settings.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonFullMetadataLevel.#ctor(System.Uri,Microsoft.OData.Edm.IEdmModel)">
            <summary>
            Constructs a new <see cref="T:Microsoft.OData.JsonLight.JsonFullMetadataLevel"/>.
            </summary>
            <param name="metadataDocumentUri">The metadata document uri from the writer settings.</param>
            <param name="model">The Edm model.</param>
        </member>
        <member name="P:Microsoft.OData.JsonLight.JsonFullMetadataLevel.NonNullMetadataDocumentUri">
            <summary>
            Returns the metadata document URI which has been validated to be non-null.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonFullMetadataLevel.GetTypeNameOracle">
            <summary>
            Returns the oracle to use when determing the type name to write for entries and values.
            </summary>
            <returns>An oracle that can be queried to determine the type name to write.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonFullMetadataLevel.CreateResourceMetadataBuilder(Microsoft.OData.ODataResourceBase,Microsoft.OData.IODataResourceTypeContext,Microsoft.OData.ODataResourceSerializationInfo,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.SelectedPropertiesNode,System.Boolean,System.Boolean,Microsoft.OData.ODataUri)">
            <summary>
            Creates the metadata builder for the given resource. If such a builder is set, asking for payload
            metadata properties (like EditLink) of the resource may return a value computed by convention,
            depending on the metadata level and whether the user manually set an edit link or not.
            </summary>
            <param name="resource">The resource to create the metadata builder for.</param>
            <param name="typeContext">The context object to answer basic questions regarding the type of the resource or resource set.</param>
            <param name="serializationInfo">The serialization info for the resource.</param>
            <param name="actualResourceType">The structured type of the resource.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="isResponse">true if the resource metadata builder to create should be for a response payload; false for a request.</param>
            <param name="keyAsSegment">true if keys should go in separate segments in auto-generated URIs, false if they should go in parentheses.</param>
            <param name="odataUri">The OData Uri.</param>
            <returns>The created metadata builder.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonFullMetadataLevel.InjectMetadataBuilder(Microsoft.OData.ODataResourceBase,Microsoft.OData.Evaluation.ODataResourceMetadataBuilder)">
            <summary>
            Injects the appropriate metadata builder based on the metadata level.
            </summary>
            <param name="resource">The resource to inject the builder.</param>
            <param name="builder">The metadata builder to inject.</param>
        </member>
        <member name="T:Microsoft.OData.JsonLight.JsonFullMetadataTypeNameOracle">
            <summary>
            Class responsible for determining the type name that should be written on the wire for entries and values in JSON full metadata mode.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonFullMetadataTypeNameOracle.GetResourceSetTypeNameForWriting(System.String,Microsoft.OData.ODataResourceSet,System.Boolean)">
            <summary>
            Determines the resource set type name to write to the payload.
            </summary>
            <param name="expectedResourceTypeName">The expected resource type name of the items in the resource set.</param>
            <param name="resourceSet">The ODataResourceSet whose type is to be written.</param>
            <param name="isUndeclared">true if the resource set is for some undeclared property</param>
            <returns>Type name to write to the payload, or null if no type name should be written.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonFullMetadataTypeNameOracle.GetResourceTypeNameForWriting(System.String,Microsoft.OData.ODataResourceBase,System.Boolean)">
            <summary>
            Determines the resource type name to write to the payload.
            </summary>
            <param name="expectedTypeName">The expected type name, e.g. the base type of the an entity set or a collection of complex or the nav prop or a complex property.</param>
            <param name="resource">The ODataResource whose type is to be written.</param>
            <param name="isUndeclared">true if the ODataResource is for some undeclared property</param>
            <returns>Type name to write to the payload, or null if no type name should be written.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonFullMetadataTypeNameOracle.GetValueTypeNameForWriting(Microsoft.OData.ODataValue,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.Edm.IEdmTypeReference,System.Boolean)">
            <summary>
            Determines the type name to write to the payload. Json Light type names are only written into the payload for open properties
            or if the payload type name is more derived than the model type name.
            </summary>
            <param name="value">The ODataValue whose type name is to be written.</param>
            <param name="typeReferenceFromMetadata">The type as expected by the model.</param>
            <param name="typeReferenceFromValue">The type resolved from the value.</param>
            <param name="isOpenProperty">true if the type name belongs to an open property, false otherwise.</param>
            <returns>Type name to write to the payload, or null if no type should be written.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonFullMetadataTypeNameOracle.GetValueTypeNameForWriting(Microsoft.OData.ODataValue,Microsoft.OData.PropertySerializationInfo,System.Boolean)">
            <summary>
            Determines the type name to write to the payload. Json Light type names are only written into the payload for open properties
            or if the payload type name is more derived than the model type name.
            </summary>
            <param name="value">The ODataValue whose type name is to be written.</param>
            <param name="propertyInfo">The serialization info of current property</param>
            <param name="isOpenProperty">true if the type name belongs to an open property, false otherwise.</param>
            <returns>Type name to write to the payload, or null if no type should be written.</returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.JsonLightConstants">
            <summary>
            Constants for the JSON Lite format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ODataAnnotationNamespacePrefix">
            <summary>The prefix for OData annotation names.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ODataPropertyAnnotationSeparatorChar">
            <summary>The separator of property annotations.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ODataNullPropertyName">
            <summary>
            The 'null' property name for the Json Light value property.
            This is an OData 3.0 protocol element used for compatibility
            with 6.x library version.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ODataNullAnnotationTrueValue">
            <summary>The value 'true' for the OData null annotation.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ODataValuePropertyName">
            <summary>The 'value' property name for the Json Light value property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ODataErrorPropertyName">
            <summary>The 'error' property name for the Json Light value property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ODataSourcePropertyName">
            <summary>The 'source' property name for the Json Light value property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ODataTargetPropertyName">
            <summary>The 'target' property name for the Json Light value property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ODataRelationshipPropertyName">
            <summary>The 'relationship' property name for the Json Light value property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ODataIdPropertyName">
            <summary>The 'id' property name for the Json Light value property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ODataDeltaPropertyName">
            <summary>The 'delta' property name for the Json Light value property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ODataReasonPropertyName">
            <summary>The 'reason' property name for the Json Light value property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ODataReasonChangedValue">
            <summary>The value 'changed' for the Json Light 'reason' property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ODataReasonDeletedValue">
            <summary>The value 'deleted' for the Json Light 'reason' property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ODataServiceDocumentElementUrlName">
            <summary>The name of the property returned for a URL of a service document element.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ODataServiceDocumentElementTitle">
            <summary>The string used for the title attribute for the service document element.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ODataServiceDocumentElementKind">
            <summary>The string used for the kind attribute for the service document element.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ODataServiceDocumentElementName">
            <summary>The name of the property returned for a name of a service document element.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ContextUriSelectQueryOptionName">
            <summary>The name of the $select query option.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ContextUriQueryOptionValueSeparator">
            <summary>The '=' character used to separate a query option name from its value.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ContextUriQueryOptionSeparator">
            <summary>The '&amp;' separator character between query options.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.FunctionParameterStart">
            <summary>The '(' used to mark the start of function parameters in the fragment of a context URI.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.FunctionParameterEnd">
            <summary>The ')' used to mark the end of function parameters in the fragment of a context URI.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.FunctionParameterSeparator">
            <summary>The "," to use as the separator for the function parameters in the fragment of a context URI.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.FunctionParameterSeparatorChar">
            <summary>The ',' to use as the separator for the function parameters.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.FunctionParameterAssignment">
            <summary> THe "=@" to use as the separator for the function parameter in target.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ServiceDocumentSingletonKindName">
            <summary> The kind name of the service document singleton element. </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ServiceDocumentFunctionImportKindName">
            <summary> The kind name of the service document function import element. </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.ServiceDocumentEntitySetKindName">
            <summary> The kind name of the service document entity set element. </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.SimplifiedODataContextPropertyName">
            <summary>The simplified OData Context property name.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.SimplifiedODataIdPropertyName">
            <summary>The simplified OData Id property name.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.SimplifiedODataTypePropertyName">
            <summary>The simplified OData Type property name.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightConstants.SimplifiedODataRemovedPropertyName">
            <summary>The simplified Removed property name.</summary>
        </member>
        <member name="T:Microsoft.OData.JsonLight.JsonLightMetadataLevel">
            <summary>
            Class responsible for logic that varies based on the JSON Light metadata level.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonLightMetadataLevel.Create(Microsoft.OData.ODataMediaType,System.Uri,Microsoft.OData.Edm.IEdmModel,System.Boolean)">
            <summary>
            Creates the appropriate metadata level based on the media type being written.
            </summary>
            <param name="mediaType">The full media type being written. This media type must have a type/subtype of "application/json".</param>
            <param name="metadataDocumentUri">The metadata document uri from the writer settings.</param>
            <param name="model">The edm model.</param>
            <param name="writingResponse">true if we are writing a response, false otherwise.</param>
            <returns>The JSON Light metadata level being written.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonLightMetadataLevel.GetTypeNameOracle">
            <summary>
            Returns the oracle to use when determing the type name to write for entries and values.
            </summary>
            <returns>An oracle that can be queried to determine the type name to write.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonLightMetadataLevel.CreateResourceMetadataBuilder(Microsoft.OData.ODataResourceBase,Microsoft.OData.IODataResourceTypeContext,Microsoft.OData.ODataResourceSerializationInfo,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.SelectedPropertiesNode,System.Boolean,System.Boolean,Microsoft.OData.ODataUri)">
            <summary>
            Creates the metadata builder for the given resource. If such a builder is set, asking for payload
            metadata properties (like EditLink) of the resource may return a value computed by convention,
            depending on the metadata level and whether the user manually set an edit link or not.
            </summary>
            <param name="resource">The resource to create the metadata builder for.</param>
            <param name="typeContext">The context object to answer basic questions regarding the type of the resource or resource set.</param>
            <param name="serializationInfo">The serialization info for the resource.</param>
            <param name="actualResourceType">The structured type of the resource.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="isResponse">true if the resource metadata builder to create should be for a response payload; false for a request.</param>
            <param name="keyAsSegment">true if keys should go in separate segments in auto-generated URIs, false if they should go in parentheses.
            A null value means the user hasn't specified a preference and we should look for an annotation in the entity container, if available.</param>
            <param name="odataUri">The OData Uri.</param>
            <returns>The created metadata builder.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonLightMetadataLevel.InjectMetadataBuilder(Microsoft.OData.ODataResourceBase,Microsoft.OData.Evaluation.ODataResourceMetadataBuilder)">
            <summary>
            Injects the appropriate metadata builder based on the metadata level.
            </summary>
            <param name="resource">The resource to inject the builder.</param>
            <param name="builder">The metadata builder to inject.</param>
        </member>
        <member name="T:Microsoft.OData.JsonLight.JsonLightODataAnnotationWriter">
            <summary>
            JsonLight writer for OData annotations, i.e., odata.*
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightODataAnnotationWriter.ODataAnnotationPrefixLength">
            <summary>
            Length of "odata.".
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightODataAnnotationWriter.jsonWriter">
            <summary>
            The underlying JSON writer.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightODataAnnotationWriter.enableWritingODataAnnotationWithoutPrefix">
            <summary>
            Whether write odata annotation without "odata." prefix in name.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.JsonLightODataAnnotationWriter.odataVersion">
            <summary>
            OData Version to use when writing OData annotations.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonLightODataAnnotationWriter.#ctor(Microsoft.OData.Json.IJsonWriter,System.Boolean,System.Nullable{Microsoft.OData.ODataVersion})">
            <summary>
            Constructor.
            </summary>
            <param name="jsonWriter">The underlying JSON writer.</param>
            <param name="enableWritingODataAnnotationWithoutPrefix">Whether write odata annotation without "odata." prefix in name.</param>
            <param name="odataVersion">OData Version used when writing the annotations.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonLightODataAnnotationWriter.WriteODataTypeInstanceAnnotation(System.String,System.Boolean)">
            <summary>
            Writes the odata.type instance annotation with the specified type name.
            </summary>
            <param name="typeName">The type name to write.</param>
            <param name="writeRawValue">Whether to write the raw typeName without removing/adding prefix 'Edm.'/'#'.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonLightODataAnnotationWriter.WriteODataTypePropertyAnnotation(System.String,System.String)">
            <summary>
            Writes the odata.type property annotation for the specified property with the specified type name.
            </summary>
            <param name="propertyName">The name of the property for which to write the odata.type annotation.</param>
            <param name="typeName">The type name to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonLightODataAnnotationWriter.WritePropertyAnnotationName(System.String,System.String)">
            <summary>
            Write a JSON property name which represents a property annotation.
            </summary>
            <param name="propertyName">The name of the property to annotate.</param>
            <param name="annotationName">The name of the annotation to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonLightODataAnnotationWriter.WriteInstanceAnnotationName(System.String)">
            <summary>
            Write a JSON instance annotation name which represents a instance annotation.
            </summary>
            <param name="annotationName">The name of the instance annotation to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonLightODataAnnotationWriter.SimplifyODataAnnotationName(System.String)">
            <summary>
            Simplify OData annotation name if necessary.
            </summary>
            <param name="annotationName">The annotation name to be simplified.</param>
            <returns>The simplified annotation name.</returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.JsonLightTypeNameOracle">
            <summary>
            Class responsible for determining the type name that should be written on the wire for entries and values in JSON Light.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonLightTypeNameOracle.GetResourceSetTypeNameForWriting(System.String,Microsoft.OData.ODataResourceSet,System.Boolean)">
            <summary>
            Determines the resource set type name to write to the payload.
            </summary>
            <param name="expectedResourceTypeName">The expected resource type name of the items in the resource set.</param>
            <param name="resourceSet">The ODataResourceSet whose type is to be written.</param>
            <param name="isUndeclared">true if the resource set is for some undeclared property.</param>
            <returns>Type name to write to the payload, or null if no type name should be written.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonLightTypeNameOracle.GetResourceTypeNameForWriting(System.String,Microsoft.OData.ODataResourceBase,System.Boolean)">
            <summary>
            Determines the entity type name to write to the payload.
            </summary>
            <param name="expectedTypeName">The expected type name, e.g. the base type of the set or the nav prop.</param>
            <param name="resource">The ODataResource whose type is to be written.</param>
            <param name="isUndeclared">true if the resource is for some undeclared property.</param>
            <returns>Type name to write to the payload, or null if no type name should be written.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonLightTypeNameOracle.GetValueTypeNameForWriting(Microsoft.OData.ODataValue,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.Edm.IEdmTypeReference,System.Boolean)">
            <summary>
            Determines the type name to write to the payload. Json Light type names are only written into the payload for open properties
            or if the payload type name is more derived than the model type name.
            </summary>
            <param name="value">The ODataValue whose type name is to be written.</param>
            <param name="typeReferenceFromMetadata">The type as expected by the model.</param>
            <param name="typeReferenceFromValue">The type resolved from the value.</param>
            <param name="isOpenProperty">true if the type name belongs to an open property, false otherwise.</param>
            <returns>Type name to write to the payload, or null if no type should be written.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonLightTypeNameOracle.GetValueTypeNameForWriting(Microsoft.OData.ODataValue,Microsoft.OData.PropertySerializationInfo,System.Boolean)">
            <summary>
            Determines the type name to write to the payload. Json Light type names are only written into the payload for open properties
            or if the payload type name is more derived than the model type name.
            </summary>
            <param name="value">The ODataValue whose type name is to be written.</param>
            <param name="propertyInfo">The serialization info of current property</param>
            <param name="isOpenProperty">true if the type name belongs to an open property, false otherwise.</param>
            <returns>Type name to write to the payload, or null if no type should be written.</returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.JsonMinimalMetadataLevel">
            <summary>
            Class responsible for logic specific to the JSON Light minimal metadata level (indicated by "odata.metadata=minimal" in the media type, or lack of an "odata" parameter in a v3 and above request).
            </summary>
            <remarks>
            The general rule-of-thumb for minimal-metadata payloads is that they include all "odata.*" annotations that can't be computed client-side, assuming the client has the server model available
            as well as the ability to compute missing payload metadata based on the standard conventions.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonMinimalMetadataLevel.GetTypeNameOracle">
            <summary>
            Returns the oracle to use when determing the type name to write for entries and values.
            </summary>
            <returns>An oracle that can be queried to determine the type name to write.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonMinimalMetadataLevel.CreateResourceMetadataBuilder(Microsoft.OData.ODataResourceBase,Microsoft.OData.IODataResourceTypeContext,Microsoft.OData.ODataResourceSerializationInfo,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.SelectedPropertiesNode,System.Boolean,System.Boolean,Microsoft.OData.ODataUri)">
            <summary>
            Creates the metadata builder for the given resource. If such a builder is set, asking for payload
            metadata properties (like EditLink) of the resource may return a value computed by convention,
            depending on the metadata level and whether the user manually set an edit link or not.
            </summary>
            <param name="resource">The resource to create the metadata builder for.</param>
            <param name="typeContext">The context object to answer basic questions regarding the type of the resource or resource set.</param>
            <param name="serializationInfo">The serialization info for the resource.</param>
            <param name="actualResourceType">The structured type of the resource.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="isResponse">true if the resource metadata builder to create should be for a response payload; false for a request.</param>
            <param name="keyAsSegment">true if keys should go in separate segments in auto-generated URIs, false if they should go in parentheses.</param>
            <param name="odataUri">The OData Uri.</param>
            <returns>The created metadata builder.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonMinimalMetadataLevel.InjectMetadataBuilder(Microsoft.OData.ODataResourceBase,Microsoft.OData.Evaluation.ODataResourceMetadataBuilder)">
            <summary>
            Injects the appropriate metadata builder based on the metadata level.
            </summary>
            <param name="resource">The resource to inject the builder.</param>
            <param name="builder">The metadata builder to inject.</param>
        </member>
        <member name="T:Microsoft.OData.JsonLight.JsonMinimalMetadataTypeNameOracle">
            <summary>
            Class responsible for determining the type name that should be written on the wire for entries and values in JSON minimal metadata mode,
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonMinimalMetadataTypeNameOracle.GetResourceSetTypeNameForWriting(System.String,Microsoft.OData.ODataResourceSet,System.Boolean)">
            <summary>
            Determines the resource set type name to write to the payload.
            </summary>
            <param name="expectedResourceTypeName">The expected resource type name of the items in the resource set.</param>
            <param name="resourceSet">The ODataResourceSet whose type is to be written.</param>
            <param name="isUndeclared">true if the resource set is for some undeclared property</param>
            <returns>Type name to write to the payload, or null if no type name should be written.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonMinimalMetadataTypeNameOracle.GetResourceTypeNameForWriting(System.String,Microsoft.OData.ODataResourceBase,System.Boolean)">
            <summary>
            Determines the entity type name to write to the payload.
            </summary>
            <param name="expectedTypeName">The expected type name, e.g. the base type of the set or the nav prop.</param>
            <param name="resource">The ODataResource whose type is to be written.</param>
            <param name="isUndeclared">true if the ODataResource is for some undeclared property</param>
            <returns>Type name to write to the payload, or null if no type name should be written.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonMinimalMetadataTypeNameOracle.GetValueTypeNameForWriting(Microsoft.OData.ODataValue,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.Edm.IEdmTypeReference,System.Boolean)">
            <summary>
            Determines the type name to write to the payload. Json Light type names are only written into the payload for open properties
            or if the payload type name is more derived than the model type name.
            </summary>
            <param name="value">The ODataValue whose type name is to be written.</param>
            <param name="typeReferenceFromMetadata">The type as expected by the model.</param>
            <param name="typeReferenceFromValue">The type resolved from the value.</param>
            <param name="isOpenProperty">true if the type name belongs to an open property, false otherwise.</param>
            <returns>Type name to write to the payload, or null if no type should be written.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonMinimalMetadataTypeNameOracle.GetValueTypeNameForWriting(Microsoft.OData.ODataValue,Microsoft.OData.PropertySerializationInfo,System.Boolean)">
            <summary>
            Determines the type name to write to the payload. Json Light type names are only written into the payload for open properties
            or if the payload type name is more derived than the model type name.
            </summary>
            <param name="value">The ODataValue whose type name is to be written.</param>
            <param name="propertyInfo">The serialization info of current property</param>
            <param name="isOpenProperty">true if the type name belongs to an open property, false otherwise.</param>
            <returns>Type name to write to the payload, or null if no type should be written.</returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.JsonNoMetadataLevel">
            <summary>
            Class responsible for logic specific to the JSON Light no metadata level (indicated by "odata.metadata=none" in the media type).
            </summary>
            <remarks>
            The general rule-of-thumb for no-metadata payloads is that they omit any "odata.*" annotations,
            except for odata.nextlink and odata.count, since the client would get a inaccurate representation of the data available if they were left out.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonNoMetadataLevel.GetTypeNameOracle">
            <summary>
            Returns the oracle to use when determing the type name to write for entries and values.
            </summary>
            <returns>An oracle that can be queried to determine the type name to write.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonNoMetadataLevel.CreateResourceMetadataBuilder(Microsoft.OData.ODataResourceBase,Microsoft.OData.IODataResourceTypeContext,Microsoft.OData.ODataResourceSerializationInfo,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.SelectedPropertiesNode,System.Boolean,System.Boolean,Microsoft.OData.ODataUri)">
            <summary>
            Creates the metadata builder for the given resource. If such a builder is set, asking for payload
            metadata properties (like EditLink) of the resource may return a value computed by convention,
            depending on the metadata level and whether the user manually set an edit link or not.
            </summary>
            <param name="resource">The resource to create the metadata builder for.</param>
            <param name="typeContext">The context object to answer basic questions regarding the type of the resource or resource set.</param>
            <param name="serializationInfo">The serialization info for the resource.</param>
            <param name="actualResourceType">The structured type of the resource.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="isResponse">true if the resource metadata builder to create should be for a response payload; false for a request.</param>
            <param name="keyAsSegment">true if keys should go in separate segments in auto-generated URIs, false if they should go in parentheses.</param>
            <param name="odataUri">The OData Uri.</param>
            <returns>The created metadata builder.</returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.JsonNoMetadataTypeNameOracle">
            <summary>
            Class responsible for determining the type name that should be written on the wire for entries and values in JSON no metadata mode.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonNoMetadataTypeNameOracle.GetResourceSetTypeNameForWriting(System.String,Microsoft.OData.ODataResourceSet,System.Boolean)">
            <summary>
            Determines the resource set type name to write to the payload.
            </summary>
            <param name="expectedResourceTypeName">The expected resource type name of the items in the resource set.</param>
            <param name="resourceSet">The ODataResourceSet whose type is to be written.</param>
            <param name="isUndeclared">true if the resource set is for some undeclared property</param>
            <returns>Type name to write to the payload, or null if no type name should be written.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonNoMetadataTypeNameOracle.GetResourceTypeNameForWriting(System.String,Microsoft.OData.ODataResourceBase,System.Boolean)">
            <summary>
            Determines the entity type name to write to the payload.
            </summary>
            <param name="expectedTypeName">The expected type name, e.g. the base type of the set or the nav prop.</param>
            <param name="resource">The ODataResource whose type is to be written.</param>
            <param name="isUndeclared">true if the ODataResource is for some undeclared property</param>
            <returns>Type name to write to the payload, or null if no type name should be written.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonNoMetadataTypeNameOracle.GetValueTypeNameForWriting(Microsoft.OData.ODataValue,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.Edm.IEdmTypeReference,System.Boolean)">
            <summary>
            Determines the type name to write to the payload. Json Light type names are only written into the payload for open properties
            or if the payload type name is more derived than the model type name.
            </summary>
            <param name="value">The ODataValue whose type name is to be written.</param>
            <param name="typeReferenceFromMetadata">The type as expected by the model.</param>
            <param name="typeReferenceFromValue">The type resolved from the value.</param>
            <param name="isOpenProperty">true if the type name belongs to an open property, false otherwise.</param>
            <returns>Type name to write to the payload, or null if no type should be written.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.JsonNoMetadataTypeNameOracle.GetValueTypeNameForWriting(Microsoft.OData.ODataValue,Microsoft.OData.PropertySerializationInfo,System.Boolean)">
            <summary>
            Determines the type name to write to the payload. Json Light type names are only written into the payload for open properties
            or if the payload type name is more derived than the model type name.
            </summary>
            <param name="value">The ODataValue whose type name is to be written.</param>
            <param name="propertyInfo">The serialization info of current property</param>
            <param name="isOpenProperty">true if the type name belongs to an open property, false otherwise.</param>
            <returns>Type name to write to the payload, or null if no type should be written.</returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataAnnotationNames">
            <summary>
            Well known OData annotation names reserved for OData Lib.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataAnnotationNames.KnownODataAnnotationNames">
            <summary>
            Hash set of known odata annotation names that have special meanings to OData Lib.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataAnnotationNames.ODataContext">
            <summary>The OData Context annotation name.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataAnnotationNames.ODataType">
            <summary>The OData Type annotation name.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataAnnotationNames.ODataId">
            <summary>The OData ID annotation name.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataAnnotationNames.ODataETag">
            <summary>The OData etag annotation name.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataAnnotationNames.ODataEditLink">
            <summary>The OData edit link annotation name.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataAnnotationNames.ODataReadLink">
            <summary>The OData read link annotation name.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataAnnotationNames.ODataMediaEditLink">
            <summary>The OData media edit link annotation name.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataAnnotationNames.ODataMediaReadLink">
            <summary>The OData media read link annotation name.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataAnnotationNames.ODataMediaContentType">
            <summary>The OData media content type annotation name.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataAnnotationNames.ODataMediaETag">
            <summary>The OData media etag annotation name.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataAnnotationNames.ODataCount">
            <summary>The 'odata.count' annotation name.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataAnnotationNames.ODataNextLink">
            <summary>The 'odata.nextLink' annotation name.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataAnnotationNames.ODataNavigationLinkUrl">
            <summary>The 'odata.navigationLink' annotation name.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataAnnotationNames.ODataBind">
            <summary>The 'odata.bind' annotation name.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataAnnotationNames.ODataAssociationLinkUrl">
            <summary>The 'odata.associationLink' annotation name.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataAnnotationNames.ODataDeltaLink">
            <summary>The 'odata.deltaLink' annotation name.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataAnnotationNames.ODataRemoved">
            <summary>The 'odata.removed' annotation name.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataAnnotationNames.ODataDelta">
            <summary>The 'odata.delta' annotation name.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataAnnotationNames.ODataNull">
            <summary>
            The OData Null annotation name. This is an OData 3.0 protocol element
            used for compatibility with 6.x library version.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataAnnotationNames.IsODataAnnotationName(System.String)">
            <summary>
            Returns true if the <paramref name="annotationName"/> starts with "odata.", false otherwise.
            </summary>
            <param name="annotationName">The name of the annotation in question.</param>
            <returns>Returns true if the <paramref name="annotationName"/> starts with "odata.", false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataAnnotationNames.IsUnknownODataAnnotationName(System.String)">
            <summary>
            Returns true if the <paramref name="annotationName"/> starts with "odata." and is not one of the reserved odata annotation names; returns false otherwise.
            </summary>
            <param name="annotationName">The annotation name in question.</param>
            <returns>Returns true if the <paramref name="annotationName"/> starts with "odata." and is not one of the reserved odata annotation names; returns false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataAnnotationNames.ValidateIsCustomAnnotationName(System.String)">
            <summary>
            Validates that the <paramref name="annotationName"/> is not a reserved OData instance annotation.
            </summary>
            <param name="annotationName">The instance annotation name to check.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataAnnotationNames.RemoveAnnotationPrefix(System.String)">
            <summary>
            Get the string without the instance annotation prefix @
            </summary>
            <param name="annotationName">the origin annotation name from reader</param>
            <returns>the annotation name without prefix @ </returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightBatchAtomicGroupCache">
            <summary>
            Cache for atomic groups along with the stably-ordered message Ids in each group.
            It also keeps track of atomic group start and atomic group end status during the reading
            of batch message.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchAtomicGroupCache.groupToMessageIds">
            <summary>
            Lookup table for atomicitGroup.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchAtomicGroupCache.precedingMessageGroupId">
            <summary>
            Group Id of the preceding message. Could be null.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchAtomicGroupCache.isWithinAtomicGroup">
            <summary>
            Latest status of whether the processing is within scope of an atomic group.
            The scope is ended by a top-level message, the starting of another atomic group, or
            end of the batch messages array.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightBatchAtomicGroupCache.IsWithinAtomicGroup">
            <summary>
            Whether the processing is within scope of an atomic group.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchAtomicGroupCache.IsChangesetEnd(System.String)">
            <summary>
            Given the group Id from reader's current state, determine whether atomic group end is detected.
            </summary>
            <param name="groupId">The group Id from the reader's current state.</param>
            <returns>True if atomic group end is detected; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchAtomicGroupCache.AddMessageIdAndGroupId(System.String,System.String)">
            <summary>
            Construct the list of Ids for the group, and determine whether this
            is the start of an atomic group.
            </summary>
            <param name="messageId">Message Id to add.</param>
            <param name="groupId">Id of the group to add the message Id. Cannot be null.</param>
            <returns>
            True if changeset start is detected; false otherwise.
            Ensure all message Ids of the same groups are adjacent, otherwise throw an error.
            </returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchAtomicGroupCache.GetGroupId(System.String)">
            <summary>
            Get the atomic group Id of the message; null if the message does not belong to any groups.
            </summary>
            <param name="targetMessageId">Id of the message from the json property.</param>
            <returns>The group Id if found; null otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchAtomicGroupCache.IsGroupId(System.String)">
            <summary>
            Testing whether the given Id is a group Id.
            </summary>
            <param name="id">The id under test.</param>
            <returns>True if it is group Id of the batch; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchAtomicGroupCache.GetFlattenedMessageIds(System.Collections.Generic.IList{System.String})">
            <summary>
            Flatten a given list of groupIds and messageIds into a string containing comma-separated message Ids.
            </summary>
            <param name="ids">List of ids to be flattened.</param>
            <returns>The list containing comma-separated message Ids.</returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightBatchBodyContentReaderStream">
            <summary>
            Wrapper stream backed by memory stream containing body content of request or response in Json batch.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchBodyContentReaderStream.listener">
            <summary>Listener interface to be notified of operation changes.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchBodyContentReaderStream.cachedBodyContent">
            <summary>
            Cached body content which needs to be processed later when we have information
            about the content-type value.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchBodyContentReaderStream.#ctor(Microsoft.OData.IODataBatchOperationListener)">
            <summary>
            Constructor using default encoding (Base64Url without the BOM preamble).
            </summary>
            <param name="listener">The batch operation listener.</param>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightBatchBodyContentReaderStream.BatchPayloadBodyContentType">
            <summary>
            Enum type for data type of body content.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchBodyContentReaderStream.PopulateBodyContent(Microsoft.OData.Json.IJsonReader,System.String)">
            <summary>
            Populates the body content the Json reader is referencing.
            Since the content-type header might not be available at this point (when "headers" attribute
            is read after the "body" attribute), if the content-type is not json the body content is
            first stored into a string which will be used to populate the stream when the content-type
            header is read later.
            </summary>
            <param name="jsonReader">The Json reader providing access to the data.</param>
            <param name="contentTypeHeader">The request's content-type header value.</param>
            <returns>True if body content is written to stream; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchBodyContentReaderStream.PopulateCachedBodyContent(System.String)">
            <summary>
            Populates the stream with the cached body content according to the content-type specified.
            </summary>
            <param name="contentTypeHeader">The content-type header value.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchBodyContentReaderStream.Dispose(System.Boolean)">
            <summary>
            Disposes the object.
            </summary>
            <param name="disposing">True if called from Dispose; false if called form the finalizer.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchBodyContentReaderStream.DetectBatchPayloadBodyContentType(Microsoft.OData.Json.IJsonReader,System.String)">
            <summary>
            Detects batch item (request or response) body content's data type.
            The content of the "body" property can be either Json type or binary type.
            </summary>
            <param name="jsonReader">The json reader that provides access to the json object.</param>
            <param name="contentTypeHeader">The request's content-type header value.</param>
            <returns>The detected batch operation payload type. Can be null if content-type header information
            is not yet available and json reader is reading primitive type.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchBodyContentReaderStream.GetMediaType(System.String)">
            <summary>
            Parses the content-type header to get the media type without parameters.
            </summary>
            <param name="contentTypeHeader">The content-type header value.</param>
            <returns>The media type object without parameters, or null if value is null or empty.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchBodyContentReaderStream.WriteJsonContent(Microsoft.OData.Json.IJsonReader)">
            <summary>
            Reads off the data of the starting Json object from the Json reader,
            and populate the data into the memory stream.
            </summary>
            <param name="reader"> The json reader pointing at the json structure whose data needs to
            be populated into an memory stream.
            </param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchBodyContentReaderStream.WriteBinaryContent(System.String)">
            <summary>
            Decodes the base64url-encoded string and writes the binary bytes to the underlying memory stream.
            </summary>
            <param name="encodedContent">The base64url-encoded content.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchBodyContentReaderStream.WriteBytes(System.Byte[])">
            <summary>
            Writes the binary bytes to the underlying memory stream.
            </summary>
            <param name="bytes">The raw bytes to be written into the stream.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchBodyContentReaderStream.WriteCurrentJsonObject(Microsoft.OData.Json.IJsonReader,Microsoft.OData.Json.IJsonWriter)">
            <summary>
            Writes the current Json object.
            </summary>
            <param name="reader">The Json reader providing the data.</param>
            <param name="jsonWriter">The Json writer writes data into memory stream.</param>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightBatchPayloadItemPropertiesCache">
            <summary>
            Class for cache properties of a json object.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchPayloadItemPropertiesCache.PropertyNameId">
            <summary>
            Property name for message Id in Json batch payload's message object.
            Property names definitions here are all in upper case to support case insensitiveness.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchPayloadItemPropertiesCache.PropertyNameAtomicityGroup">
            <summary>
            Property name for message atomicityGroup association in Json batch payload's message object.
            Property names definitions here are all in upper case to support case insensitiveness.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchPayloadItemPropertiesCache.PropertyNameHeaders">
            <summary>
            Property name for response headers in Json batch response.
            Property names definitions here are all in upper case to support case insensitiveness.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchPayloadItemPropertiesCache.PropertyNameBody">
            <summary>
            Property name for message body in Json batch payload's message object.
            Property names definitions here are all in upper case to support case insensitiveness.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchPayloadItemPropertiesCache.PropertyNameDependsOn">
            <summary>
            Property name for request execution dependency in Json batch request.
            Property names definitions here are all in upper case to support case insensitiveness.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchPayloadItemPropertiesCache.PropertyNameMethod">
            <summary>
            Property name for request HTTP method in Json batch request.
            Property names definitions here are all in upper case to support case insensitiveness.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchPayloadItemPropertiesCache.PropertyNameUrl">
            <summary>
            Property name for request URL in Json batch request.
            Property names definitions here are all in upper case to support case insensitiveness.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchPayloadItemPropertiesCache.PropertyNameStatus">
            <summary>
            Property name for response status in Json batch response.
            Property names definitions here are all in upper case to support case insensitiveness.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchPayloadItemPropertiesCache.jsonReader">
            <summary>
            The Json reader for reading payload item in Json format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchPayloadItemPropertiesCache.listener">
            <summary>
            The Json batch reader for batch processing.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchPayloadItemPropertiesCache.jsonProperties">
            <summary>
            Cache for json properties.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchPayloadItemPropertiesCache.isStreamPopulated">
            <summary>
            Whether the stream has been populated with body content from the operation request message.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchPayloadItemPropertiesCache.#ctor(Microsoft.OData.JsonLight.ODataJsonLightBatchReader)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonBatchReader">The Json batch reader.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchPayloadItemPropertiesCache.GetPropertyValue(System.String)">
            <summary>
            Retrieves the value for the cached property.
            </summary>
            <param name="propertyName"> Name of the property.</param>
            <returns>Property value. Null if not found.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchPayloadItemPropertiesCache.CreateJsonPayloadBodyContentStream(System.String)">
            <summary>
            Creates a batch reader stream backed by memory stream containing data the current
            Json object the reader is pointing at.
            Current supported data types are Json and binary types.
            </summary>
            <param name="contentTypeHeader">The content-type header value of the request.</param>
            <returns>The memory stream.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchPayloadItemPropertiesCache.Normalize(System.String)">
            <summary>
            Normalization method for property name. Upper case conversion is used.
            </summary>
            <param name="propertyName">Name to be normalized.</param>
            <returns>The normalized name.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchPayloadItemPropertiesCache.ScanJsonProperties">
            <summary>
            Wrapper method with validation to scan the Json object for known properties.
            </summary>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightBatchReader">
            <summary>
            Class for reading OData batch messages in json format.
            Also verifies the proper sequence of read calls on the reader.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchReader.batchStream">
            <summary>The batch stream used by the batch reader to divide a batch payload into parts.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchReader.atomicGroups">
            <summary>
            The cache to keep track of atomicity group information during json batch message reading.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchReader.PropertyNameRequests">
            <summary>
            Top-level attribute name for request arrays in Json batch format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchReader.PropertyNameResponses">
            <summary>
            Top-level attribute name for response arrays in Json batch format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchReader.mode">
            <summary>
            The reader's mode.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchReader.messagePropertiesCache">
            <summary>
            The cache for json property-value pairs of the current request or response message.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchReader.#ctor(Microsoft.OData.JsonLight.ODataJsonLightInputContext,System.Boolean)">
            <summary>
            Constructor.
            </summary>
            <param name="inputContext">The input context to read the content from.</param>
            <param name="synchronous">true if the reader is created for synchronous operation; false for asynchronous.</param>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightBatchReader.ReaderMode">
            <summary>
            Definition of modes for Json reader.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightBatchReader.JsonLightInputContext">
            <summary>
            Gets the reader's input context as real runtime type.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchReader.GetCurrentGroupIdImplementation">
            <summary>
            Gets the atomic group id for the current request.
            </summary>
            <returns>The group id for the current request. Null if current request is not in an atomic group.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchReader.CreateOperationRequestMessageImplementation">
            <summary>
            Returns the cached <see cref="T:Microsoft.OData.ODataBatchOperationRequestMessage"/> for reading the content of an operation
            in a batch request.
            </summary>
            <returns>The message that can be used to read the content of the batch request operation from.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchReader.ReadAtStartImplementation">
            <summary>
            Implementation of the reader logic when in state 'Start'.
            </summary>
            <returns>The batch reader state after the read.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchReader.ReadAtChangesetEndImplementation">
            <summary>
            Implementation of the reader logic when in state 'ChangesetEnd'.
            </summary>
            <returns>The batch reader state after the read.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchReader.ReadAtOperationImplementation">
            <summary>
            Implementation of the reader logic when in state 'Operation'.
            </summary>
            <returns>The batch reader state after the read.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchReader.CreateOperationResponseMessageImplementation">
            <summary>
            Returns the cached <see cref="T:Microsoft.OData.ODataBatchOperationResponseMessage"/> for reading the content of a
            batch response.
            </summary>
            <returns>The message that can be used to read the content of the batch response from.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchReader.ValidateRequiredProperty(System.String,System.String)">
            <summary>
            Validate that the property value is not null.
            </summary>
            <param name="propertyValue"> Value of the property.</param>
            <param name="propertyName"> Name of the property.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchReader.ValidateDependsOnId(System.Collections.Generic.IEnumerable{System.String},System.String,System.String)">
            <summary>
            Validate the dependsOn Ids contains the proper values.
            </summary>
            <param name="dependsOnIds"> Enumeration of dependsOn ids from the request property.</param>
            <param name="atomicityGroupId"> The atomicityGroup id of the request. Its value cannot be part of the dependsOnIds.</param>
            <param name="requestId"> The id of the request. This value cannot be part of the dependsOnIds.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchReader.DetectReaderMode">
            <summary>
            Verify the first Json property of the batch payload to detect the reader's mode.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchReader.StartReadingBatchArray">
            <summary>
            Verify the json array of the batch payload.
            </summary>
            <returns>The batch reader's Operation state.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchReader.HandleNewAtomicGroupStart(System.String,System.String)">
            <summary>
            Process atomic group start.
            </summary>
            <param name="messageId"> Id of the first message (request or response) in the group. </param>
            <param name="groupId"> Group Id for the new atomic group. </param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchReader.HandleMessagesEnd">
            <summary>
            Setup the reader's states at the end of the messages.
            If atomicGroup is under processing, it needs to be closed first.
            </summary>
            <returns>The reader's next state.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchReader.DetectChangesetStates(Microsoft.OData.JsonLight.ODataJsonLightBatchPayloadItemPropertiesCache)">
            <summary>
            Examine changeset states for the current message and setup reader state accordingly if
            changeset related state transition is detected.
            </summary>
            <param name="messagePropertiesCache">Current message properties.</param>
            <returns>The next state for the reader.</returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightBatchReaderStream">
            <summary>
            Class used by the <see cref="T:Microsoft.OData.JsonLight.ODataJsonLightBatchReader"/> to read the various pieces of a batch payload
            in application/json format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchReaderStream.inputContext">
            <summary>
            The input context used by the JsonLight reader.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchReaderStream.#ctor(Microsoft.OData.JsonLight.ODataJsonLightInputContext)">
            <summary>
            Constructor.
            </summary>
            <param name="inputContext">The JsonLight input context.</param>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightBatchReaderStream.JsonReader">
            <summary>
            The reader providing access to payload in Json format.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchReaderStream.ReadWithDelimiter(System.Byte[],System.Int32,System.Int32)">
            <summary>
            This method is not applicable for application/json format, and throws an exception.
            </summary>
            <param name="userBuffer">The byte array to read bytes into.</param>
            <param name="userBufferOffset">The offset in the buffer where to start reading bytes into.</param>
            <param name="count">The number of bytes to read.</param>
            <returns>The number of bytes actually read.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchReaderStream.ReadWithLength(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads from the batch stream without checking for a boundary delimiter since we
            know the length of the stream.
            </summary>
            <param name="userBuffer">The byte array to read bytes into.</param>
            <param name="userBufferOffset">The offset in the buffer where to start reading bytes into.</param>
            <param name="count">The number of bytes to read.</param>
            <returns>The number of bytes actually read.</returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter">
            <summary>
            Class for writing OData batch messages of MIME application/json type.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.PropertyId">
            <summary>
            Camel-case property name for request Id in Json batch.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.PropertyAtomicityGroup">
            <summary>
            Property name for request atomic group association in Json batch.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.PropertyHeaders">
            <summary>
            Property name for request HTTP headers in Json batch.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.PropertyBody">
            <summary>
            Property name for request body in Json batch.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.PropertyRequests">
            <summary>
            Property name for top-level requests array in Json batch request.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.PropertyDependsOn">
            <summary>
            Property name for preceding request Ids in Json batch request.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.PropertyMethod">
            <summary>
            Property name for request HTTP method in Json batch request.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.PropertyUrl">
            <summary>
            Property name for request URL in Json batch request.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.PropertyResponses">
            <summary>
            Property name for top-level responses array in Json batch response.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.PropertyStatus">
            <summary>
            Property name for response status in Json batch response.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.jsonWriter">
            <summary>
            The underlying JSON writer.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.atomicityGroupId">
            <summary>
            The auto-generated GUID for AtomicityGroup of the Json item. Should be null for Json item
            that doesn't belong to atomic group.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.requestIdToAtomicGroupId">
            <summary>
            Dictionary for keeping track of each request's associated atomic group id, which is null
            for request that does not belong to atomic group.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.atomicityGroupIdToRequestId">
            <summary>
            Dictionary for keeping track of each atomic group's member request id. This is optimization
            for reversed lookup.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.#ctor(Microsoft.OData.JsonLight.ODataJsonLightOutputContext)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonLightOutputContext">The output context to write to.</param>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.JsonLightOutputContext">
            <summary>
            Gets the writer's output context as the real runtime type.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.CurrentOperationMessage">
            <summary>
            The message for the operation that is currently written; or null if no operation is written right now.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.BatchOperationContentStreamRequested">
            <summary>
            This method is called to notify that the content stream for a batch operation has been requested.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.BatchOperationContentStreamRequestedAsync">
            <summary>
            This method is called to notify that the content stream for a batch operation has been requested.
            </summary>
            <returns>
            A task representing any action that is running as part of the status change of the operation;
            null if no such action exists.
            </returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.BatchOperationContentStreamDisposed">
            <summary>
            This method is called to notify that the content stream of a batch operation has been disposed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.OnInStreamError">
            <summary>
            This method notifies the listener, that an in-stream error is to be written.
            </summary>
            <remarks>
            This listener can choose to fail, if the currently written payload doesn't support in-stream error at this position.
            If the listener returns, the writer should not allow any more writing, since the in-stream error is the last thing in the payload.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.FlushSynchronously">
            <summary>
            Flush the output.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.FlushAsynchronously">
            <summary>
            Flush the output.
            </summary>
            <returns>Task representing the pending flush operation.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.WriteStartBatchImplementation">
            <summary>
            Starts a new batch - implementation of the actual functionality.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.GetDependsOnRequestIds(System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Given an enumerable of dependsOn ids containing request ids and group ids, return an enumeration of
            equivalent request ids by converting the group ids into associated request ids.
            </summary>
            <param name="dependsOnIds">The dependsOn ids specifying current request's prerequisites.</param>
            <returns>An enumerable consists of request ids.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.WriteEndBatchImplementation">
            <summary>
            Ends a batch - implementation of the actual functionality.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.WriteStartChangesetImplementation(System.String)">
            <summary>
            Starts a new changeset - implementation of the actual functionality.
            </summary>
            <param name="groupId">
            The atomic group id of the changeset to start.
            If it is null for Json batch, an GUID will be generated and used as the atomic group id.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.WriteEndChangesetImplementation">
            <summary>
            Ends an active changeset - implementation of the actual functionality.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.CreateOperationRequestMessageImplementation(System.String,System.Uri,System.String,Microsoft.OData.BatchPayloadUriOption,System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataBatchOperationRequestMessage"/> for writing an operation of a
            batch request - implementation of the actual functionality.
            </summary>
            <param name="method">The Http method to be used for this request operation.</param>
            <param name="uri">The Uri to be used for this request operation.</param>
            <param name="contentId">The Content-ID value to write in ChangeSet head.</param>
            <param name="payloadUriOption">
            The format of operation Request-URI, which could be AbsoluteUri, AbsoluteResourcePathAndHost, or RelativeResourcePath.</param>
            <param name="dependsOnIds">The prerequisite request ids of this request.</param>
            <returns>The message that can be used to write the request operation.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.CreateOperationResponseMessageImplementation(System.String)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataBatchOperationResponseMessage"/> for writing an operation of a batch
            response - implementation of the actual functionality.
            </summary>
            <param name="contentId">The Content-ID value to write for the response id.</param>
            <returns>The message that can be used to rite the response operation.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.VerifyNotDisposed">
            <summary>
            Verifies that the writer is not disposed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.ValidateDependsOnId(System.String,System.String)">
            <summary>
            Validates the dependsOnId. It needs to be a valid id, and cannot be inside another atomic group.
            </summary>
            <param name="requestId">Current request's id.</param>
            <param name="dependsOnId">Prerequisite request id or atomic group id that current request depends on.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.AddGroupIdLookup(System.String)">
            <summary>
            Adds group id lookup and reverse lookup.
            </summary>
            <param name="contentId">Add content Id to group Id lookup and reverse lookup.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.WriteStartBoundaryForOperation">
            <summary>
            Writes the start boundary for an operation. This is Json start object.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.StartBatchOperationContent">
            <summary>
            Writes all the pending headers and prepares the writer to write a content of the operation.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.WritePendingMessageData(System.Boolean)">
            <summary>
            Writes any pending data for the current operation message (if any).
            </summary>
            <param name="reportMessageCompleted">
            A flag to control whether after writing the pending data we report writing the message to be completed or not.
            </param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.EnsurePreceedingMessageIsClosed">
            <summary>
            Closes preceding message Json object if any.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.WriteBatchEnvelope">
            <summary>
            Writes the json format batch envelope.
            Always sets the isBatchEvelopeWritten flag to true before return.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.WritePendingRequestMessageData">
            <summary>
            Writing pending data for the current request message.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter.WritePendingResponseMessageData">
            <summary>
            Writing pending data for the current response message.
            </summary>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightCollectionDeserializer">
            <summary>
            OData JsonLight deserializer for collections.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightCollectionDeserializer.propertyAndAnnotationCollector">
            <summary>Cached duplicate property names checker to use if the items are complex values.</summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionDeserializer.#ctor(Microsoft.OData.JsonLight.ODataJsonLightInputContext)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonLightInputContext">The JsonLight input context to read from.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionDeserializer.ReadCollectionStart(Microsoft.OData.PropertyAndAnnotationCollector,System.Boolean,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.Edm.IEdmTypeReference@)">
            <summary>
            Reads the start of a collection; this includes collection-level properties (e.g., the 'results' property) if the version permits it.
            </summary>
            <param name="collectionStartPropertyAndAnnotationCollector">The duplicate property names checker used to keep track of the properties and annotations
            in the collection wrapper object.</param>
            <param name="isReadingNestedPayload">true if we are reading a nested collection inside a paramter payload; otherwise false.</param>
            <param name="expectedItemTypeReference">The expected item type reference or null if none is expected.</param>
            <param name="actualItemTypeReference">The validated actual item type reference (if specified in the payload) or the expected item type reference.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataCollectionStart"/> representing the collection-level information. Currently this is only the name of the collection in ATOM.</returns>
            <remarks>
            Pre-Condition: Any: the start of a nested collection value; if this is not a 'StartArray' node this method will fail.
                            JsonNodeType.Property: the first property of the collection wrapper object after the context URI.
                            JsonNodeType.EndObject: when the collection wrapper object has no properties (other than the context URI).
            Post-Condition: JsonNodeType.StartArray: the start of the array of the collection items.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionDeserializer.ReadCollectionItem(Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.CollectionWithoutExpectedTypeValidator)">
            <summary>
            Reads an item in the collection.
            </summary>
            <param name="expectedItemTypeReference">The expected type of the item to read.</param>
            <param name="collectionValidator">The collection validator instance if no expected item type has been specified; otherwise null.</param>
            <returns>The value of the collection item that was read; this can be a primitive value or 'null'.</returns>
            <remarks>
            Pre-Condition: The first node of the item in the collection
                            NOTE: this method will throw if the node is not
                            JsonNodeType.PrimitiveValue: for a primitive item
            Post-Condition: The reader is positioned on the first node of the next item or an EndArray node if there are no more items in the collection
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionDeserializer.ReadCollectionEnd(System.Boolean)">
            <summary>
            Reads the end of a collection; this includes collection-level instance annotations.
            </summary>
            <param name="isReadingNestedPayload">true if we are reading a nested collection inside a paramter payload; otherwise false.</param>
            <remarks>
            Pre-Condition: EndArray node: End of the collection content array
            Post-Condition: EndOfInput: All of the collection payload has been consumed.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionDeserializer.IsValidODataAnnotationOfCollection(System.String)">
            <summary>
            Returns if a property is a valid OData annotation of a collection.
            </summary>
            <param name="propertyName">The name of the property.</param>
            <returns>If the property is a valid OData annotation of a collection.</returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightCollectionReader">
            <summary>
            OData collection reader for the JsonLight format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightCollectionReader.jsonLightInputContext">
            <summary>The input to read the payload from.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightCollectionReader.jsonLightCollectionDeserializer">
            <summary>The collection deserializer to use to read from the input.</summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionReader.#ctor(Microsoft.OData.JsonLight.ODataJsonLightInputContext,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.IODataReaderWriterListener)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonLightInputContext">The input to read the payload from.</param>
            <param name="expectedItemTypeReference">The expected type for the items in the collection.</param>
            <param name="listener">If not null, the reader will notify the implementer of the interface of relevant state changes in the reader.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionReader.ReadAtStartImplementation">
            <summary>
            Implementation of the collection reader logic when in state 'Start'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.None: assumes that the JSON reader has not been used yet when not reading a nested payload.
            Post-Condition: The reader is positioned on the first node of the first item or the EndArray node of an empty item array
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionReader.ReadAtStartImplementationAsync">
            <summary>
            Implementation of the collection reader logic when in state 'Start'.
            </summary>
            <returns>Task which returns true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.None: assumes that the JSON reader has not been used yet when not reading a nested payload.
            Post-Condition: The reader is positioned on the first node of the first item or the EndArray node of an empty item array
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionReader.ReadAtCollectionStartImplementation">
            <summary>
            Implementation of the reader logic when in state 'CollectionStart'.
            </summary>
            <returns>true if more nodes can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: The first node of the first item in the collection or the EndArray node of the (empty) item array
                            NOTE: this method will throw if the node is not
                            JsonNodeType.EndArray: for an empty item array of the collection
                            JsonNodeType.StartObject: for a complex value as first item
                            JsonNodeType.PrimitiveValue: for a primitive value as first item
            Post-Condition: The reader is positioned on the first node of the second item or an EndArray node if there are no items in the collection
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionReader.ReadAtCollectionStartImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'CollectionStart'.
            </summary>
            <returns>Task which returns true if more nodes can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: The first node of the first item in the collection or the EndArray node of the (empty) item array
                            NOTE: this method will throw if the node is not
                            JsonNodeType.EndArray: for an empty item array of the collection
                            JsonNodeType.StartObject: for a complex value as first item
                            JsonNodeType.PrimitiveValue: for a primitive value as first item
            Post-Condition: The reader is positioned on the first node of the second item or an EndArray node if there are no items in the collection
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionReader.ReadAtValueImplementation">
            <summary>
            Implementation of the reader logic when in state 'Value'.
            </summary>
            <returns>true if more nodes can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: The first node of the next item in the collection or the EndArray node of the item array
                            NOTE: this method will throw if the node is not
                            JsonNodeType.EndArray: for the end of the item array of the collection
                            JsonNodeType.StartObject: for a complex item
                            JsonNodeType.PrimitiveValue: for a primitive item
            Post-Condition: The reader is positioned on the first node of the next item or an EndArray node if there are no items in the collection
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionReader.ReadAtValueImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'Value'.
            </summary>
            <returns>Task which returns true if more nodes can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: The first node of the next item in the collection or the EndArray node of the item array
                            NOTE: this method will throw if the node is not
                            JsonNodeType.EndArray: for the end of the item array of the collection
                            JsonNodeType.StartObject: for a complex item
                            JsonNodeType.PrimitiveValue: for a primitive item
            Post-Condition: The reader is positioned on the first node of the next item or an EndArray node if there are no items in the collection
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionReader.ReadAtCollectionEndImplementation">
            <summary>
            Implementation of the reader logic when in state 'CollectionEnd'.
            </summary>
            <returns>false since no more nodes can be read from the reader after the collection ended.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.EndArray the end of the item array of the collection
            Post-Condition: JsonNodeType.EndOfInput nothing else to read when not reading a nested payload
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionReader.ReadAtCollectionEndImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'CollectionEnd'.
            </summary>
            <returns>Task which should return false since no more nodes can be read from the reader after the collection ends.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.EndArray the end of the item array of the collection
            Post-Condition: JsonNodeType.EndOfInput nothing else to read when not reading a nested payload
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionReader.ReadAtStartImplementationSynchronously(Microsoft.OData.PropertyAndAnnotationCollector)">
            <summary>
            Implementation of the collection reader logic when in state 'Start'.
            </summary>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker for the top-level scope.</param>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.None: assumes that the JSON reader has not been used yet when not reading a nested payload.
            Post-Condition: The reader is positioned on the first node of the first item or the EndArray node of an empty item array
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionReader.ReadAtCollectionStartImplementationSynchronously">
            <summary>
            Implementation of the reader logic when in state 'CollectionStart'.
            </summary>
            <returns>true if more nodes can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: The first node of the first item in the collection or the EndArray node of the (empty) item array
                            NOTE: this method will throw if the node is not
                            JsonNodeType.EndArray: for an empty item array of the collection
                            JsonNodeType.StartObject: for a complex value as first item
                            JsonNodeType.PrimitiveValue: for a primitive value as first item
            Post-Condition: The reader is positioned on the first node of the second item or an EndArray node if there are no items in the collection
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionReader.ReadAtValueImplementationSynchronously">
            <summary>
            Implementation of the reader logic when in state 'Value'.
            </summary>
            <returns>true if more nodes can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: The first node of the next item in the collection or the EndArray node of the item array
                            NOTE: this method will throw if the node is not
                            JsonNodeType.EndArray: for the end of the item array of the collection
                            JsonNodeType.StartObject: for a complex item
                            JsonNodeType.PrimitiveValue: for a primitive item
            Post-Condition: The reader is positioned on the first node of the next item or an EndArray node if there are no items in the collection
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionReader.ReadAtCollectionEndImplementationSynchronously">
            <summary>
            Implementation of the reader logic when in state 'CollectionEnd'.
            </summary>
            <returns>false since no more nodes can be read from the reader after the collection ended.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.EndArray the end of the item array of the collection
            Post-Condition: JsonNodeType.EndOfInput nothing else to read when not reading a nested payload
            </remarks>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightCollectionSerializer">
            <summary>
            OData JsonLight serializer for collections.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightCollectionSerializer.writingTopLevelCollection">
            <summary>true when writing a top-level collection that requires the 'value' wrapper object; otherwise false.</summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionSerializer.#ctor(Microsoft.OData.JsonLight.ODataJsonLightOutputContext,System.Boolean)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonLightOutputContext">The output context to write to.</param>
            <param name="writingTopLevelCollection">true when writing a top-level collection that requires the 'value' wrapper object; otherwise false.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionSerializer.WriteCollectionStart(Microsoft.OData.ODataCollectionStart,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Writes the start of a collection.
            </summary>
            <param name="collectionStart">The collection start to write.</param>
            <param name="itemTypeReference">The item type of the collection or null if no metadata is available.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionSerializer.WriteCollectionEnd">
            <summary>
            Writes the end of a collection.
            </summary>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightCollectionWriter">
            <summary>
            ODataCollectionWriter for the JsonLight format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightCollectionWriter.jsonLightOutputContext">
            <summary>
            The output context to write to.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightCollectionWriter.jsonLightCollectionSerializer">
            <summary>
            The JsonLight collection serializer to use.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionWriter.#ctor(Microsoft.OData.JsonLight.ODataJsonLightOutputContext,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Constructor for creating a collection writer to use when writing operation result payloads.
            </summary>
            <param name="jsonLightOutputContext">The output context to write to.</param>
            <param name="itemTypeReference">The item type of the collection being written or null if no metadata is available.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionWriter.#ctor(Microsoft.OData.JsonLight.ODataJsonLightOutputContext,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.IODataReaderWriterListener)">
            <summary>
            Constructor for creating a collection writer to use when writing parameter payloads.
            </summary>
            <param name="jsonLightOutputContext">The output context to write to.</param>
            <param name="expectedItemType">The type reference of the expected item type or null if no expected item type exists.</param>
            <param name="listener">If not null, the writer will notify the implementer of the interface of relevant state changes in the writer.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionWriter.VerifyNotDisposed">
            <summary>
            Check if the object has been disposed; called from all public API methods. Throws an ObjectDisposedException if the object
            has already been disposed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionWriter.FlushSynchronously">
            <summary>
            Flush the output.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionWriter.FlushAsynchronously">
            <summary>
            Flush the output.
            </summary>
            <returns>Task representing the pending flush operation.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionWriter.StartPayload">
            <summary>
            Start writing an OData payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionWriter.EndPayload">
            <summary>
            Finish writing an OData payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionWriter.StartCollection(Microsoft.OData.ODataCollectionStart)">
            <summary>
            Start writing a collection.
            </summary>
            <param name="collectionStart">The <see cref="T:Microsoft.OData.ODataCollectionStart"/> representing the collection.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionWriter.EndCollection">
            <summary>
            Finish writing a collection.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightCollectionWriter.WriteCollectionItem(System.Object,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Writes a collection item (either primitive or enum)
            </summary>
            <param name="item">The collection item to write.</param>
            <param name="expectedItemType">The expected type of the collection item or null if no expected item type exists.</param>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightContextUriParser">
            <summary>
            Parser for odata context URIs used in JSON Lite.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightContextUriParser.KeyPattern">
            <summary>
            Pattern for key segments, Examples:
            Customer(1), Customer('foo'),
            Customer(baf04077-a3c0-454b-ac6f-9fec00b8e170), Message(FromUsername='1',MessageId=-10)
            Message(geography'SRID=0;Collection(LineString(142.1 64.1,3.14 2.78))'),Message(duration'P6DT23H59M59.9999S')
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightContextUriParser.model">
            <summary>The model to use when resolving the target of the URI.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightContextUriParser.parseResult">
            <summary>The result of parsing the context URI.</summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightContextUriParser.#ctor(Microsoft.OData.Edm.IEdmModel,System.Uri)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.OData.JsonLight.ODataJsonLightContextUriParseResult"/> class.
            </summary>
            <param name="model">The model to use when resolving the target of the URI.</param>
            <param name="contextUriFromPayload">The context URI read from the payload.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightContextUriParser.Parse(Microsoft.OData.Edm.IEdmModel,System.String,Microsoft.OData.ODataPayloadKind,System.Func{Microsoft.OData.Edm.IEdmType,System.String,Microsoft.OData.Edm.IEdmType},System.Boolean,System.Boolean)">
            <summary>
            Creates a context URI parser and parses the context URI read from the payload.
            </summary>
            <param name="model">The model to use when resolving the target of the URI.</param>
            <param name="contextUriFromPayload">The string value of the odata.metadata annotation read from the payload.</param>
            <param name="payloadKind">The payload kind we expect the context URI to conform to.</param>
            <param name="clientCustomTypeResolver">The function of client cuetom type resolver.</param>
            <param name="needParseFragment">Whether the fragment after $metadata should be parsed, if set to false, only MetadataDocumentUri is parsed.</param>
            <param name="throwIfMetadataConflict">Whether to throw if a type specified in the ContextUri is not found in metadata.</param>
            <returns>The result from parsing the context URI.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightContextUriParser.ExtractSelectQueryOption(System.String)">
            <summary>
            Extracts the value of the $select query option from the specified fragment.
            </summary>
            <param name="fragment">The fragment to extract the $select query option from.</param>
            <returns>The value of the $select query option or null if none exists.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightContextUriParser.TokenizeContextUri">
            <summary>
            Parses a context URI read from the payload into its parts.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightContextUriParser.ParseContextUri(Microsoft.OData.ODataPayloadKind,System.Func{Microsoft.OData.Edm.IEdmType,System.String,Microsoft.OData.Edm.IEdmType},System.Boolean)">
            <summary>
            Applies the model and validates the context URI against it.
            </summary>
            <param name="expectedPayloadKind">The payload kind we expect the context URI to conform to.</param>
            <param name="clientCustomTypeResolver">The function of client custom type resolver.</param>
            <param name="throwIfMetadataConflict">Whether to throw if a type specified in the ContextUri is not found in metadata.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightContextUriParser.ParseContextUriFragment(System.String,System.Func{Microsoft.OData.Edm.IEdmType,System.String,Microsoft.OData.Edm.IEdmType},System.Boolean,System.Boolean@)">
            <summary>
            Parses the fragment of a context URI.
            </summary>
            <param name="fragment">The fragment to parse</param>
            <param name="clientCustomTypeResolver">The function of client cuetom type resolver.</param>
            <param name="throwIfMetadataConflict">Whether to throw if a type specified in the ContextUri is not found in metadata.</param>
            <param name="isUndeclared">Indicates if the fragment is for an unknown path segment</param>
            <returns>The detected payload kind based on parsing the fragment.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightContextUriParser.ResolveType(System.String,System.Func{Microsoft.OData.Edm.IEdmType,System.String,Microsoft.OData.Edm.IEdmType},System.Boolean)">
            <summary>
            Resolves a type.
            </summary>
            <param name="typeName">The type name.</param>
            <param name="clientCustomTypeResolver">The function of client cuetom type resolver.</param>
            <param name="throwIfMetadataConflict">Whether to throw if a type specified in the ContextUri is not found in metadata.</param>
            <returns>The resolved Edm type.</returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightContextUriParseResult">
            <summary>
            The result of parsing an OData context URI in JSON Lite.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightContextUriParseResult.contextUriFromPayload">
            <summary>The context URI read from the payload in its unparsed form.</summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightContextUriParseResult.#ctor(System.Uri)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.OData.JsonLight.ODataJsonLightContextUriParseResult"/> class.
            </summary>
            <param name="contextUriFromPayload">The context URI read from the payload in its unparsed form.</param>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightContextUriParseResult.ContextUri">
            <summary>
            The context URI read from the payload in its unparsed form.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightContextUriParseResult.MetadataDocumentUri">
            <summary>
            The metadata document URI as read from the payload.
            </summary>
            <remarks>This is the metadata document URI as read from the payload without the fragment.</remarks>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightContextUriParseResult.Fragment">
            <summary>
            The fragment portion of the context URI.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightContextUriParseResult.SelectQueryOption">
            <summary>
            The $select query option.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightContextUriParseResult.NavigationSource">
            <summary>
            The resolved navigation source as specified in the context URI.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightContextUriParseResult.EdmType">
            <summary>
            The resolved structured type as specified in the context URI.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightContextUriParseResult.DetectedPayloadKinds">
            <summary>
            The detected payload kinds from parsing the context URI.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightContextUriParseResult.Path">
            <summary>
            ODataPath parsed from context Url
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightContextUriParseResult.DeltaKind">
            <summary>
            DeltaKind from context Url, only applicable when payload kind is Delta
            </summary>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightDeltaReader">
            <summary>
            OData delta reader for the JsonLight format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightDeltaReader.underlyingReader">
            <summary>Underlying JSON Light Reader</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightDeltaReader.nestedLevel">
            <summary>Whether the reader is reading nested content</summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaReader.#ctor(Microsoft.OData.JsonLight.ODataJsonLightInputContext,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonLightInputContext">The input to read the payload from.</param>
            <param name="navigationSource">The navigation source we are going to read entities for.</param>
            <param name="expectedEntityType">The expected entity type for the resource to be read (in case of resource reader) or entries in the resource set to be read (in case of resource set reader).</param>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightDeltaReader.State">
            <summary>Gets the current state of the reader. </summary>
            <returns>The current state of the reader.</returns>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightDeltaReader.SubState">
            <summary>Gets the current sub state of the reader. </summary>
            <returns>The current sub state of the reader.</returns>
            <remarks>
            The sub state is a complement to the current state if the current state itself is not enough to determine
            the real state of the reader. The sub state is only meaningful in NestedResourceInfo state.
            </remarks>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightDeltaReader.Item">
            <summary>Gets the most recent <see cref="T:Microsoft.OData.ODataItem" /> that has been read. </summary>
            <returns>The most recent <see cref="T:Microsoft.OData.ODataItem" /> that has been read.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaReader.Read">
            <summary> Reads the next <see cref="T:Microsoft.OData.ODataItem" /> from the message payload. </summary>
            <returns>true if more items were read; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaReader.ReadAsync">
            <summary> Asynchronously reads the next <see cref="T:Microsoft.OData.ODataItem" /> from the message payload. </summary>
            <returns>A task that when completed indicates whether more items were read.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaReader.SkipToDeletedResourceEnd">
            <summary> Sets nested level following a successful read. </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaReader.SetNestedLevel">
            <summary> Sets nested level following a successful read. </summary>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter">
            <summary>
            Implementation of the ODataDeltaWriter for the JsonLight format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.jsonLightOutputContext">
            <summary>
            The output context to write to.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.resourceWriter">
            <summary>
            JsonLightWriter
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.navigationSource">
            <summary>
            NavigationSource
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.entityType">
            <summary>
            EntityType
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.inStreamErrorListener">
            <summary>An in-stream error listener to notify when in-stream error is to be written. Or null if we don't need to notify anybody.</summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.#ctor(Microsoft.OData.JsonLight.ODataJsonLightOutputContext,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonLightOutputContext">The output context to write to.</param>
            <param name="navigationSource">The navigation source we are going to write entities for.</param>
            <param name="entityType">The entity type for the entries in the resource set to be written (or null if the entity set base type should be used).</param>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.NavigationSource">
            <summary>
            The navigation source we are going to write entities for.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.EntityType">
            <summary>
            The entity type we are going to write entities for.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.WriteStart(Microsoft.OData.ODataDeltaResourceSet)">
            <summary>
            Start writing a delta resource set.
            </summary>
            <param name="deltaResourceSet">Delta resource set/collection to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.WriteStartAsync(Microsoft.OData.ODataDeltaResourceSet)">
            <summary>
            Asynchronously start writing a delta resource set.
            </summary>
            <param name="deltaResourceSet">Delta resource set/collection to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.WriteEnd">
            <summary>
            Finish writing a delta resource set.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.WriteEndAsync">
            <summary>
            Asynchronously finish writing a delta resource set.
            </summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.WriteStart(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            Start writing a nested resource info.
            </summary>
            <param name="nestedResourceInfo">The nested resource info to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.WriteStartAsync(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            Asynchronously start writing a nested resource info.
            </summary>
            <param name="nestedResourceInfo">The nested resource info to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.WriteStart(Microsoft.OData.ODataResourceSet)">
            <summary>
            Start writing an expanded resource set.
            </summary>
            <param name="expandedResourceSet">The expanded resource set to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.WriteStartAsync(Microsoft.OData.ODataResourceSet)">
            <summary>
            Asynchronously start writing an expanded resource set.
            </summary>
            <param name="expandedResourceSet">The expanded resource set to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.WriteStart(Microsoft.OData.ODataResource)">
            <summary>
            Start writing a delta resource.
            </summary>
            <param name="deltaResource">The delta resource to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.WriteStartAsync(Microsoft.OData.ODataResource)">
            <summary>
            Asynchronously start writing a delta resource.
            </summary>
            <param name="deltaResource">The delta resource to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.WriteDeltaDeletedEntry(Microsoft.OData.ODataDeltaDeletedEntry)">
            <summary>
            Writing a delta deleted resource.
            </summary>
            <param name="deltaDeletedEntry">The delta deleted resource to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.WriteDeltaDeletedEntryAsync(Microsoft.OData.ODataDeltaDeletedEntry)">
            <summary>
            Asynchronously writing a delta deleted resource.
            </summary>
            <param name="deltaDeletedEntry">The delta deleted resource to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.WriteDeltaLink(Microsoft.OData.ODataDeltaLink)">
            <summary>
            Writes a delta link.
            </summary>
            <param name="deltaLink">The delta link to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.WriteDeltaLinkAsync(Microsoft.OData.ODataDeltaLink)">
            <summary>
            Asynchronously writes a delta link.
            </summary>
            <param name="deltaLink">The delta link to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.WriteDeltaDeletedLink(Microsoft.OData.ODataDeltaDeletedLink)">
            <summary>
            Writing a delta deleted link.
            </summary>
            <param name="deltaDeletedLink">The delta deleted link to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.WriteDeltaDeletedLinkAsync(Microsoft.OData.ODataDeltaDeletedLink)">
            <summary>
            Asynchronously writing a delta deleted link.
            </summary>
            <param name="deltaDeletedLink">The delta deleted link to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.Flush">
            <summary>
            Flushes the write buffer to the underlying stream.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.FlushAsync">
            <summary>
            Asynchronously flushes the write buffer to the underlying stream.
            </summary>
            <returns>A task instance that represents the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeltaWriter.Microsoft#OData#IODataOutputInStreamErrorListener#OnInStreamError">
            <summary>
            This method notifies the listener, that an in-stream error is to be written.
            </summary>
            <remarks>
            This listener can choose to fail, if the currently written payload doesn't support in-stream error at this position.
            If the listener returns, the writer should not allow any more writing, since the in-stream error is the last thing in the payload.
            </remarks>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightDeserializer">
            <summary>
            Base class for all OData JsonLight deserializers.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.jsonLightInputContext">
            <summary>The JsonLight input context to use for reading.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.metadataContext">
            <summary>Context for resource metadata centric responsibilities.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.contextUriParseResult">
            <summary>Result of parsing the context URI for the payload (or null if none are available).</summary>
            <remarks>This field is only available after the ReadPayloadStart was called.</remarks>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.odataUri">
            <summary>The OData Uri.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.isODataUriRead">
            <summary>True if the odata uri is calculated, false otherwise.</summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.#ctor(Microsoft.OData.JsonLight.ODataJsonLightInputContext)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonLightInputContext">The JsonLight input context to read from.</param>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.PropertyParsingResult">
            <summary>Possible results of parsing JSON object property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.PropertyParsingResult.EndOfObject">
            <summary>An end of object was reached without any property to be reported.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.PropertyParsingResult.PropertyWithValue">
            <summary>A property with value was found.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.PropertyParsingResult.PropertyWithoutValue">
            <summary>A property without value was found.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.PropertyParsingResult.ODataInstanceAnnotation">
            <summary>A 'odata' instance annotation was found.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.PropertyParsingResult.CustomInstanceAnnotation">
            <summary>A custom instance annotation was found.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.PropertyParsingResult.MetadataReferenceProperty">
            <summary>A metadata reference property was found.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.PropertyParsingResult.NestedDeltaResourceSet">
            <summary>A property representing a nested delta resoruce set was found.</summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.ODataUri">
            <summary>
            Gets the OData uri.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.MetadataContext">
            <summary>
            Context for resource metadata centric responsibilities.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.JsonReader">
            <summary>
            Returns the <see cref="T:Microsoft.OData.Json.BufferingJsonReader"/> which is to be used to read the content of the message.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.ContextUriParseResult">
            <summary>Result of parsing the context URI for the payload (or null if none are available).</summary>
            <remarks>This property is only available after the ReadPayloadStart was called.</remarks>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.JsonLightInputContext">
            <summary>
            The Json lite input context to use for reading.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.ReadPropertyCustomAnnotationValue">
            <summary>
            Function called to read property custom annotation value.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.MetadataDocumentUri">
            <summary>
            Gets the metadata document Uri from the contextUriParseResult.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.TryParsePropertyAnnotation(System.String,System.String@,System.String@)">
            <summary>
            Parses the name of a property and returns the property name and annotation name if the property is a property annotation.
            </summary>
            <param name="propertyAnnotationName">The property name to parse.</param>
            <param name="propertyName">The name of the annotated property, or null if the property is not a property annotation.</param>
            <param name="annotationName">The annotation name, or null if the property is not a property annotation.</param>
            <returns>true if the <paramref name="propertyAnnotationName"/> is a property annotation, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.ReadPayloadStart(Microsoft.OData.ODataPayloadKind,Microsoft.OData.PropertyAndAnnotationCollector,System.Boolean,System.Boolean)">
            <summary>
            Read the start of the top-level data wrapper in JSON responses.
            </summary>
            <param name="payloadKind">The kind of payload we are reading; this guides the parsing of the context URI.</param>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker.</param>
            <param name="isReadingNestedPayload">true if we are deserializing a nested payload, e.g. a resource, a resource set or a collection within a parameters payload.</param>
            <param name="allowEmptyPayload">true if we allow a completely empty payload; otherwise false.</param>
            <remarks>
            Pre-Condition: JsonNodeType.None: assumes that the JSON reader has not been used yet when not reading a nested payload.
            Post-Condition: The reader is positioned on the first property of the payload after having read (or skipped) the context URI property.
                            Or the reader is positioned on an end-object node if there are no properties (other than the context URI which is required in responses and optional in requests).
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.ReadPayloadStartAsync(Microsoft.OData.ODataPayloadKind,Microsoft.OData.PropertyAndAnnotationCollector,System.Boolean,System.Boolean)">
            <summary>
            Read the start of the top-level data wrapper in JSON responses.
            </summary>
            <param name="payloadKind">The kind of payload we are reading; this guides the parsing of the context URI.</param>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker.</param>
            <param name="isReadingNestedPayload">true if we are deserializing a nested payload, e.g. a resource, a resource set or a collection within a parameters payload.</param>
            <param name="allowEmptyPayload">true if we allow a completely empty payload; otherwise false.</param>
            <returns>The parsed context URI.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.None: assumes that the JSON reader has not been used yet when not reading a nested payload.
            Post-Condition: The reader is positioned on the first property of the payload after having read (or skipped) the context URI property.
                            Or the reader is positioned on an end-object node if there are no properties (other than the context URI which is required in responses and optional in requests).
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.ReadPayloadEnd(System.Boolean)">
            <summary>
            Reads the end of the top-level data wrapper in JSON responses.
            </summary>
            <param name="isReadingNestedPayload">true if we are deserializing a nested payload, e.g. a resource, a resource set or a collection within a parameters payload.</param>
            <remarks>
            Pre-Condition: any node: when reading response or a nested payload, will fail if find anything else then EndObject.
                            JsonNodeType.EndOfInput: otherwise
            Post-Condition: JsonNodeType.EndOfInput
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.ReadAndValidateAnnotationStringValue(System.String)">
            <summary>
            Reads and validates a string value from the json reader.
            </summary>
            <param name="annotationName">The name of the annotation being read (used for error reporting).</param>
            <returns>The string that was read.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.ReadAnnotationStringValue(System.String)">
            <summary>
            Reads a string value from the json reader.
            </summary>
            <param name="annotationName">The name of the annotation being read (used for error reporting).</param>
            <returns>The string that was read.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.ReadAnnotationStringValueAsUri(System.String)">
            <summary>
            Reads a string value from the json reader and processes it as a Uri.
            </summary>
            <param name="annotationName">The name of the annotation being read (used for error reporting).</param>
            <returns>The Uri that was read.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.ReadAndValidateAnnotationStringValueAsUri(System.String)">
            <summary>
            Reads and validates a string value from the json reader and processes it as a Uri.
            </summary>
            <param name="annotationName">The name of the annotation being read (used for error reporting).</param>
            <returns>The Uri that was read.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.ReadAndValidateAnnotationAsLongForIeee754Compatible(System.String)">
            <summary>
            Reads and validates a value from the json reader and processes it as a long.
            The input value could be string or number
            </summary>
            <param name="annotationName">The name of the annotation being read.</param>
            <returns>The long that is read.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.ProcessUriFromPayload(System.String)">
            <summary>
            Given a URI from the payload, this method will try to make it absolute, or fail otherwise.
            </summary>
            <param name="uriFromPayload">The URI string from the payload to process.</param>
            <returns>An absolute URI to report.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.ProcessProperty(Microsoft.OData.PropertyAndAnnotationCollector,System.Func{System.String,System.Object},System.Action{Microsoft.OData.JsonLight.ODataJsonLightDeserializer.PropertyParsingResult,System.String})">
            <summary>
            Parses JSON object property starting with the current position of the JSON reader.
            </summary>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker to use, it will also store the property annotations found.</param>
            <param name="readPropertyAnnotationValue">Function called to read property annotation value.</param>
            <param name="handleProperty">Function callback to handle the result of parsing property.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.AssertJsonCondition(Microsoft.OData.Json.JsonNodeType[])">
            <summary>
            Asserts that the JSON reader is positioned on one of the specified node types.
            </summary>
            <param name="allowedNodeTypes">The node types which should appear at this point.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.ReadContextUriAnnotation(Microsoft.OData.ODataPayloadKind,Microsoft.OData.PropertyAndAnnotationCollector,System.Boolean)">
            <summary>
            Reads the odata.context annotation.
            </summary>
            <param name="payloadKind">The payload kind for which to read the context URI.</param>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker.</param>
            <param name="failOnMissingContextUriAnnotation">true if the method should fail if the context URI annotation is missing, false if that can be ignored.</param>
            <returns>The value of the context URI annotation.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.CompareSimplifiedODataAnnotation(System.String,System.String)">
            <summary>
            Compares the JSON property name with the simplified OData annotation property name.
            </summary>
            <param name="simplifiedPropertyName">The simplified OData annotation property name.</param>
            <param name="propertyName">The JSON property name read from the payload.</param>
            <returns>If the JSON property name equals the simplified OData annotation property name.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.CompleteSimplifiedODataAnnotation(System.String)">
            <summary>
            Completes the simplified OData annotation name with "odata.".
            </summary>
            <param name="annotationName">The annotation name to be completed.</param>
            <returns>The complete OData annotation name.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.ShouldSkipCustomInstanceAnnotation(System.String)">
            <summary>
            Returns true if <paramref name="annotationName"/> should be skipped by the reader; false otherwise.
            </summary>
            <param name="annotationName">The custom instance annotation name in question.</param>
            <returns>Returns true if <paramref name="annotationName"/> should be skipped by the reader; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.IsInstanceAnnotation(System.String)">
            <summary>
            Test the instance annotation is start with @ prefix
            </summary>
            <param name="annotationName">the origin annotation name from reader</param>
            <returns>true is the instance annotation, false is not</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.SkippedOverUnknownODataAnnotation(System.String,System.Object@)">
            <summary>
            If <paramref name="annotationName"/> is under the odata namespace but is not known to ODataLib, move the JSON reader forward to skip the
            annotation name and value then return true; return false otherwise.
            </summary>
            <remarks>
            The unknown odata annotation is skipped so that when this version of the reader reads a resource set produced by a future version of ODataLib
            that contains an odata annotation that is not recognized on this version, we would simply ignore the annotation rather than failing.
            Note that when we add new odata annotations that cannot be skipped, we would bump the protocol version.
            </remarks>
            <param name="annotationName">The annotation name in question.</param>
            <param name="annotationValue">Outputs the .</param>
            <returns>Returns true if the annotation name and value is skipped; returns false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.ReadODataOrCustomInstanceAnnotationValue(System.String)">
            <summary>
            Reads "odata." or custom instance annotation's value.
            </summary>
            <param name="annotationName">The annotation name.</param>
            <returns>The annotation value.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.ParseProperty(Microsoft.OData.PropertyAndAnnotationCollector,System.Func{System.String,System.Object},System.String@)">
            <summary>
            Parses JSON object property starting with the current position of the JSON reader.
            </summary>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker to use, it will also store the property annotations found.</param>
            <param name="readPropertyAnnotationValue">Function called to read property annotation value.</param>
            <param name="parsedPropertyName">The name of the property or instance annotation found.</param>
            <returns>
            PropertyWithValue - a property with value was found. The <paramref name="parsedPropertyName"/> contains the name of the property.
                                The reader is positioned on the property value.
            PropertyWithoutValue - a property without a value was found. The <paramref name="parsedPropertyName"/> contains the name of the property.
                                   The reader is positioned on the node after property annotations (so either a property or end of object).
            ODataInstanceAnnotation - an odata instance annotation was found. The <paramref name="parsedPropertyName"/> contains the name of the annotation.
                                 The reader is positioned on the value of the annotation.
            CustomInstanceAnnotation - a custom instance annotation was found. The <paramref name="parsedPropertyName"/> contains the name of the annotation.
                                 The reader is positioned on the value of the annotation.
            MetadataReferenceProperty - a property which is a reference into the metadata was found.
                                        The reader is positioned on the value of the property.
            EndOfObject - end of the object scope was reached and no properties are to be reported. The <paramref name="parsedPropertyName"/> is null.
                          This can only happen if there's a property annotation which is ignored (for example custom one) at the end of the object.
            </returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.ProcessPropertyAnnotation(System.String,System.String,Microsoft.OData.PropertyAndAnnotationCollector,System.Func{System.String,System.Object})">
            <summary>
            Process the current property annotation.
            </summary>
            <param name="annotatedPropertyName">The name being annotated. Can be a property or an instance annotation.</param>
            <param name="annotationName">The annotation targeting the <paramref name="annotatedPropertyName"/>.</param>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker.</param>
            <param name="readPropertyAnnotationValue">Callback to read the property annotation value.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.ReadODataOrCustomInstanceAnnotationValue(System.String,System.String,Microsoft.OData.PropertyAndAnnotationCollector,System.Func{System.String,System.Object})">
            <summary>
            Reads built-in "odata." or custom instance annotation's value.
            </summary>
            <param name="annotatedPropertyName">The property name.</param>
            <param name="annotationName">The annotation name</param>
            <param name="propertyAndAnnotationCollector">The PropertyAndAnnotationCollector.</param>
            <param name="readPropertyAnnotationValue">Callback to read the property annotation value.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightDeserializer.ReadPayloadStartImplementation(Microsoft.OData.ODataPayloadKind,Microsoft.OData.PropertyAndAnnotationCollector,System.Boolean,System.Boolean)">
            <summary>
            Read the start of the top-level data wrapper in JSON responses.
            </summary>
            <param name="payloadKind">The kind of payload we are reading; this guides the parsing of the context URI.</param>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker.</param>
            <param name="isReadingNestedPayload">true if we are deserializing a nested payload, e.g. a resource, a resource set or a collection within a parameters payload.</param>
            <param name="allowEmptyPayload">true if we allow a completely empty payload; otherwise false.</param>
            <returns>The value of the context URI annotation (or null if it was not found).</returns>
            <remarks>
            Pre-Condition: JsonNodeType.None: assumes that the JSON reader has not been used yet when not reading a nested payload.
            Post-Condition: The reader is positioned on the first property of the payload after having read (or skipped) the context URI property.
                            Or the reader is positioned on an end-object node if there are no properties (other than the context URI which is required in responses and optional in requests).
            </remarks>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightEntityReferenceLinkDeserializer">
            <summary>
            OData JsonLight deserializer for entity reference links.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightEntityReferenceLinkDeserializer.#ctor(Microsoft.OData.JsonLight.ODataJsonLightInputContext)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonLightInputContext">The JsonLight input context to read from.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightEntityReferenceLinkDeserializer.ReadEntityReferenceLinks">
            <summary>
            Read a set of top-level entity reference links.
            </summary>
            <returns>An <see cref="T:Microsoft.OData.ODataEntityReferenceLinks"/> representing the read links.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightEntityReferenceLinkDeserializer.ReadEntityReferenceLinksAsync">
            <summary>
            Read a set of top-level entity reference links.
            </summary>
            <returns>A task which returns an <see cref="T:Microsoft.OData.ODataEntityReferenceLinks"/> representing the read links.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightEntityReferenceLinkDeserializer.ReadEntityReferenceLink">
            <summary>
            Reads a top-level entity reference link - implementation of the actual functionality.
            </summary>
            <returns>An <see cref="T:Microsoft.OData.ODataEntityReferenceLink"/> representing the read entity reference link.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightEntityReferenceLinkDeserializer.ReadEntityReferenceLinkAsync">
            <summary>
            Reads a top-level entity reference link - implementation of the actual functionality.
            </summary>
            <returns>A task which returns an <see cref="T:Microsoft.OData.ODataEntityReferenceLink"/> representing the read entity reference link.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightEntityReferenceLinkDeserializer.ReadEntityReferenceLinksImplementation(Microsoft.OData.PropertyAndAnnotationCollector)">
            <summary>
            Read a set of top-level entity reference links.
            </summary>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker to use for the top-level scope.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataEntityReferenceLinks"/> representing the read links.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightEntityReferenceLinkDeserializer.ReadEntityReferenceLinkImplementation(Microsoft.OData.PropertyAndAnnotationCollector)">
            <summary>
            Reads a top-level entity reference link - implementation of the actual functionality.
            </summary>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker to use for the top-level scope.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataEntityReferenceLink"/> representing the read entity reference link.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightEntityReferenceLinkDeserializer.ReadEntityReferenceLinksAnnotations(Microsoft.OData.ODataEntityReferenceLinks,Microsoft.OData.PropertyAndAnnotationCollector,System.Boolean)">
            <summary>
            Reads the entity reference link instance annotations.
            </summary>
            <param name="links">The <see cref="T:Microsoft.OData.ODataEntityReferenceLinks"/> to read the annotations for.</param>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker for the entity reference links scope.</param>
            <param name="forLinksStart">true when parsing the instance annotations before the 'value' property;
            false when parsing the instance annotations after the 'value' property.</param>
            <remarks>
            Pre-Condition: JsonNodeType.Property The first property in the payload (or the first property after the context URI in responses)
                            JsonNodeType.EndObject The end of the entity reference links object
            Post-Condition: JsonNodeType.EndObject When the end of the entity reference links object is reached
                            Any The first node of the value of the 'url' property (if found)
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightEntityReferenceLinkDeserializer.ReadEntityReferenceLinksNextLinkAnnotationValue(Microsoft.OData.ODataEntityReferenceLinks)">
            <summary>
            Reads the odata.nextlink value of an entity reference links nextlink annotation.
            </summary>
            <param name="links">The entity reference links to read the next link value for; the value of the nextlink will be assigned to this instance.</param>
            <remarks>
            Pre-Condition: JsonNodeType.PrimitiveValue The value of the instance annotation
            Post-Condition: JsonNodeType.EndObject The end of the entity reference links object
                            JsonNodeType.Property The next property after the instance annotation
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightEntityReferenceLinkDeserializer.ReadEntityReferenceCountAnnotationValue(Microsoft.OData.ODataEntityReferenceLinks)">
            <summary>
            Reads the value of an entity reference links count annotation.
            </summary>
            <param name="links">The entity reference links to read the count value for; the value of the count will be assigned to this instance.</param>
            <remarks>
            Pre-Condition: JsonNodeType.PrimitiveValue The value of the instance annotation
            Post-Condition: JsonNodeType.EndObject The end of the entity reference links object
                            JsonNodeType.Property The next property after the instance annotation
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightEntityReferenceLinkDeserializer.ReadSingleEntityReferenceLink(Microsoft.OData.PropertyAndAnnotationCollector,System.Boolean)">
            <summary>
            Read an entity reference link.
            </summary>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker to check for duplicate properties and
            duplicate annotations; this is a separate instance per entity reference link.</param>
            <param name="topLevel">true if we are reading a singleton entity reference link at the top level; false if we are reading
            an entity reference link as part of a collection of entity reference links.</param>
            <returns>An instance of <see cref="T:Microsoft.OData.ODataEntityReferenceLink"/> which was read.</returns>
            <remarks>
            Pre-Condition: StartObject when the entity reference link is part of a collection
                            Property the first property in the entity reference link (for a top-level link)
                            EndObject the end object node of an entity reference link (for a top-level link)
            Post-Condition: EndInput for a top-level object
                            EndArray for the last link in a collection of links
                            Any for the first node of the next link in a collection of links
            </remarks>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightEntityReferenceLinkSerializer">
            <summary>
            OData JsonLight serializer for entity reference links.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightEntityReferenceLinkSerializer.#ctor(Microsoft.OData.JsonLight.ODataJsonLightOutputContext)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonLightOutputContext">The output context to write to.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightEntityReferenceLinkSerializer.WriteEntityReferenceLink(Microsoft.OData.ODataEntityReferenceLink)">
            <summary>
            Writes a single top-level Uri in response to a $ref query.
            </summary>
            <param name="link">The entity reference link to write out.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightEntityReferenceLinkSerializer.WriteEntityReferenceLinks(Microsoft.OData.ODataEntityReferenceLinks)">
            <summary>
            Writes a set of links (Uris) in response to a $ref query; includes optional count and next-page-link information.
            </summary>
            <param name="entityReferenceLinks">The set of entity reference links to write out.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightEntityReferenceLinkSerializer.WriteEntityReferenceLinkImplementation(Microsoft.OData.ODataEntityReferenceLink,System.Boolean)">
            <summary>
            Writes a single Uri in response to a $ref query.
            </summary>
            <param name="entityReferenceLink">The entity reference link to write out.</param>
            <param name="isTopLevel">true if the entity reference link being written is at the top level of the payload.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightEntityReferenceLinkSerializer.WriteEntityReferenceLinksImplementation(Microsoft.OData.ODataEntityReferenceLinks)">
            <summary>
            Writes a set of links (Uris) in response to a $ref query; includes optional count and next-page-link information.
            </summary>
            <param name="entityReferenceLinks">The set of entity reference links to write out.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightEntityReferenceLinkSerializer.WriteNextLinkAnnotation(System.Uri)">
            <summary>
            Writes the next link property, which consists of the property name and value.
            </summary>
            <param name="nextPageLink">The non-null value of the next link to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightEntityReferenceLinkSerializer.WriteCountAnnotation(System.Int64)">
            <summary>
            Writes the odata.count property, which consists of the property name and value.
            </summary>
            <param name="countValue">The value of the count property to write.</param>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightErrorDeserializer">
            <summary>
            OData JsonLight deserializer for errors.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightErrorDeserializer.#ctor(Microsoft.OData.JsonLight.ODataJsonLightInputContext)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonLightInputContext">The JsonLight input context to read from.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightErrorDeserializer.ReadTopLevelError">
            <summary>
            Read a top-level error.
            </summary>
            <returns>An <see cref="T:Microsoft.OData.ODataError"/> representing the read error.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.None - The reader must not have been used yet.
            Post-Condition: JsonNodeType.EndOfInput
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightErrorDeserializer.ReadTopLevelErrorAsync">
            <summary>
            Read a top-level error.
            </summary>
            <returns>A task which returns an <see cref="T:Microsoft.OData.ODataError"/> representing the read error.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.None - The reader must not have been used yet.
            Post-Condition: JsonNodeType.EndOfInput
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightErrorDeserializer.ReadTopLevelErrorImplementation">
            <summary>
            Read a top-level error.
            </summary>
            <returns>An <see cref="T:Microsoft.OData.ODataError"/> representing the read error.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.Property - The first property of the top level object.
                            JsonNodeType.EndObject - If there are no properties in the top level object.
                            any - Will throw if anything else.
            Post-Condition: JsonNodeType.EndOfInput
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightErrorDeserializer.ReadJsonObjectInErrorPayload(System.Action{System.String,Microsoft.OData.PropertyAndAnnotationCollector})">
             <summary>
             Reads all the properties in a single JSON object scope, calling <paramref name="readPropertyWithValue"/> for each non-annotation property encountered.
             </summary>
             <param name="readPropertyWithValue">
             An action which takes the name of the current property and processes the property value as necessary.
             At the start of this action, the reader is positioned at the property value node.
             The action should leave the reader positioned on the node after the property value.
             </param>
             <remarks>
             
             This method should only be used for scopes where we allow (and ignore) annotations in a custom namespace, i.e. scopes which directly correspond to a class in the OM.
             
             Pre-Condition: JsonNodeType.StartObject - The start of the JSON object being processed.
                             any - Will throw if not StartObject.
             Post-Condition: any - The node after the EndObject node for the JSON object being processed.
             </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightErrorDeserializer.ReadErrorPropertyAnnotationValue(System.String)">
             <summary>
             Reads a value of property annotation on an error payload.
             </summary>
             <param name="propertyAnnotationName">The name of the property annotation to read.</param>
             <returns>The value of the property annotation.</returns>
             <remarks>
             This method should read the property annotation value and return a representation of the value which will be later
             consumed by the resource reading code, or throw if ther is something unexpected.
             
             Pre-Condition: JsonNodeType.PrimitiveValue The value of the property annotation property
                             JsonNodeType.StartObject
                             JsonNodeType.StartArray
             Post-Condition: JsonNodeType.EndObject The end of the error object
                             JsonNodeType.Property The next property after the property annotation
             </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightErrorDeserializer.ReadODataErrorObject(Microsoft.OData.ODataError)">
            <summary>
            Reads the JSON object which is the value of the "error" property.
            </summary>
            <param name="error">The <see cref="T:Microsoft.OData.ODataError"/> object to update with data from the payload.</param>
            <remarks>
            Pre-Condition: JsonNodeType.StartObject - The start of the "error" object.
                            any - Will throw if not StartObject.
            Post-Condition: any - The node after the "error" object's EndNode.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightErrorDeserializer.ReadInnerError(System.Int32)">
            <summary>
            Reads an inner error payload.
            </summary>
            <param name="recursionDepth">The number of times this method has been called recursively.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataInnerError"/> representing the read inner error.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.StartObject - The start of the "innererror" object.
                            any - will throw if not StartObject.
            Post-Condition: any - The node after the "innererror" object's EndNode.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightErrorDeserializer.ReadPropertyValueInInnerError(System.Int32,Microsoft.OData.ODataInnerError,System.String)">
            <summary>
            Reads a property value which occurs in the "innererror" object scope.
            </summary>
            <param name="recursionDepth">The number of parent inner errors for this inner error.</param>
            <param name="innerError">The <see cref="T:Microsoft.OData.ODataError"/> object to update with the data from this property value.</param>
            <param name="propertyName">The name of the property whose value is to be read.</param>
            <remarks>
            Pre-Condition: any - The value of the property being read.
            Post-Condition: JsonNodeType.Property - The property after the one being read.
                            JsonNodeType.EndObject - The end of the "innererror" object.
                            any - Anything else after the property value is an invalid payload (but won't fail in this method).
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightErrorDeserializer.ReadPropertyValueInODataErrorObject(Microsoft.OData.ODataError,System.String,Microsoft.OData.PropertyAndAnnotationCollector)">
            <summary>
            Reads a property value which occurs in the "error" object scope.
            </summary>
            <param name="error">The <see cref="T:Microsoft.OData.ODataError"/> object to update with the data from this property value.</param>
            <param name="propertyName">The name of the property whose value is to be read.</param>
            <param name="duplicationPropertyNameChecker">PropertyAndAnnotationCollector to use for extracting property annotations
            targetting any custom instance annotations on the error.</param>
            <remarks>
            Pre-Condition: any - The value of the property being read.
            Post-Condition: JsonNodeType.Property - The property after the one being read.
                            JsonNodeType.EndObject - The end of the "error" object.
                            any - Anything else after the property value is an invalid payload (but won't fail in this method).
            </remarks>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightInputContext">
            <summary>
            Implementation of the OData input for JsonLight OData format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightInputContext.metadataLevel">
            <summary>
            The json metadata level (i.e., full, none, minimal) being written.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightInputContext.textReader">
            <summary>The text reader created for the input stream.</summary>
            <remarks>
            The ODataJsonLightInputContext instance owns the textReader instance and thus disposes it.
            We further set this field to null when the input is disposed and use it for checks whether the instance has already been disposed.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightInputContext.jsonReader">
            <summary>The JSON reader to read from.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightInputContext.stream">
            <summary>
            The JsonLight message stream.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.#ctor(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>Constructor.</summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageReaderSettings">Configuration settings of the OData reader.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.#ctor(System.IO.TextReader,Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>Constructor.</summary>
            <param name="textReader">The text reader to use.</param>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageReaderSettings">Configuration settings of the OData reader.</param>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightInputContext.MetadataLevel">
            <summary>
            The json metadata level (i.e., full, none, minimal) being written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightInputContext.JsonReader">
            <summary>
            Returns the <see cref="T:Microsoft.OData.Json.BufferingJsonReader"/> which is to be used to read the content of the message.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightInputContext.Stream">
            <summary>
            The stream of the JsonLight input context.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateResourceSetReader(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource set.
            </summary>
            <param name="entitySet">The entity set we are going to read resources for.</param>
            <param name="expectedResourceType">The expected structured type for the items in the resource set.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateResourceSetReaderAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource set.
            </summary>
            <param name="entitySet">The entity set we are going to read resources for.</param>
            <param name="expectedResourceType">The expected structured type for the items in the resource set.</param>
            <returns>Task which when completed returns the newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateDeltaResourceSetReader(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a delta resource set.
            </summary>
            <param name="entitySet">The entity set we are going to read resources for.</param>
            <param name="expectedResourceType">The expected structured type for the items in the resource set.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateDeltaResourceSetReaderAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a delta resource set.
            </summary>
            <param name="entitySet">The entity set we are going to read resources for.</param>
            <param name="expectedResourceType">The expected structured type for the items in the resource set.</param>
            <returns>Task which when completed returns the newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateResourceReader(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource.
            </summary>
            <param name="navigationSource">The navigation source we are going to read resources for.</param>
            <param name="expectedResourceType">The expected resource type for the resource to be read.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateResourceReaderAsync(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource.
            </summary>
            <param name="navigationSource">The navigation source we are going to read resources for.</param>
            <param name="expectedResourceType">The expected structured type for the resource to be read.</param>
            <returns>Task which when completed returns the newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateCollectionReader(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Create a <see cref="T:Microsoft.OData.ODataCollectionReader"/>.
            </summary>
            <param name="expectedItemTypeReference">The expected type reference for the items in the collection.</param>
            <returns>Newly create <see cref="T:Microsoft.OData.ODataCollectionReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateCollectionReaderAsync(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Asynchronously create a <see cref="T:Microsoft.OData.ODataCollectionReader"/>.
            </summary>
            <param name="expectedItemTypeReference">The expected type reference for the items in the collection.</param>
            <returns>Task which when completed returns the newly create <see cref="T:Microsoft.OData.ODataCollectionReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.ReadProperty(Microsoft.OData.Edm.IEdmStructuralProperty,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            This method creates an reads the property from the input and
            returns an <see cref="T:Microsoft.OData.ODataProperty"/> representing the read property.
            </summary>
            <param name="property">The <see cref="T:Microsoft.OData.Edm.IEdmProperty"/> producing the property to be read.</param>
            <param name="expectedPropertyTypeReference">The expected type reference of the property to read.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataProperty"/> representing the read property.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.ReadPropertyAsync(Microsoft.OData.Edm.IEdmStructuralProperty,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Asynchronously read the property from the input and
            return an <see cref="T:Microsoft.OData.ODataProperty"/> representing the read property.
            </summary>
            <param name="property">The <see cref="T:Microsoft.OData.Edm.IEdmProperty"/> producing the property to be read.</param>
            <param name="expectedPropertyTypeReference">The expected type reference of the property to read.</param>
            <returns>Task which when completed returns an <see cref="T:Microsoft.OData.ODataProperty"/> representing the read property.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.ReadError">
            <summary>
            Read a top-level error.
            </summary>
            <returns>An <see cref="T:Microsoft.OData.ODataError"/> representing the read error.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.ReadErrorAsync">
            <summary>
            Asynchronously read a top-level error.
            </summary>
            <returns>Task which when completed returns an <see cref="T:Microsoft.OData.ODataError"/> representing the read error.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateUriParameterResourceSetReader(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource set in a Uri operation parameter.
            </summary>
            <param name="entitySet">The entity set we are going to read resources for.</param>
            <param name="expectedResourceType">The expected structured type for the items in the resource set.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateUriParameterResourceSetReaderAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource set in a Uri operation parameter.
            </summary>
            <param name="entitySet">The entity set we are going to read resources for.</param>
            <param name="expectedResourceType">The expected structured type for the items in the resource set.</param>
            <returns>Task which when completed returns the newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateUriParameterResourceReader(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource in a Uri operation parameter.
            </summary>
            <param name="navigationSource">The navigation source we are going to read resources for.</param>
            <param name="expectedResourceType">The expected resource type for the resource to be read.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateUriParameterResourceReaderAsync(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource in a Uri operation parameter.
            </summary>
            <param name="navigationSource">The navigation source we are going to read resources for.</param>
            <param name="expectedResourceType">The expected structured type for the resource to be read.</param>
            <returns>Task which when completed returns the newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateParameterReader(Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Create a <see cref="T:Microsoft.OData.ODataParameterReader"/>.
            </summary>
            <param name="operation">The operation whose parameters are being read.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataParameterReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateParameterReaderAsync(Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Asynchronously create a <see cref="T:Microsoft.OData.ODataParameterReader"/>.
            </summary>
            <param name="operation">The operation whose parameters are being read.</param>
            <returns>Task which when completed returns the newly created <see cref="T:Microsoft.OData.ODataParameterReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.DetectPayloadKind(Microsoft.OData.ODataPayloadKindDetectionInfo)">
            <summary>
            Detects the payload kind(s) from the message stream.
            </summary>
            <param name="detectionInfo">Additional information available for the payload kind detection.</param>
            <returns>An enumerable of zero, one or more payload kinds that were detected from looking at the payload in the message stream.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.DetectPayloadKindAsync(Microsoft.OData.ODataPayloadKindDetectionInfo)">
            <summary>
            Detects the payload kind(s) from the message stream.
            </summary>
            <param name="detectionInfo">Additional information available for the payload kind detection.</param>
            <returns>A task which returns an enumerable of zero, one or more payload kinds that were detected from looking at the payload in the message stream.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateDeltaReader(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataDeltaReader" /> to read a resource set.
            </summary>
            <param name="entitySet">The entity set we are going to read entities for.</param>
            <param name="expectedBaseEntityType">The expected base entity type for the entries in the delta response.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataDeltaReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateDeltaReaderAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataDeltaReader" /> to read a resource set.
            </summary>
            <param name="entitySet">The entity set we are going to read entities for.</param>
            <param name="expectedBaseEntityType">The expected base entity type for the entries in the delta response.</param>
            <returns>Task which when completed returns the newly created <see cref="T:Microsoft.OData.ODataDeltaReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateBatchReader">
            <summary>
            Create a <see cref="T:Microsoft.OData.ODataBatchReader"/>.
            </summary>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataCollectionReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateBatchReaderAsync">
            <summary>
            Asynchronously create a <see cref="T:Microsoft.OData.ODataBatchReader"/>.
            </summary>
            <returns>Task which when completed returns the newly created <see cref="T:Microsoft.OData.ODataCollectionReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.ReadServiceDocument">
            <summary>
            Read a service document.
            This method reads the service document from the input and returns
            an <see cref="T:Microsoft.OData.ODataServiceDocument"/> that represents the read service document.
            </summary>
            <returns>An <see cref="T:Microsoft.OData.ODataServiceDocument"/> representing the read service document.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.ReadServiceDocumentAsync">
            <summary>
            Asynchronously read a service document.
            This method reads the service document from the input and returns
            an <see cref="T:Microsoft.OData.ODataServiceDocument"/> that represents the read service document.
            </summary>
            <returns>Task which when completed returns an <see cref="T:Microsoft.OData.ODataServiceDocument"/> representing the read service document.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.ReadEntityReferenceLinks">
            <summary>
            Read a set of top-level entity reference links.
            </summary>
            <returns>An <see cref="T:Microsoft.OData.ODataEntityReferenceLinks"/> representing the read links.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.ReadEntityReferenceLinksAsync">
            <summary>
            Asynchronously read a set of top-level entity reference links.
            </summary>
            <returns>Task which when completed returns an <see cref="T:Microsoft.OData.ODataEntityReferenceLinks"/> representing the read links.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.ReadEntityReferenceLink">
            <summary>
            Reads a top-level entity reference link.
            </summary>
            <returns>An <see cref="T:Microsoft.OData.ODataEntityReferenceLink"/> representing the read entity reference link.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.ReadEntityReferenceLinkAsync">
            <summary>
            Asynchronously read a top-level entity reference link.
            </summary>
            <returns>Task which when completed returns an <see cref="T:Microsoft.OData.ODataEntityReferenceLink"/> representing the read entity reference link.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.Dispose(System.Boolean)">
            <summary>
            Perform the actual cleanup work.
            </summary>
            <param name="disposing">If 'true' this method is called from user code; if 'false' it is called by the runtime.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateTextReader(System.IO.Stream,System.Text.Encoding)">
            <summary>
            Helper method to create a TextReader over the message stream. This is needed by the constructor to dispose the message stream if the creation fails
            since this is called from the constructor in place where exception handling is not possible.
            </summary>
            <param name="messageStream">The stream to read data from.</param>
            <param name="encoding">The encoding to use to read the input.</param>
            <returns>The newly created text reader.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.VerifyCanCreateParameterReader(Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Verifies that CreateParameterReader can be called.
            </summary>
            <param name="operation">The operation whose parameters are being read.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.VerifyCanCreateODataReader(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Verifies that CreateResourceReader, CreateResourceSetReader, CreateDeltaResourceSetReader or CreateDeltaReader can be called.
            </summary>
            <param name="navigationSource">The navigation source we are going to read resources for.</param>
            <param name="structuredType">The expected structured type for the resource/resource set to be read.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.VerifyCanCreateCollectionReader(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Verifies that CreateCollectionReader can be called.
            </summary>
            <param name="expectedItemTypeReference">The expected type reference for the items in the collection.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.VerifyCanReadEntityReferenceLink">
            <summary>
            Verifies that ReadEntityReferenceLink can be called.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.VerifyCanReadProperty">
            <summary>
            Verifies that ReadProperty can be called.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.VerifyCanDetectPayloadKind">
            <summary>
            Verifies that DetectPayloadKind can be called.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.VerifyUserModel">
            <summary>
            Verifies that a user model is available for reading.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateResourceSetReaderImplementation(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,System.Boolean)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource set.
            </summary>
            <param name="entitySet">The entity set we are going to read resources for.</param>
            <param name="expectedResourceType">The expected structured type for the items in the resource set.</param>
            <param name="readingParameter">true means reading a resource set in uri operation parameter, false reading a resource set in other payloads.</param>
            <param name="readingDelta">true if reading a delta resource set.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateDeltaReaderImplementation(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataDeltaReader" /> to read a resource set.
            </summary>
            <param name="entitySet">The entity set we are going to read entities for.</param>
            <param name="expectedBaseEntityType">The expected base entity type for the entries in the delta response.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateResourceReaderImplementation(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource.
            </summary>
            <param name="navigationSource">The navigation source we are going to read resources for.</param>
            <param name="expectedBaseResourceType">The expected structured type for the resource to be read.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateCollectionReaderImplementation(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Create a <see cref="T:Microsoft.OData.ODataCollectionReader"/>.
            </summary>
            <param name="expectedItemTypeReference">The expected type reference for the items in the collection.</param>
            <returns>Newly create <see cref="T:Microsoft.OData.ODataCollectionReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateParameterReaderImplementation(Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Create a <see cref="T:Microsoft.OData.ODataParameterReader"/>.
            </summary>
            <param name="operation">The operation import whose parameters are being read.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataParameterReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightInputContext.CreateBatchReaderImplementation(System.Boolean)">
            <summary>
            Create a concrete <see cref="T:Microsoft.OData.JsonLight.ODataJsonLightBatchReader"/> instance.
            </summary>
            <param name="synchronous">true if the input should be read synchronously; false if it should be read asynchronously.</param>
            <returns>Newly created <see cref="T:Microsoft.OData.ODataBatchReader"/></returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightOutputContext">
            <summary>
            JsonLight format output context.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.metadataLevel">
            <summary>
            The json metadata level (i.e., full, none, minimal) being written.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.outputInStreamErrorListener">
            <summary>An in-stream error listener to notify when in-stream error is to be written. Or null if we don't need to notify anybody.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.messageOutputStream">
            <summary>The message output stream.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.asynchronousOutputStream">
            <summary>The asynchronous output stream if we're writing asynchronously.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.textWriter">
            <summary>The text writer created for the output stream.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.jsonWriter">
            <summary>The JSON writer to write to.</summary>
            <remarks>This field is also used to determine if the output context has been disposed already.</remarks>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.typeNameOracle">
            <summary>
            The oracle to use to determine the type name to write for entries and values.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.propertyCacheHandler">
            <summary>
            The handler to manage property cache.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.#ctor(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageWriterSettings)">
            <summary>
            Constructor.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageWriterSettings">Configuration settings of the OData writer.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.#ctor(System.IO.TextWriter,Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageWriterSettings)">
            <summary>
            Constructor.
            </summary>
            <param name="textWriter">The text writer to write to.</param>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageWriterSettings">Configuration settings of the OData writer.</param>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.JsonWriter">
            <summary>
            Returns the <see cref="P:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.JsonWriter"/> which is to be used to write the content of the message.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.TypeNameOracle">
            <summary>
            Returns the oracle to use when determining the type name to write for entries and values.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.MetadataLevel">
            <summary>
            The json metadata level (i.e., full, none, minimal) being written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.PropertyCacheHandler">
            <summary>
            The handler to manage property cache.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataResourceSetWriter(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource set.
            </summary>
            <returns>The created writer.</returns>
            <param name="entitySet">The entity set we are going to write resources for.</param>
            <param name="resourceType">The resource type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataResourceSetWriterAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource set.
            </summary>
            <param name="entitySet">The entity set we are going to write resources for.</param>
            <param name="resourceType">The resource type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>A running task for the created writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataDeltaResourceSetWriter(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a delta resource set.
            </summary>
            <returns>The created writer.</returns>
            <param name="entitySet">The entity set we are going to write resources for.</param>
            <param name="resourceType">The resource type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataDeltaResourceSetWriterAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a delta resource set.
            </summary>
            <param name="entitySet">The entity set we are going to write resources for.</param>
            <param name="resourceType">The resource type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>A running task for the created writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataResourceWriter(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource.
            </summary>
            <param name="navigationSource">The navigation source we are going to write entities for.</param>
            <param name="resourceType">The entity type for the entries in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>The created writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataResourceWriterAsync(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource.
            </summary>
            <param name="navigationSource">The navigation source we are going to write entities for.</param>
            <param name="resourceType">The structured type for the resources in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>A running task for the created writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataCollectionWriter(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataCollectionWriter" /> to write a collection of primitive or complex values (as result of a service operation invocation).
            </summary>
            <param name="itemTypeReference">The item type of the collection being written or null if no metadata is available.</param>
            <returns>The created collection writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataCollectionWriterAsync(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataCollectionWriter" /> to write a collection of primitive or complex values (as result of a service operation invocation).
            </summary>
            <param name="itemTypeReference">The item type of the collection being written or null if no metadata is available.</param>
            <returns>A running task for the created collection writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataUriParameterResourceWriter(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource into a Uri operation parameter.
            </summary>
            <param name="navigationSource">The navigation source we are going to write resource for.</param>
            <param name="resourceType">The structured type for the resources in the resource set to be written.</param>
            <returns>The created writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataUriParameterResourceWriterAsync(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource into a Uri operation parameter.
            </summary>
            <param name="navigationSource">The navigation source we are going to write resource for.</param>
            <param name="resourceType">The structured type for the resources in the resource set to be written.</param>
            <returns>A running task for the created writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataUriParameterResourceSetWriter(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource set into a Uri operation parameter.
            </summary>
            <returns>The created writer.</returns>
            <param name="entitySet">The entity set we are going to write resources for.</param>
            <param name="resourceType">The resource type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataUriParameterResourceSetWriterAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource set into a Uri operation parameter.
            </summary>
            <param name="entitySet">The entity set we are going to write resources for.</param>
            <param name="resourceType">The resource type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>A running task for the created writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataParameterWriter(Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataParameterWriter" /> to write a parameter payload.
            </summary>
            <param name="operation">The operation whose parameters will be written.</param>
            <returns>The created parameter writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataParameterWriterAsync(Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataParameterWriter" /> to write a parameter payload.
            </summary>
            <param name="operation">The operation import whose parameters will be written.</param>
            <returns>A running task for the created parameter writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.WriteProperty(Microsoft.OData.ODataProperty)">
            <summary>
            Writes an <see cref="T:Microsoft.OData.ODataProperty"/> as message payload.
            </summary>
            <param name="property">The property to write.</param>
            <remarks>It is the responsibility of this method to flush the output before the method returns.</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.WritePropertyAsync(Microsoft.OData.ODataProperty)">
            <summary>
            Asynchronously writes an <see cref="T:Microsoft.OData.ODataProperty"/> as message payload.
            </summary>
            <param name="property">The property to write</param>
            <returns>A task representing the asynchronous operation of writing the property.</returns>
            <remarks>It is the responsibility of this method to flush the output before the task finishes.</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.WriteError(Microsoft.OData.ODataError,System.Boolean)">
            <summary>
            Writes an <see cref="T:Microsoft.OData.ODataError"/> as the message payload.
            </summary>
            <param name="error">The error to write.</param>
            <param name="includeDebugInformation">
            A flag indicating whether debug information (e.g., the inner error from the <paramref name="error"/>) should
            be included in the payload. This should only be used in debug scenarios.
            </param>
            <remarks>It is the responsibility of this method to flush the output before the method returns.</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.WriteErrorAsync(Microsoft.OData.ODataError,System.Boolean)">
            <summary>
            Asynchronously writes an <see cref="T:Microsoft.OData.ODataError"/> as the message payload.
            </summary>
            <param name="error">The error to write.</param>
            <param name="includeDebugInformation">
            A flag indicating whether debug information (e.g., the inner error from the <paramref name="error"/>) should
            be included in the payload. This should only be used in debug scenarios.
            </param>
            <returns>A task representing the asynchronous operation of writing the error.</returns>
            <remarks>It is the responsibility of this method to flush the output before the task finishes.</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.VerifyNotDisposed">
            <summary>
            Check if the object has been disposed; called from all public API methods. Throws an ObjectDisposedException if the object
            has already been disposed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.Flush">
            <summary>
            Synchronously flush the writer.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.FlushAsync">
            <summary>
            Asynchronously flush the writer.
            </summary>
            <returns>Task which represents the pending flush operation.</returns>
            <remarks>The method should not throw directly if the flush operation itself fails, it should instead return a faulted task.</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.FlushBuffers">
            <summary>
            Flushes all buffered data to the underlying stream synchronously.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.FlushBuffersAsync">
            <summary>
            Flushes all buffered data to the underlying stream asynchronously.
            </summary>
            <returns>Task which represents the pending operation.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.GetOutputStream">
            <summary>
            The output stream to write the payload to.
            </summary>
            <returns>The output stream.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataBatchWriter">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataBatchWriter" /> to write a batch of requests or responses in Json.
            </summary>
            <returns>The created batch writer.</returns>
            <remarks>We don't plan to make this public!</remarks>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataBatchWriterAsync">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataBatchWriter" /> to write a batch of requests or responses.
            </summary>
            <returns>A running task for the created batch writer.</returns>
            <remarks>We don't plan to make this public!</remarks>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.WriteInStreamError(Microsoft.OData.ODataError,System.Boolean)">
            <summary>
            Writes an <see cref="T:Microsoft.OData.ODataError"/> into the message payload.
            </summary>
            <param name="error">The error to write.</param>
            <param name="includeDebugInformation">
            A flag indicating whether debug information (e.g., the inner error from the <paramref name="error"/>) should
            be included in the payload. This should only be used in debug scenarios.
            </param>
            <remarks>
            This method is called if the ODataMessageWriter.WriteError is called once some other
            write operation has already started.
            The method should write the in-stream error representation for the specific format into the current payload.
            Before the method is called no flush is performed on the output context or any active writer.
            It is the responsibility of this method to flush the output before the method returns.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.WriteInStreamErrorAsync(Microsoft.OData.ODataError,System.Boolean)">
            <summary>
            Writes an <see cref="T:Microsoft.OData.ODataError"/> into the message payload.
            </summary>
            <param name="error">The error to write.</param>
            <param name="includeDebugInformation">
            A flag indicating whether debug information (e.g., the inner error from the <paramref name="error"/>) should
            be included in the payload. This should only be used in debug scenarios.
            </param>
            <returns>Task which represents the pending write operation.</returns>
            <remarks>
            This method is called if the ODataMessageWriter.WriteError is called once some other
            write operation has already started.
            The method should write the in-stream error representation for the specific format into the current payload.
            Before the method is called no flush is performed on the output context or any active writer.
            It is the responsibility of this method to make sure that all the data up to this point are written before
            the in-stream error is written.
            It is the responsibility of this method to flush the output before the task finishes.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataDeltaWriter(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataDeltaWriter" /> to write a delta response.
            </summary>
            <returns>The created writer.</returns>
            <param name="entitySet">The entity set we are going to write entities for.</param>
            <param name="entityType">The entity type for the entries in the resource set to be written (or null if the entity set base type should be used).</param>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataDeltaWriterAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataDeltaWriter" /> to write a delta response.
            </summary>
            <param name="entitySet">The entity set we are going to write entities for.</param>
            <param name="entityType">The entity type for the entries in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>A running task for the created writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.WriteServiceDocument(Microsoft.OData.ODataServiceDocument)">
            <summary>
            Writes a service document with the specified <paramref name="serviceDocument"/>
            as message payload.
            </summary>
            <param name="serviceDocument">The service document to write.</param>
            <remarks>It is the responsibility of this method to flush the output before the method returns.</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.WriteServiceDocumentAsync(Microsoft.OData.ODataServiceDocument)">
            <summary>
            Asynchronously writes a service document with the specified <paramref name="serviceDocument"/>
            as message payload.
            </summary>
            <param name="serviceDocument">The service document to write.</param>
            <returns>A task representing the asynchronous operation of writing the service document.</returns>
            <remarks>It is the responsibility of this method to flush the output before the task finishes.</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.WriteEntityReferenceLinks(Microsoft.OData.ODataEntityReferenceLinks)">
            <summary>
            Writes the result of a $ref query as the message payload.
            </summary>
            <param name="links">The entity reference links to write as message payload.</param>
            <remarks>It is the responsibility of this method to flush the output before the method returns.</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.WriteEntityReferenceLinksAsync(Microsoft.OData.ODataEntityReferenceLinks)">
            <summary>
            Asynchronously writes the result of a $ref query as the message payload.
            </summary>
            <param name="links">The entity reference links to write as message payload.</param>
            <returns>A task representing the asynchronous writing of the entity reference links.</returns>
            <remarks>It is the responsibility of this method to flush the output before the task finishes.</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.WriteEntityReferenceLink(Microsoft.OData.ODataEntityReferenceLink)">
            <summary>
            Writes a singleton result of a $ref query as the message payload.
            </summary>
            <param name="link">The entity reference link to write as message payload.</param>
            <remarks>It is the responsibility of this method to flush the output before the method returns.</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.WriteEntityReferenceLinkAsync(Microsoft.OData.ODataEntityReferenceLink)">
            <summary>
            Asynchronously writes a singleton result of a $ref query as the message payload.
            </summary>
            <param name="link">The link result to write as message payload.</param>
            <returns>A running task representing the writing of the link.</returns>
            <remarks>It is the responsibility of this method to flush the output before the task finishes.</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.Dispose(System.Boolean)">
            <summary>
            Perform the actual cleanup work.
            </summary>
            <param name="disposing">If 'true' this method is called from user code; if 'false' it is called by the runtime.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataResourceSetWriterImplementation(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,System.Boolean)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource set.
            </summary>
            <param name="entitySet">The entity set we are going to write entities for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="writingParameter">true means writing a resource set into a uri operation parameter, false writing a resource set in other payloads.</param>
            <param name="writingDelta">true means writing a delta resource set.</param>
            <returns>The created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataDeltaWriterImplementation(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataDeltaWriter" /> to write a delta response.
            </summary>
            <param name="entitySet">The entity set we are going to write entities for.</param>
            <param name="entityType">The entity type for the entries in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>The created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataResourceWriterImplementation(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource.
            </summary>
            <param name="navigationSource">The navigation source we are going to write resource set for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>The created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataCollectionWriterImplementation(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataCollectionWriter" /> to write a collection of primitive or complex values (as result of a service operation invocation).
            </summary>
            <param name="itemTypeReference">The item type of the collection being written or null if no metadata is available.</param>
            <returns>The created collection writer.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataParameterWriterImplementation(Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataParameterWriter" /> to write a parameter payload.
            </summary>
            <param name="operation">The operation whose parameters will be written.</param>
            <returns>The created parameter writer.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.CreateODataBatchWriterImplementation">
            <summary>
            Creates a concrete <see cref="T:Microsoft.OData.JsonLight.ODataJsonLightBatchWriter" /> instance.
            </summary>
            <returns>The newly created batch writer.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.WriteInStreamErrorImplementation(Microsoft.OData.ODataError,System.Boolean)">
            <summary>
            Writes an in-stream error.
            </summary>
            <param name="error">The error to write.</param>
            <param name="includeDebugInformation">
            A flag indicating whether debug information (e.g., the inner error from the <paramref name="error"/>) should
            be included in the payload. This should only be used in debug scenarios.
            </param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.WritePropertyImplementation(Microsoft.OData.ODataProperty)">
            <summary>
            Writes an <see cref="T:Microsoft.OData.ODataProperty"/> as message payload.
            </summary>
            <param name="property">The property to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.WriteServiceDocumentImplementation(Microsoft.OData.ODataServiceDocument)">
            <summary>
            Writes a service document with the specified <paramref name="serviceDocument"/>
            as message payload.
            </summary>
            <param name="serviceDocument">The service document to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.WriteErrorImplementation(Microsoft.OData.ODataError,System.Boolean)">
            <summary>
            Writes an <see cref="T:Microsoft.OData.ODataError"/> as the message payload.
            </summary>
            <param name="error">The error to write.</param>
            <param name="includeDebugInformation">
            A flag indicating whether debug information (e.g., the inner error from the <paramref name="error"/>) should
            be included in the payload. This should only be used in debug scenarios.
            </param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.WriteEntityReferenceLinksImplementation(Microsoft.OData.ODataEntityReferenceLinks)">
            <summary>
            Writes the result of a $ref query as the message payload.
            </summary>
            <param name="links">The entity reference links to write as message payload.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightOutputContext.WriteEntityReferenceLinkImplementation(Microsoft.OData.ODataEntityReferenceLink)">
            <summary>
            Writes a singleton result of a $ref query as the message payload.
            </summary>
            <param name="link">The entity reference link to write as message payload.</param>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightParameterDeserializer">
            <summary>
            OData JsonLight deserializer for parameter payloads.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightParameterDeserializer.propertyAnnotationValueReader">
            <summary>OData property annotation reader for parameter payloads.</summary>
            <remarks>OData property annotations are not supported in parameter payloads.</remarks>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightParameterDeserializer.parameterReader">
            <summary>The JSON Light parameter reader.</summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterDeserializer.#ctor(Microsoft.OData.JsonLight.ODataJsonLightParameterReader,Microsoft.OData.JsonLight.ODataJsonLightInputContext)">
            <summary>
            Constructor.
            </summary>
            <param name="parameterReader">The JSON Light parameter reader.</param>
            <param name="jsonLightInputContext">The JsonLight input context to read from.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterDeserializer.ReadNextParameter(Microsoft.OData.PropertyAndAnnotationCollector)">
            <summary>
            Reads the next parameter from the parameters payload.
            </summary>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker used to read a parameter payload.</param>
            <returns>true if a parameter was read from the payload; otherwise false.</returns>
            <remarks>
            Pre-Condition: Property or EndObject the property node of the parameter to read or the end object node if there are not parameters
            Post-Condition: Property or EndObject the node after the property value of a primitive, complex or null collection parameter
                            Any the start of the value representing a non-null collection parameter (the collection reader will fail if this is not a StartArray node)
            </remarks>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightParameterReader">
            <summary>
            OData parameter reader for the Json Light format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightParameterReader.jsonLightInputContext">
            <summary>The input to read the payload from.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightParameterReader.jsonLightParameterDeserializer">
            <summary>The parameter deserializer to read the parameter input with.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightParameterReader.propertyAndAnnotationCollector">
            <summary>The duplicate property names checker to use for the parameter payload.</summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterReader.#ctor(Microsoft.OData.JsonLight.ODataJsonLightInputContext,Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonLightInputContext">The input to read the payload from.</param>
            <param name="operation">The operation import whose parameters are being read.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterReader.ReadAtStartImplementation">
            <summary>
            Implementation of the reader logic when in state 'Start'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.None: assumes that the JSON reader has not been used yet.
            Post-Condition: When the new state is Value, the reader is positioned at the closing '}' or at the name of the next parameter.
                            When the new state is Resource, the reader is positioned at the starting '{' of the resource payload.
                            When the new state is Resource Set or Collection, the reader is positioned at the starting '[' of the resource set or collection payload.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterReader.ReadAtStartImplementationAsync">
            <summary>
            Implementation of the parameter reader logic when in state 'Start'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.None: assumes that the JSON reader has not been used yet.
            Post-Condition: When the new state is Value, the reader is positioned at the closing '}' or at the name of the next parameter.
                            When the new state is Resource, the reader is positioned at the starting '{' of the resource payload.
                            When the new state is Resource Set or Collection, the reader is positioned at the starting '[' of the resource set or collection payload.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterReader.ReadNextParameterImplementation">
            <summary>
            Implementation of the reader logic on the subsequent reads after the first parameter is read.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.Property or JsonNodeType.EndObject: assumes the last read puts the reader at the begining of the next parameter or at the end of the payload.
            Post-Condition: When the new state is Value, the reader is positioned at the closing '}' or at the name of the next parameter.
                            When the new state is Resource, the reader is positioned at the starting '{' of the resource payload.
                            When the new state is Resource Set or Collection, the reader is positioned at the starting '[' of the resource set or collection payload.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterReader.ReadNextParameterImplementationAsync">
            <summary>
            Implementation of the reader logic when in state Value, Resource, Resource Set or Collection state.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.Property or JsonNodeType.EndObject: assumes the last read puts the reader at the begining of the next parameter or at the end of the payload.
            Post-Condition: When the new state is Value, the reader is positioned at the closing '}' or at the name of the next parameter.
                            When the new state is Resource, the reader is positioned at the starting '{' of the resource payload.
                            When the new state is Resource Set or Collection, the reader is positioned at the starting '[' of the resource set or collection payload.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterReader.CreateResourceReader(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader"/> to read the resource value of type <paramref name="expectedResourceType"/>.
            </summary>
            <param name="expectedResourceType">Expected resource type to read.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataReader"/> to read the resource value of type <paramref name="expectedResourceType"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterReader.CreateResourceReaderAsync(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader"/> to read the resource value of type <paramref name="expectedResourceType"/>.
            </summary>
            <param name="expectedResourceType">Expected entity type to read.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataReader"/> to read the resource value of type <paramref name="expectedResourceType"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterReader.CreateResourceSetReader(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader"/> to read the resource set value of type <paramref name="expectedResourceType"/>.
            </summary>
            <param name="expectedResourceType">Expected resource set element type to read.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataReader"/> to read the resource set value of type <paramref name="expectedResourceType"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterReader.CreateResourceSetReaderAsync(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Cretes an <see cref="T:Microsoft.OData.ODataReader"/> to read the resource set value of type <paramref name="expectedResourceType"/>.
            </summary>
            <param name="expectedResourceType">Expected resource set element type to read.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataReader"/> to read the resource set value of type <paramref name="expectedResourceType"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterReader.CreateCollectionReader(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataCollectionReader"/> to read the collection with type <paramref name="expectedItemTypeReference"/>.
            </summary>
            <param name="expectedItemTypeReference">Expected item type reference of the collection to read.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataCollectionReader"/> to read the collection with type <paramref name="expectedItemTypeReference"/>.</returns>
            <remarks>
            Pre-Condition: Any: the reader should be on the start array node of the collection value; if it is not we let the collection reader fail.
            Post-Condition: Any: the reader should be on the start array node of the collection value; if it is not we let the collection reader fail.
            NOTE: this method does not move the reader.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterReader.CreateCollectionReaderAsync(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataCollectionReader"/> to read the collection with type <paramref name="expectedItemTypeReference"/>.
            </summary>
            <param name="expectedItemTypeReference">Expected item type reference of the collection to read.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataCollectionReader"/> to read the collection with type <paramref name="expectedItemTypeReference"/>.</returns>
            <remarks>
            Pre-Condition: Any: the reader should be on the start array node of the collection value; if it is not we let the collection reader fail.
            Post-Condition: Any: the reader should be on the start array node of the collection value; if it is not we let the collection reader fail.
            NOTE: this method does not move the reader.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterReader.ReadAtStartImplementationSynchronously">
            <summary>
            Implementation of the reader logic when in state 'Start'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.None: assumes that the JSON reader has not been used yet.
            Post-Condition: When the new state is Value, the reader is positioned at the closing '}' or at the name of the next parameter.
                            When the new state is Resource, the reader is positioned at the starting '{' of the resource payload.
                            When the new state is Resource Set or Collection, the reader is positioned at the starting '[' of the resource set or collection payload.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterReader.ReadNextParameterImplementationSynchronously">
            <summary>
            Implementation of the reader logic on the subsequent reads after the first parameter is read.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.Property or JsonNodeType.EndObject: assumes the last read puts the reader at the begining of the next parameter or at the end of the payload.
            Post-Condition: When the new state is Value, the reader is positioned at the closing '}' or at the name of the next parameter.
                            When the new state is Resource, the reader is positioned at the starting '{' of the resource payload.
                            When the new state is Resource Set or Collection, the reader is positioned at the starting '[' of the resource set or collection payload.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterReader.CreateResourceReaderSynchronously(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader"/> to read the resource value of type <paramref name="expectedResourceType"/>.
            </summary>
            <param name="expectedResourceType">Expected entity type to read.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataReader"/> to read the resource value of type <paramref name="expectedResourceType"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterReader.CreateResourceSetReaderSynchronously(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader"/> to read the resource set value of type <paramref name="expectedResourceType"/>.
            </summary>
            <param name="expectedResourceType">Expected resource set element type to read.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataReader"/> to read the resource set value of type <paramref name="expectedResourceType"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterReader.CreateCollectionReaderSynchronously(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataCollectionReader"/> to read the collection with type <paramref name="expectedItemTypeReference"/>.
            </summary>
            <param name="expectedItemTypeReference">Expected item type reference of the collection to read.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataCollectionReader"/> to read the collection with type <paramref name="expectedItemTypeReference"/>.</returns>
            <remarks>
            Pre-Condition: Any: the reader should be on the start array node of the collection value; if it is not we let the collection reader fail.
            Post-Condition: Any: the reader should be on the start array node of the collection value; if it is not we let the collection reader fail.
            NOTE: this method does not move the reader.
            </remarks>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightParameterWriter">
            <summary>
            ODataParameterWriter for the JsonLight format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightParameterWriter.jsonLightOutputContext">
            <summary>
            The output context to write to.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightParameterWriter.jsonLightValueSerializer">
            <summary>
            The JsonLight property and value serializer to use.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterWriter.#ctor(Microsoft.OData.JsonLight.ODataJsonLightOutputContext,Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonLightOutputContext">The output context to write to.</param>
            <param name="operation">The operation import whose parameters will be written.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterWriter.VerifyNotDisposed">
            <summary>
            Check if the object has been disposed; called from all public API methods. Throws an ObjectDisposedException if the object
            has already been disposed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterWriter.FlushSynchronously">
            <summary>
            Flush the output.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterWriter.FlushAsynchronously">
            <summary>
            Flush the output.
            </summary>
            <returns>Task representing the pending flush operation.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterWriter.StartPayload">
            <summary>
            Start writing an OData payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterWriter.EndPayload">
            <summary>
            Finish writing an OData payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterWriter.WriteValueParameter(System.String,System.Object,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Writes a value parameter (either primitive or enum)
            </summary>
            <param name="parameterName">The name of the parameter to write.</param>
            <param name="parameterValue">The value of the parameter to write.</param>
            <param name="expectedTypeReference">The expected type reference of the parameter value.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterWriter.CreateFormatCollectionWriter(System.String,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Creates a format specific <see cref="T:Microsoft.OData.ODataCollectionWriter"/> to write the value of a collection parameter.
            </summary>
            <param name="parameterName">The name of the collection parameter to write.</param>
            <param name="expectedItemType">The type reference of the expected item type or null if no expected item type exists.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataCollectionWriter"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterWriter.CreateFormatResourceWriter(System.String,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>Creates a format specific <see cref="T:Microsoft.OData.ODataWriter"/> to write a resource.</summary>
            <param name="parameterName">The name of the parameter to write.</param>
            <param name="expectedItemType">The type reference of the expected item type or null if no expected item type exists.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataWriter"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightParameterWriter.CreateFormatResourceSetWriter(System.String,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>Creates a format specific <see cref="T:Microsoft.OData.ODataWriter"/> to write a resource set.</summary>
            <param name="parameterName">The name of the parameter to write.</param>
            <param name="expectedItemType">The type reference of the expected item type or null if no expected item type exists.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataWriter"/>.</returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightPayloadKindDetectionDeserializer">
            <summary>
            OData JsonLight deserializer for detecting the payload kind of a JsonLight payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPayloadKindDetectionDeserializer.#ctor(Microsoft.OData.JsonLight.ODataJsonLightInputContext)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonLightInputContext">The JsonLight input context to read from.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPayloadKindDetectionDeserializer.DetectPayloadKind(Microsoft.OData.ODataPayloadKindDetectionInfo)">
            <summary>
            Detects the payload kind(s).
            </summary>
            <param name="detectionInfo">Additional information available for the payload kind detection.</param>
            <returns>An enumerable of zero, one or more payload kinds that were detected from looking at the payload in the message stream.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPayloadKindDetectionDeserializer.DetectPayloadKindAsync(Microsoft.OData.ODataPayloadKindDetectionInfo)">
            <summary>
            Detects the payload kind(s).
            </summary>
            <param name="detectionInfo">Additional information available for the payload kind detection.</param>
            <returns>A task which returns an enumerable of zero, one or more payload kinds that were detected from looking at the payload in the message stream.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPayloadKindDetectionDeserializer.DetectPayloadKindImplementation(Microsoft.OData.ODataPayloadKindDetectionInfo)">
            <summary>
            Detects the payload kind(s).
            </summary>
            <param name="detectionInfo">Additional information available for the payload kind detection.</param>
            <returns>An enumerable of zero, one or more payload kinds that were detected from looking at the payload in the message stream.</returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer">
            <summary>
            OData JsonLight deserializer for properties and value types.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.missingPropertyValue">
            <summary>A sentinel value indicating a missing property value.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.recursionDepth">
            <summary>
            The current recursion depth of values read by this deserializer, measured by the number of complex, collection, JSON object and JSON array values read so far.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.#ctor(Microsoft.OData.JsonLight.ODataJsonLightInputContext)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonLightInputContext">The JsonLight input context to read from.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ReadTopLevelProperty(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            This method creates an reads the property from the input and
            returns an <see cref="T:Microsoft.OData.ODataProperty"/> representing the read property.
            </summary>
            <param name="expectedPropertyTypeReference">The expected type reference of the property to read.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataProperty"/> representing the read property.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ReadTopLevelPropertyAsync(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            This method creates an reads the property from the input and
            returns an <see cref="T:Microsoft.OData.ODataProperty"/> representing the read property.
            </summary>
            <param name="expectedPropertyTypeReference">The expected type reference of the property to read.</param>
            <returns>A task which returns an <see cref="T:Microsoft.OData.ODataProperty"/> representing the read property.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ReadNonEntityValue(System.String,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.PropertyAndAnnotationCollector,Microsoft.OData.CollectionWithoutExpectedTypeValidator,System.Boolean,System.Boolean,System.Boolean,System.String,System.Nullable{System.Boolean})">
             <summary>
             Reads a primitive value, complex value or collection.
             </summary>
             <param name="payloadTypeName">The type name read from the payload as a property annotation, or null if none is available.</param>
             <param name="expectedValueTypeReference">The expected type reference of the property value.</param>
             <param name="propertyAndAnnotationCollector">The duplicate property names checker to use - if null the method should create a new one if necessary.</param>
             <param name="collectionValidator">The collection validator instance if no expected item type has been specified; otherwise null.</param>
             <param name="validateNullValue">true to validate null values; otherwise false.</param>
             <param name="isTopLevelPropertyValue">true if we are reading a top-level property value; otherwise false.</param>
             <param name="insideComplexValue">true if we are reading a complex value and the reader is already positioned inside the complex value; otherwise false.</param>
             <param name="propertyName">The name of the property whose value is being read, if applicable (used for error reporting).</param>
             <param name="isDynamicProperty">Indicates whether the property is dynamic or unknown.</param>
             <returns>The value of the property read.</returns>
             <remarks>
             Pre-Condition: JsonNodeType.PrimitiveValue - the value of the property is a primitive value
                             JsonNodeType.StartObject - the value of the property is an object
                             JsonNodeType.StartArray - the value of the property is an array - method will fail in this case.
             Post-Condition: almost anything - the node after the property value.
             
             Returns the value of the property read, which can be one of:
             - null
             - primitive value
             - <see cref="T:Microsoft.OData.ODataCollectionValue"/>
             </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ReadCustomInstanceAnnotationValue(Microsoft.OData.PropertyAndAnnotationCollector,System.String)">
            <summary>
            Reads the value of the instance annotation.
            </summary>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker instance.</param>
            <param name="name">The name of the instance annotation.</param>
            <returns>Returns the value of the instance annotation.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ReadODataOrCustomInstanceAnnotationValue(System.String,System.String)">
            <summary>
            Reads bulit-in "odata." or custom instance annotation's value.
            </summary>
            <param name="annotationName">The annotation name.</param>
            <param name="odataType">the odata.type value if exists.</param>
            <returns>The annotation value.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ResolveUntypedType(Microsoft.OData.Json.JsonNodeType,System.Object,System.String,Microsoft.OData.Edm.IEdmTypeReference,System.Func{System.Object,System.String,Microsoft.OData.Edm.IEdmTypeReference},System.Boolean,System.Boolean)">
            <summary>
            Resolve the IEdmTypeReference of the current untyped value to be read.
            </summary>
            <param name="jsonReaderNodeType">The current JsonReader NodeType.</param>
            <param name="jsonReaderValue">The current JsonReader Value</param>
            <param name="payloadTypeName">The 'odata.type' annotation in payload.</param>
            <param name="payloadTypeReference">The payloadTypeReference of 'odata.type'.</param>
            <param name="primitiveTypeResolver">Function that takes a primitive value and returns an <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/>.</param>
            <param name="readUntypedAsString">Whether unknown properties should be read as a raw string value.</param>
            <param name="generateTypeIfMissing">Whether to generate a type if not already part of the model.</param>
            <returns>The <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/> of the current value to be read.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.TryReadOrPeekPayloadType(Microsoft.OData.PropertyAndAnnotationCollector,System.String,System.Boolean)">
            <summary>
            Try to read or peek the odata.type annotation.
            </summary>
            <param name="propertyAndAnnotationCollector">The current level's PropertyAndAnnotationCollector.</param>
            <param name="propertyName">The property name.</param>
            <param name="insideComplexValue">If inside complex value.</param>
            <returns>The odata.type value or null.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.InnerReadUndeclaredProperty(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,System.String,System.Boolean)">
            <summary>
            Reads an entity or complex type's undeclared property.
            </summary>
            <param name="resourceState">The IODataJsonLightReaderResourceState.</param>
            <param name="propertyName">Now this name can't be found in model.</param>
            <param name="isTopLevelPropertyValue">bool</param>
            <returns>The read result.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ValidateExpandedNestedResourceInfoPropertyValue(Microsoft.OData.Json.IJsonReader,System.Nullable{System.Boolean},System.String)">
            <summary>
            Validates that the value of a JSON property can represent expanded nested resource info.
            </summary>
            <param name="jsonReader">The IJsonReader.</param>
            <param name="isCollection">true if the property is entity set reference property; false for a resource reference property, null if unknown.</param>
            <param name="propertyName">Name for the navigation property, used in error message only.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ReadNonExpandedResourceSetNestedResourceInfo(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,Microsoft.OData.Edm.IEdmStructuralProperty,Microsoft.OData.Edm.IEdmStructuredType,System.String)">
            <summary>
            Reads non-expanded nested resource set.
            </summary>
            <param name="resourceState">The state of the reader for resource to read.</param>
            <param name="collectionProperty">The collection of complex property for which to read the nested resource info. null for undeclared property.</param>
            <param name="nestedResourceType">The item type of the resource set, which should be provided when the collectionProperty is undeclared.</param>
            <param name="propertyName">The propert name.</param>
            <returns>The nested resource info for the expanded link read.</returns>
            <remarks>
            This method doesn't move the reader.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ReadNonExpandedResourceNestedResourceInfo(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,Microsoft.OData.Edm.IEdmStructuralProperty,Microsoft.OData.Edm.IEdmStructuredType,System.String)">
            <summary>
            Reads non-expanded resource nested resource info.
            </summary>
            <param name="resourceState">The state of the reader for resource to read.</param>
            <param name="complexProperty">The complex property for which to read the nested resource info. null for undeclared property.</param>
            <param name="nestedResourceType">The nested resource type which should be provided for undeclared property.</param>
            <param name="propertyName">The propert name.</param>
            <returns>The nested resource info for the complex property to read.</returns>
            <remarks>
            This method doesn't move the reader.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ReadExpandedResourceNestedResourceInfo(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,Microsoft.OData.Edm.IEdmNavigationProperty,System.String,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Reads expanded resource nested resource info.
            </summary>
            <param name="resourceState">The state of the reader for resource to read.</param>
            <param name="navigationProperty">The navigation property for which to read the expanded link. null for undeclared property.</param>
            <param name="propertyName">The property name.</param>
            <param name="propertyType">The type of the property.</param>
            <param name="messageReaderSettings">The ODataMessageReaderSettings.</param>
            <returns>The nested resource info for the expanded link read.</returns>
            <remarks>
            This method doesn't move the reader.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ReadExpandedResourceSetNestedResourceInfo(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,Microsoft.OData.Edm.IEdmNavigationProperty,Microsoft.OData.Edm.IEdmStructuredType,System.String,System.Boolean)">
            <summary>
            Reads expanded resource set nested resource info.
            </summary>
            <param name="resourceState">The state of the reader for resource to read.</param>
            <param name="navigationProperty">The navigation property for which to read the expanded link. null for undeclared property.</param>
            <param name="propertyType">The type of the collection.</param>
            <param name="propertyName">The propert name.</param>
            <param name="isDeltaResourceSet">The property being read represents a nested delta resource set.</param>
            <returns>The nested resource info for the expanded link read.</returns>
            <remarks>
            This method doesn't move the reader.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ReadEntityReferenceLinkForSingletonNavigationLinkInRequest(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,Microsoft.OData.Edm.IEdmNavigationProperty,System.String,System.Boolean)">
            <summary>
            Reads entity reference link for a singleton navigation link in request.
            </summary>
            <param name="resourceState">The state of the reader for resource to read.</param>
            <param name="navigationProperty">The navigation property for which to read the entity reference link.</param>
            <param name="propertyName">The property name.</param>
            <param name="isExpanded">true if the navigation link is expanded.</param>
            <returns>The navigation link info for the entity reference link read.</returns>
            <remarks>
            This method doesn't move the reader.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ReadEntityReferenceLinksForCollectionNavigationLinkInRequest(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,Microsoft.OData.Edm.IEdmNavigationProperty,System.String,System.Boolean)">
            <summary>
            Reads entity reference links for a collection navigation link in request.
            </summary>
            <param name="resourceState">The state of the reader for resource to read.</param>
            <param name="navigationProperty">The navigation property for which to read the entity reference links. null for undeclared property.</param>
            <param name="propertyName">The propert name.</param>
            <param name="isExpanded">true if the navigation link is expanded.</param>
            <returns>The navigation link info for the entity reference links read.</returns>
            <remarks>
            This method doesn't move the reader.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ValidateDataPropertyTypeNameAnnotation(Microsoft.OData.PropertyAndAnnotationCollector,System.String)">
            <summary>
            Gets and validates the type name annotation for the specified property.
            </summary>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker in use for the resource content.</param>
            <param name="propertyName">The name of the property to get the type name for.</param>
            <returns>The type name for the property or null if no type name was found.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.AddResourceProperty(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,System.String,System.Object)">
            <summary>
            Adds a new property to a resource.
            </summary>
            <param name="resourceState">The resource state for the resource to add the property to.</param>
            <param name="propertyName">The name of the property to add.</param>
            <param name="propertyValue">The value of the property to add.</param>
            <returns>The added ODataProperty.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.TryReadODataTypeAnnotationValue(System.String,System.String@)">
             <summary>
             Tries to read an annotation as OData type name annotation.
             </summary>
             <param name="annotationName">The annotation name on which value the reader is positioned on.</param>
             <param name="value">The read value of the annotation (string).</param>
             <returns>true if the annotation is an OData type name annotation, false otherwise.</returns>
             <remarks>
             Pre-Condition: JsonNodeType.PrimitiveValue - the value of the annotation
                             JsonNodeType.StartObject
                             JsonNodeType.StartArray
             Post-Condition: JsonNodeType.Property - the next property after the annotation
                             JsonNodeType.EndObject - end of the parent object
                             JsonNodeType.PrimitiveValue - the reader didn't move
                             JsonNodeType.StartObject
                             JsonNodeType.StartArray
             
             If the method returns true, it consumed the value of the annotation from the reader.
             If it returns false, it didn't move the reader.
             </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ReadODataTypeAnnotationValue">
            <summary>
            Reads the value of the odata.type annotation.
            </summary>
            <returns>The type name read from the annotation.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.PrimitiveValue - the value of the annotation, will fail if it's not PrimitiveValue
                            JsonNodeType.StartObject
                            JsonNodeType.StartArray
            Post-Condition: JsonNodeType.Property - the next property after the annotation
                            JsonNodeType.EndObject - end of the parent object
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ReadTypePropertyAnnotationValue(System.String)">
            <summary>
            Reads top-level property payload property annotation value.
            </summary>
            <param name="propertyAnnotationName">The name of the property annotation.</param>
            <returns>The value of the annotation read.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.GetNonEntityValueKind">
            <summary>
            Determines the value kind for a non-entity value (that is top-level property value, property value on a complex type, item in a collection)
            </summary>
            <returns>The type kind of the property value.</returns>
            <remarks>
            Doesn't move the JSON reader.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.TryReadODataTypeAnnotation(System.String@)">
            <summary>
            Tries to read an annotation as OData type name annotation.
            </summary>
            <param name="payloadTypeName">The read value of the annotation (string).</param>
            <returns>true if the annotation is an OData type name annotation, false otherwise.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.Property - the property that possibly is an odata.type instance annotation
            Post-Condition: JsonNodeType.Property - the next property after the annotation or if the reader did not move
                            JsonNodeType.EndObject - end of the parent object
            If the method returns true, it consumed the value of the annotation from the reader.
            If it returns false, it didn't move the reader.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ReadTopLevelPropertyImplementation(Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.PropertyAndAnnotationCollector)">
            <summary>
            This method creates an reads the property from the input and
            returns an <see cref="T:Microsoft.OData.ODataProperty"/> representing the read property.
            </summary>
            <param name="expectedPropertyTypeReference">The expected type reference of the property to read.</param>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker to use.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataProperty"/> representing the read property.</returns>
            <remarks>
            The method assumes that the ReadPayloadStart has already been called and it will not call ReadPayloadEnd.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.UpdateExpectedTypeBasedOnContextUri(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Updates the expected type based on the context URI if there is one.
            </summary>
            <param name="expectedPropertyTypeReference">The expected property type reference provided by the user through public APIs, or null if one was not provided.</param>
            <returns>The expected type reference updated based on the context uri, if there is one.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ReadCollectionValue(Microsoft.OData.Edm.IEdmCollectionTypeReference,System.String,Microsoft.OData.ODataTypeAnnotation)">
            <summary>
            Reads a collection value.
            </summary>
            <param name="collectionValueTypeReference">The collection type reference of the value.</param>
            <param name="payloadTypeName">The type name read from the payload.</param>
            <param name="typeAnnotation">The serialization type name for the collection value (possibly null).</param>
            <returns>The value of the collection.</returns>
            <remarks>
            Pre-Condition: Fails if the current node is not a JsonNodeType.StartArray
            Post-Condition: almost anything - the node after the collection value (after the EndArray)
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ReadTypeDefinitionValue(System.Boolean,Microsoft.OData.Edm.IEdmTypeDefinitionReference,System.Boolean,System.String)">
            <summary>
            Reads a type definition value.
            </summary>
            <param name="insideJsonObjectValue">true if the reader is positioned on the first property of the value which is a JSON Object
                (or the second property if the first one was odata.type).</param>
            <param name="expectedValueTypeReference">The expected type definition reference of the value, or null if none is available.</param>
            <param name="validateNullValue">true to validate null values; otherwise false.</param>
            <param name="propertyName">The name of the property whose value is being read, if applicable (used for error reporting).</param>
            <returns>The value of the primitive value.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ReadPrimitiveValue(System.Boolean,Microsoft.OData.Edm.IEdmPrimitiveTypeReference,System.Boolean,System.String)">
            <summary>
            Reads a primitive value.
            </summary>
            <param name="insideJsonObjectValue">true if the reader is positioned on the first property of the value which is a JSON Object
                (or the second property if the first one was odata.type).</param>
            <param name="expectedValueTypeReference">The expected type reference of the value, or null if none is available.</param>
            <param name="validateNullValue">true to validate null values; otherwise false.</param>
            <param name="propertyName">The name of the property whose value is being read, if applicable (used for error reporting).</param>
            <returns>The value of the primitive value.</returns>
            <remarks>
            Pre-Condition: insideJsonObjectValue == false -> none - Fails if the current node is not a JsonNodeType.PrimitiveValue
                            insideJsonObjectValue == true -> JsonNodeType.Property or JsonNodeType.EndObject - the first property of the value object,
                                or the second property if first was odata.type, or the end-object.
            Post-Condition: almost anything - the node after the primitive value.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ReadEnumValue(System.Boolean,Microsoft.OData.Edm.IEdmEnumTypeReference,System.Boolean,System.String)">
            <summary>
            Reads a primitive string as enum value.
            </summary>
            <param name="insideJsonObjectValue">true if the reader is positioned on the first property of the value which is a JSON Object
                (or the second property if the first one was odata.type).</param>
            <param name="expectedValueTypeReference">The expected type reference of the value, or null if none is available.</param>
            <param name="validateNullValue">true to validate null values; otherwise false.</param>
            <param name="propertyName">The name of the property whose value is being read, if applicable (used for error reporting).</param>
            <returns>The Enum value from the primitive string.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ReadNonEntityValueImplementation(System.String,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.PropertyAndAnnotationCollector,Microsoft.OData.CollectionWithoutExpectedTypeValidator,System.Boolean,System.Boolean,System.Boolean,System.String,System.Nullable{System.Boolean})">
             <summary>
              Reads a primitive, complex or collection value.
             </summary>
              <param name="payloadTypeName">The type name read from the payload as a property annotation, or null if none is available.</param>
              <param name="expectedTypeReference">The expected type reference of the property value.</param>
              <param name="propertyAndAnnotationCollector">The duplicate property names checker to use - if null the method should create a new one if necessary.</param>
             <param name="collectionValidator">The collection validator instance if no expected item type has been specified; otherwise null.</param>
              <param name="validateNullValue">true to validate null values; otherwise false.</param>
              <param name="isTopLevelPropertyValue">true if we are reading a top-level property value; otherwise false.</param>
              <param name="insideComplexValue">true if we are reading a complex value and the reader is already positioned inside the complex value; otherwise false.</param>
              <param name="propertyName">The name of the property whose value is being read, if applicable (used for error reporting).</param>
              <param name="isDynamicProperty">Indicates whether the property is dynamic or unknown.</param>
              <returns>The value of the property read.</returns>
              <remarks>
              Pre-Condition: JsonNodeType.PrimitiveValue - the value of the property is a primitive value
                              JsonNodeType.StartArray - the value of the property is an array
              Post-Condition: almost anything - the node after the property value.
             
              Returns the value of the property read, which can be one of:
              - null
              - primitive value
              - <see cref="T:Microsoft.OData.ODataCollectionValue"/>
             </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.TryReadPayloadTypeFromObject(Microsoft.OData.PropertyAndAnnotationCollector,System.Boolean,System.String@)">
            <summary>
            Reads the payload type name from a JSON object (if it exists).
            </summary>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker to track the detected 'odata.type' annotation (if any).</param>
            <param name="insideComplexValue">true if we are reading a complex value and the reader is already positioned inside the complex value; otherwise false.</param>
            <param name="payloadTypeName">The value of the odata.type annotation or null if no such annotation exists.</param>
            <returns>true if a type name was read from the payload; otherwise false.</returns>
            <remarks>
            Precondition: StartObject the start of a JSON object
            Postcondition: Property the first property of the object if no 'odata.type' annotation exists as first property
                                            or the first property after the 'odata.type' annotation.
                            EndObject for an empty JSON object or an object with only the 'odata.type' annotation
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ReadingComplexProperty(Microsoft.OData.PropertyAndAnnotationCollector,Microsoft.OData.Edm.IEdmTypeReference,System.String@)">
            <summary>
            Detects whether we are currently reading a complex property or not. This can be determined from metadata (if we have it)
            or from the presence of the odata.type instance annotation in the payload.
            </summary>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker in use for the resource content.</param>
            <param name="expectedPropertyTypeReference">The expected type reference of the property to read.</param>
            <param name="payloadTypeName">The type name of the complex value if found in the payload; otherwise null.</param>
            <returns>true if we are reading a complex property; otherwise false.</returns>
            <remarks>
            This method does not move the reader.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.IsTopLevel6xNullValue">
            <summary>
            Tries to read a top-level null value from the JSON reader.
            </summary>
            <returns>true if a null value could be read from the JSON reader; otherwise false.</returns>
            <remarks>If the method detects the odata.null annotation, it will read it; otherwise the reader does not move.</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.ValidateNoPropertyInNullPayload(Microsoft.OData.PropertyAndAnnotationCollector)">
            <summary>
            Make sure that we don't find any other odata.* annotations or properties after reading a payload with the odata.null annotation.
            </summary>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker to use.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.IncreaseRecursionDepth">
            <summary>
            Increases the recursion depth of values by 1. This will throw if the recursion depth exceeds the current limit.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.DecreaseRecursionDepth">
            <summary>
            Decreases the recursion depth of values by 1.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertyAndValueDeserializer.AssertRecursionDepthIsZero">
            <summary>
            Asserts that the current recursion depth of values is zero. This should be true on all calls into this class from outside of this class.
            </summary>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightPropertySerializer">
            <summary>
            OData JsonLight serializer for properties.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightPropertySerializer.jsonLightValueSerializer">
            <summary>
            Serializer to use to write property values.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightPropertySerializer.currentPropertyInfo">
            <summary>
            Serialization info for current property.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertySerializer.#ctor(Microsoft.OData.JsonLight.ODataJsonLightOutputContext,System.Boolean)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonLightOutputContext">The output context to write to.</param>
            <param name="initContextUriBuilder">Whether contextUriBuilder should be initialized.</param>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightPropertySerializer.JsonLightValueSerializer">
            <summary>
            Gets the json light value writer.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertySerializer.WriteTopLevelProperty(Microsoft.OData.ODataProperty)">
            <summary>
            Write an <see cref="T:Microsoft.OData.ODataProperty" /> to the given stream. This method creates an
            async buffered stream and writes the property to it.
            </summary>
            <param name="property">The property to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertySerializer.WriteProperties(Microsoft.OData.Edm.IEdmStructuredType,System.Collections.Generic.IEnumerable{Microsoft.OData.ODataProperty},System.Boolean,Microsoft.OData.IDuplicatePropertyNameChecker)">
            <summary>
            Writes property names and value pairs.
            </summary>
            <param name="owningType">The <see cref="T:Microsoft.OData.Edm.IEdmStructuredType"/> of the resource (or null if not metadata is available).</param>
            <param name="properties">The enumeration of properties to write out.</param>
            <param name="isComplexValue">
            Whether the properties are being written for complex value. Also used for detecting whether stream properties
            are allowed as named stream properties should only be defined on ODataResource instances
            </param>
            <param name="duplicatePropertyNameChecker">The DuplicatePropertyNameChecker to use.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertySerializer.IsOpenProperty(Microsoft.OData.ODataProperty)">
            <summary>
            Test to see if <paramref name="property"/> is an open property or not.
            </summary>
            <param name="property">The property in question.</param>
            <returns>true if the property is an open property; false if it is not, or if openness cannot be determined</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertySerializer.WriteProperty(Microsoft.OData.ODataProperty,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,System.Boolean,Microsoft.OData.IDuplicatePropertyNameChecker)">
            <summary>
            Writes a name/value pair for a property.
            </summary>
            <param name="property">The property to write out.</param>
            <param name="owningType">The owning type for the <paramref name="property"/> or null if no metadata is available.</param>
            <param name="isTopLevel">true when writing a top-level property; false for nested properties.</param>
            <param name="allowStreamProperty">Should pass in true if we are writing a property of an ODataResource instance, false otherwise.
            Named stream properties should only be defined on ODataResource instances.</param>
            <param name="duplicatePropertyNameChecker">The DuplicatePropertyNameChecker to use.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertySerializer.WriteInstanceAnnotation(Microsoft.OData.ODataProperty,System.Boolean,System.Boolean)">
            <summary>
            Writes instance annotation for property
            </summary>
            <param name="property">The property to handle.</param>
            <param name="isTopLevel">If writing top level property.</param>
            <param name="isUndeclaredProperty">If writing an undeclared property.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertySerializer.WriteODataTypeAnnotation(Microsoft.OData.ODataProperty,System.Boolean)">
            <summary>
            Writes odata type annotation for property
            </summary>
            <param name="property">The property to handle.</param>
            <param name="isTopLevel">If writing top level property.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertySerializer.WriteStreamReferenceProperty(System.String,Microsoft.OData.ODataStreamReferenceValue)">
            <summary>
            Writes a stream property.
            </summary>
            <param name="propertyName">The name of the property to write.</param>
            <param name="streamReferenceValue">The stream reference value to be written</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertySerializer.WriteNullProperty(Microsoft.OData.ODataProperty)">
            <summary>
            Writes a Null property.
            </summary>
            <param name="property">The property to write out.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertySerializer.WriteEnumProperty(Microsoft.OData.ODataEnumValue,System.Boolean)">
            <summary>
            Writes a enum property.
            </summary>
            <param name="enumValue">The enum value to be written.</param>
            <param name="isOpenPropertyType">If the property is open.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertySerializer.WriteCollectionProperty(Microsoft.OData.ODataCollectionValue,System.Boolean)">
            <summary>
            Writes a collection property.
            </summary>
            <param name="collectionValue">The collection value to be written</param>
            <param name="isOpenPropertyType">If the property is open.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertySerializer.WritePrimitiveProperty(Microsoft.OData.ODataPrimitiveValue,System.Boolean)">
            <summary>
            Writes a primitive property.
            </summary>
            <param name="primitiveValue">The primitive value to be written</param>
            <param name="isOpenPropertyType">If the property is open.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightPropertySerializer.WritePropertyTypeName">
            <summary>
            Writes the type name on the wire.
            </summary>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightReader">
            <summary>
            OData reader for the JsonLight format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightReader.jsonLightInputContext">
            <summary>The input to read the payload from.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightReader.jsonLightResourceDeserializer">
            <summary>The resource and resource set deserializer to read input with.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightReader.topLevelScope">
            <summary>The scope associated with the top level of this payload.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightReader.readingParameter">
            <summary>true if the reader is created for reading parameter; false otherwise.</summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.#ctor(Microsoft.OData.JsonLight.ODataJsonLightInputContext,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,System.Boolean,System.Boolean,Microsoft.OData.IODataReaderWriterListener)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonLightInputContext">The input to read the payload from.</param>
            <param name="navigationSource">The navigation source we are going to read resources for.</param>
            <param name="expectedResourceType">The expected structured type for the resource to be read (in case of resource reader) or entries in the resource set to be read (in case of resource set reader).</param>
            <param name="readingResourceSet">true if the reader is created for reading a resource set; false when it is created for reading a resource.</param>
            <param name="readingParameter">true if the reader is created for reading a parameter; false otherwise.</param>
            <param name="readingDelta">true if the reader is created for reading expanded navigation property in delta response; false otherwise.</param>
            <param name="listener">If not null, the Json reader will notify the implementer of the interface of relevant state changes in the Json reader.</param>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReader.CurrentResourceState">
            <summary>
            Returns the current resource state.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReader.CurrentJsonLightResourceSetScope">
            <summary>
            Returns current scope cast to JsonLightResourceSetScope
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReader.CurrentJsonLightNestedResourceInfoScope">
            <summary>
            Returns current scope cast to JsonLightNestedResourceInfoScope
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReader.ParentNestedInfo">
            <summary>
            Returns nest info of current resource.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtStartImplementation">
            <summary>
            Implementation of the reader logic when in state 'Start'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.None: assumes that the JSON reader has not been used yet when not reading a nested payload.
            Post-Condition: when reading a resource set: the reader is positioned on the first item in the resource set or the end array node of an empty resource set
                            when reading a resource: the first node of the first nested resource info value, null for a null expanded link or an end object
                                                    node if there are no navigation links.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtStartImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'Start'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.None: assumes that the JSON reader has not been used yet when not reading a nested payload.
            Post-Condition: when reading a resource set: the reader is positioned on the first item in the resource set or the end array node of an empty resource set
                            when reading a resource: the first node of the first nested resource info value, null for a null expanded link or an end object
                                                    node if there are no navigation links.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtResourceSetStartImplementation">
            <summary>
            Implementation of the reader logic when in state 'ResourceSetStart'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: Any start node - The first resource in the resource set
                            JsonNodeType.EndArray - The end of the resource set
            Post-Condition: The reader is positioned over the StartObject node of the first resource in the resource set or
                            on the node following the resource set end in case of an empty resource set
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtResourceSetStartImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'ResourceSetStart'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: Any start node - The first resource in the resource set
                            JsonNodeType.EndArray - The end of the resource set
            Post-Condition: The reader is positioned over the StartObject node of the first resource in the resource set or
                            on the node following the resource set end in case of an empty resource set
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtResourceSetEndImplementation">
            <summary>
            Implementation of the reader logic when in state 'ResourceSetEnd'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.Property if the resource set has further instance or property annotations after the resource set property
                           JsonNodeType.EndObject if the resource set has no further instance or property annotations after the resource set property
            Post-Condition: JsonNodeType.EndOfInput for a top-level resource set when not reading a nested payload
                            JsonNodeType.Property more properties exist on the owning resource after the expanded link containing the resource set
                            JsonNodeType.EndObject no further properties exist on the owning resource after the expanded link containing the resource set
                            JsonNodeType.EndArray end of expanded link in request, in this case the resource set doesn't actually own the array object and it won't read it.
                            Any in case of expanded resource set in request, this might be the next item in the expanded array, which is not a resource
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtResourceSetEndImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'ResourceSetEnd'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.Property if the resource set has further instance or property annotations after the resource set property
                           JsonNodeType.EndObject if the resource set has no further instance or property annotations after the resource set property
            Post-Condition: JsonNodeType.EndOfInput for a top-level resource set when not reading a nested payload
                            JsonNodeType.Property more properties exist on the owning resource after the expanded link containing the resource set
                            JsonNodeType.EndObject no further properties exist on the owning resource after the expanded link containing the resource set
                            JsonNodeType.EndArray end of expanded link in request, in this case the resource set doesn't actually own the array object and it won't read it.
                            Any in case of expanded resource set in request, this might be the next item in the expanded array, which is not a resource
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtResourceStartImplementation">
            <summary>
            Implementation of the reader logic when in state 'EntryStart'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.StartObject Start of the expanded resource of the nested resource info to read next.
                            JsonNodeType.StartArray Start of the expanded resource set of the nested resource info to read next.
                            JsonNodeType.PrimitiveValue (null) Expanded null resource of the nested resource info to read next.
                            JsonNodeType.Property The next property after a deferred link or entity reference link
                            JsonNodeType.EndObject If no (more) properties exist in the resource's content
            Post-Condition: JsonNodeType.StartObject Start of the expanded resource of the nested resource info to read next.
                            JsonNodeType.StartArray Start of the expanded resource set of the nested resource info to read next.
                            JsonNodeType.PrimitiveValue (null) Expanded null resource of the nested resource info to read next.
                            JsonNodeType.Property The next property after a deferred link or entity reference link
                            JsonNodeType.EndObject If no (more) properties exist in the resource's content
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtResourceStartImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'EntryStart'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.StartObject Start of the expanded resource of the nested resource info to read next.
                            JsonNodeType.StartArray Start of the expanded resource set of the nested resource info to read next.
                            JsonNodeType.PrimitiveValue (null) Expanded null resource of the nested resource info to read next.
                            JsonNodeType.Property The next property after a deferred link or entity reference link
                            JsonNodeType.EndObject If no (more) properties exist in the resource's content
            Post-Condition: JsonNodeType.StartObject Start of the expanded resource of the nested resource info to read next.
                            JsonNodeType.StartArray Start of the expanded resource set of the nested resource info to read next.
                            JsonNodeType.PrimitiveValue (null) Expanded null resource of the nested resource info to read next.
                            JsonNodeType.Property The next property after a deferred link or entity reference link
                            JsonNodeType.EndObject If no (more) properties exist in the resource's content
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtResourceEndImplementation">
            <summary>
            Implementation of the reader logic when in state 'EntryEnd'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.EndObject end of object of the resource
                            JsonNodeType.PrimitiveValue end of primitive value in a collection
            Post-Condition: The reader is positioned on the first node after the resource's end-object node
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtResourceEndImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'EntryEnd'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.EndObject end of object of the resource
                            JsonNodeType.PrimitiveValue (null) end of null expanded resource
            Post-Condition: The reader is positioned on the first node after the resource's end-object node
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtPrimitiveImplementation">
            <summary>
            Implementation of the reader logic when in state 'Primitive'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.PrimitiveValue end of primitive value in a collection
            Post-Condition: The reader is positioned on the first node after the primitive value
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtPrimitiveImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'Primitive'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.PrimitiveValue end of primitive value in a collection
            Post-Condition: The reader is positioned on the first node after the primitive value
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtNestedResourceInfoStartImplementation">
            <summary>
            Implementation of the reader logic when in state 'NestedResourceInfoStart'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.StartObject start of an expanded resource
                            JsonNodeType.StartArray start of an expanded resource set
                            JsonNodeType.PrimitiveValue (null) expanded null resource
                            JsonNodeType.Property deferred link with more properties in owning resource
                            JsonNodeType.EndObject deferred link as last property of the owning resource
            Post-Condition: JsonNodeType.StartArray: start of expanded resource
                            JsonNodeType.StartObject start of expanded resource set
                            JsonNodeType.PrimitiveValue (null) expanded null resource
                            JsonNodeType.Property deferred link with more properties in owning resource
                            JsonNodeType.EndObject deferred link as last property of the owning resource
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtNestedResourceInfoStartImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'NestedResourceInfoStart'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.StartObject start of an expanded resource
                            JsonNodeType.StartArray start of an expanded resource set
                            JsonNodeType.PrimitiveValue (null) expanded null resource
                            JsonNodeType.Property deferred link with more properties in owning resource
                            JsonNodeType.EndObject deferred link as last property of the owning resource
            Post-Condition: JsonNodeType.StartArray: start of expanded resource
                            JsonNodeType.StartObject start of expanded resource set
                            JsonNodeType.PrimitiveValue (null) expanded null resource
                            JsonNodeType.Property deferred link with more properties in owning resource
                            JsonNodeType.EndObject deferred link as last property of the owning resource
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtNestedResourceInfoEndImplementation">
            <summary>
            Implementation of the reader logic when in state 'NestedResourceInfoEnd'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.EndObject: nested resource info is last property in owning resource
                            JsonNodeType.Property: there are more properties after the nested resource info in the owning resource
            Post-Condition: JsonNodeType.StartObject start of the expanded resource nested resource info to read next
                            JsonNodeType.StartArray start of the expanded resource set nested resource info to read next
                            JsonNoteType.Primitive (null) expanded null resource nested resource info to read next
                            JsonNoteType.Property property after deferred link or entity reference link
                            JsonNodeType.EndObject end of the parent resource
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtNestedResourceInfoEndImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'NestedResourceInfoEnd'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.EndObject: nested resource info is last property in owning resource
                            JsonNodeType.Property: there are more properties after the nested resource info in the owning resource
            Post-Condition: JsonNodeType.StartObject start of the expanded resource nested resource info to read next
                            JsonNodeType.StartArray start of the expanded resource set nested resource info to read next
                            JsonNoteType.Primitive (null) expanded null resource nested resource info to read next
                            JsonNoteType.Property property after deferred link or entity reference link
                            JsonNodeType.EndObject end of the parent resource
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtEntityReferenceLink">
            <summary>
            Implementation of the reader logic when in state 'EntityReferenceLink'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            This method doesn't move the reader
            Pre-Condition: JsonNodeType.EndObject: expanded link property is last property in owning resource
                            JsonNodeType.Property: there are more properties after the expanded link property in the owning resource
                            Any: expanded collection link - the node after the entity reference link.
            Post-Condition: JsonNodeType.EndObject: expanded link property is last property in owning resource
                            JsonNodeType.Property: there are more properties after the expanded link property in the owning resource
                            Any: expanded collection link - the node after the entity reference link.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtEntityReferenceLinkAsync">
            <summary>
            Implementation of the reader logic when in state 'EntityReferenceLink'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            This method doesn't move the reader
            Pre-Condition: JsonNodeType.EndObject: expanded link property is last property in owning resource
                            JsonNodeType.Property: there are more properties after the expanded link property in the owning resource
                            Any: expanded collection link - the node after the entity reference link.
            Post-Condition: JsonNodeType.EndObject: expanded link property is last property in owning resource
                            JsonNodeType.Property: there are more properties after the expanded link property in the owning resource
                            Any: expanded collection link - the node after the entity reference link.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtDeltaResourceSetStartImplementation">
            <summary>
            Implementation of the reader logic when in state 'DeltaResourceSetStart'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: Any start node - The first resource in the resource set
                            JsonNodeType.EndArray - The end of the resource set
            Post-Condition: The reader is positioned over the StartObject node of the first resource in the resource set or
                            on the node following the resource set end in case of an empty resource set
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtDeltaResourceSetStartImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'DeltaResourceSetStart'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: Any start node - The first resource in the resource set
                            JsonNodeType.EndArray - The end of the resource set
            Post-Condition: The reader is positioned over the StartObject node of the first resource in the resource set or
                            on the node following the resource set end in case of an empty resource set
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtDeltaResourceSetEndImplementation">
            <summary>
            Implementation of the reader logic when in state 'DeltaResourceSetEnd'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.Property if the resource set has further instance or property annotations after the resource set property
                           JsonNodeType.EndObject if the resource set has no further instance or property annotations after the resource set property
            Post-Condition: JsonNodeType.EndOfInput for a top-level resource set when not reading a nested payload
                            JsonNodeType.Property more properties exist on the owning resource after the expanded link containing the resource set
                            JsonNodeType.EndObject no further properties exist on the owning resource after the expanded link containing the resource set
                            JsonNodeType.EndArray end of expanded link in request, in this case the resource set doesn't actually own the array object and it won't read it.
                            Any in case of expanded resource set in request, this might be the next item in the expanded array, which is not a resource
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtDeltaResourceSetEndImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'DeltaResourceSetEnd'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.Property if the resource set has further instance or property annotations after the resource set property
                           JsonNodeType.EndObject if the resource set has no further instance or property annotations after the resource set property
            Post-Condition: JsonNodeType.EndOfInput for a top-level resource set when not reading a nested payload
                            JsonNodeType.Property more properties exist on the owning resource after the expanded link containing the resource set
                            JsonNodeType.EndObject no further properties exist on the owning resource after the expanded link containing the resource set
                            JsonNodeType.EndArray end of expanded link in request, in this case the resource set doesn't actually own the array object and it won't read it.
                            Any in case of expanded resource set in request, this might be the next item in the expanded array, which is not a resource
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtDeletedResourceStartImplementation">
            <summary>
            Implementation of the reader logic when in state 'DeltaDeletedEntryStart'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.StartObject Start of the expanded resource of the nested resource info to read next.
                            JsonNodeType.StartArray Start of the expanded resource set of the nested resource info to read next.
                            JsonNodeType.PrimitiveValue (null) Expanded null resource of the nested resource info to read next.
                            JsonNodeType.Property The next property after a deferred link or entity reference link
                            JsonNodeType.EndObject If no (more) properties exist in the resource's content
            Post-Condition: JsonNodeType.StartObject Start of the expanded resource of the nested resource info to read next.
                            JsonNodeType.StartArray Start of the expanded resource set of the nested resource info to read next.
                            JsonNodeType.PrimitiveValue (null) Expanded null resource of the nested resource info to read next.
                            JsonNodeType.Property The next property after a deferred link or entity reference link
                            JsonNodeType.EndObject If no (more) properties exist in the resource's content
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtDeletedResourceStartImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'DeltaDeletedResourceStart'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.StartObject Start of the expanded resource of the nested resource info to read next.
                            JsonNodeType.StartArray Start of the expanded resource set of the nested resource info to read next.
                            JsonNodeType.PrimitiveValue (null) Expanded null resource of the nested resource info to read next.
                            JsonNodeType.Property The next property after a deferred link or entity reference link
                            JsonNodeType.EndObject If no (more) properties exist in the resource's content
            Post-Condition: JsonNodeType.StartObject Start of the expanded resource of the nested resource info to read next.
                            JsonNodeType.StartArray Start of the expanded resource set of the nested resource info to read next.
                            JsonNodeType.PrimitiveValue (null) Expanded null resource of the nested resource info to read next.
                            JsonNodeType.Property The next property after a deferred link or entity reference link
                            JsonNodeType.EndObject If no (more) properties exist in the resource's content
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtDeletedResourceEndImplementation">
            <summary>
            Implementation of the reader logic when in state 'DeletedResourceEnd'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.EndObject end of object of the resource
                            JsonNodeType.PrimitiveValue end of primitive value in a collection
            Post-Condition: The reader is positioned on the first node after the deleted resource's end-object node
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtDeletedResourceEndImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'DeletedResourceEnd'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.EndObject end of object of the resource
                            JsonNodeType.PrimitiveValue (null) end of null expanded resource
            Post-Condition: The reader is positioned on the first node after the deleted resource's end-object node
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtDeltaLinkImplementation">
            <summary>
            Implementation of the reader logic when in state 'DeltaLinkImplementation'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.StartObject Start of the expanded resource of the nested resource info to read next.
                            JsonNodeType.EndObject If no (more) properties exist in the resource's content
            Post-Condition: JsonNodeType.StartObject Start of the expanded resource of the nested resource info to read next.
                            JsonNodeType.Property The next property after a deferred link or entity reference link
                            JsonNodeType.EndArry If no (more) properties exist in the resource's content
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtDeltaLinkImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'DeltaLinkImplementation'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.StartObject Start of the expanded resource of the nested resource info to read next.
                            JsonNodeType.EndObject If no (more) properties exist in the resource's content
            Post-Condition: JsonNodeType.StartObject Start of the expanded resource of the nested resource info to read next.
                            JsonNodeType.Property The next property after a deferred link or entity reference link
                            JsonNodeType.EndObject If no (more) properties exist in the resource's content
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtDeltaDeletedLinkImplementation">
            <summary>
            Implementation of the reader logic when in state 'DeltaLinkImplementation'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.StartObject Start of the expanded resource of the nested resource info to read next.
                            JsonNodeType.EndObject If no (more) properties exist in the resource's content
            Post-Condition: JsonNodeType.StartObject Start of the expanded resource of the nested resource info to read next.
                            JsonNodeType.Property The next property after a deferred link or entity reference link
                            JsonNodeType.EndArry If no (more) properties exist in the resource's content
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtDeltaDeletedLinkImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'DeltaDeletedLinkImplementation'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.StartObject Start of the expanded resource of the nested resource info to read next.
                            JsonNodeType.EndObject If no (more) properties exist in the resource's content
            Post-Condition: JsonNodeType.StartObject Start of the expanded resource of the nested resource info to read next.
                            JsonNodeType.Property The next property after a deferred link or entity reference link
                            JsonNodeType.EndObject If no (more) properties exist in the resource's content
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtStartImplementationSynchronously(Microsoft.OData.PropertyAndAnnotationCollector)">
            <summary>
            Implementation of the reader logic when in state 'Start'.
            </summary>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker to use for the top-level scope.</param>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.None: assumes that the JSON reader has not been used yet when not reading a nested payload.
            Post-Condition: when reading a resource set: the reader is positioned on the first item in the resource set or the end array node of an empty resource set
                            when reading a resource: the first node of the first nested resource info value, null for a null expanded link or an end object
                                                    node if there are no navigation links.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtResourceSetStartImplementationSynchronously">
            <summary>
            Implementation of the reader logic when in state 'ResourceSetStart'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: Any start node - The first resource in the resource set
                            JsonNodeType.EndArray - The end of the resource set
            Post-Condition: The reader is positioned over the StartObject node of the first resource in the resource set or
                            on the node following the resource set end in case of an empty resource set
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtResourceSetEndImplementationSynchronously">
            <summary>
            Implementation of the reader logic when in state 'ResourceSetEnd'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.Property if the resource set has further instance or property annotations after the resource set property
                           JsonNodeType.EndObject if the resource set has no further instance or property annotations after the resource set property
                           JsonNodeType.EndOfInput if the resource set is in a Uri operation parameter.
                           JsonNodeType.StartArray if the resource set is a member of an untyped collection followed by a collection
                           JsonNodeType.PrimitiveValue if the resource set is a member of an untyped collection followed by a primitive value
                           JsonNodeType.StartObject if the resource set is a member of an untyped collection followed by a resource
                           JsonNodeType.EndArray if the resource set is the last member of an untyped collection
            Post-Condition: JsonNodeType.EndOfInput for a top-level resource set when not reading a nested payload
                            JsonNodeType.Property more properties exist on the owning resource after the expanded link containing the resource set
                            JsonNodeType.EndObject no further properties exist on the owning resource after the expanded link containing the resource set
                            JsonNodeType.EndArray end of expanded link in request, in this case the resource set doesn't actually own the array object and it won't read it.
                            Any in case of expanded resource set in request, this might be the next item in the expanded array, which is not a resource
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtResourceStartImplementationSynchronously">
            <summary>
            Implementation of the reader logic when in state 'ResourceStart'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.StartObject Start of the expanded resource of the nested resource info to read next.
                            JsonNodeType.StartArray Start of the expanded resource set of the nested resource info to read next.
                            JsonNodeType.PrimitiveValue (null) Expanded null resource of the nested resource info to read next.
                            JsonNodeType.Property The next property after a deferred link or entity reference link
                            JsonNodeType.EndObject If no (more) properties exist in the resource's content
            Post-Condition: JsonNodeType.StartObject Start of the expanded resource of the nested resource info to read next.
                            JsonNodeType.StartArray Start of the expanded resource set of the nested resource info to read next.
                            JsonNodeType.PrimitiveValue (null) Expanded null resource of the nested resource info to read next.
                            JsonNodeType.Property The next property after a deferred link or entity reference link
                            JsonNodeType.EndObject If no (more) properties exist in the resource's content
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ResolveODataUriFromContextUrl(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            If the nested info has context url, resolve it to ODataUri.
            </summary>
            <param name="nestedInfo">The nestedInfo to be evaluated.</param>
            <returns>The odata uri resolved from context url.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtResourceEndImplementationSynchronously">
            <summary>
            Implementation of the reader logic when in state 'EntryEnd'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.EndObject end of object of the resource
                            JsonNodeType.PrimitiveValue (null) end of null expanded resource
            Post-Condition: The reader is positioned on the first node after the resource's end-object node
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtPrimitiveSynchronously">
            <summary>
            Implementation of the reader logic when in state 'Primitive'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.PrimitiveValue primitive value
            Post-Condition: The reader is positioned on the first node after the primitive value
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtDeletedResourceStartImplementationSynchronously">
            <summary>
            Implementation of the reader logic when in state 'DeletedEntryStart'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.StartObject Start of the expanded resource of the nested resource info to read next.
                            JsonNodeType.StartArray Start of the expanded resource set of the nested resource info to read next.
                            JsonNodeType.PrimitiveValue (null) Expanded null resource of the nested resource info to read next.
                            JsonNodeType.Property The next property after a deferred link or entity reference link
                            JsonNodeType.EndObject If no (more) properties exist in the resource's content
            Post-Condition: JsonNodeType.StartObject Start of the expanded resource of the nested resource info to read next.
                            JsonNodeType.StartArray Start of the expanded resource set of the nested resource info to read next.
                            JsonNodeType.PrimitiveValue (null) Expanded null resource of the nested resource info to read next.
                            JsonNodeType.Property The next property after a deferred link or entity reference link
                            JsonNodeType.EndObject If no (more) properties exist in the resource's content
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtDeltaLinkImplementationSynchronously">
            <summary>
            Implementation of the reader logic when in state 'DeltaLink'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.Property The next annotation.
                            JsonNodeType.EndObject No more other annotation or property in the link.
            Post-Condition: The reader is positioned on the first node after the link's end-object node.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtDeltaDeletedLinkImplementationSynchronously">
            <summary>
            Implementation of the reader logic when in state 'DeltaDeletedLink'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.Property The next annotation.
                            JsonNodeType.EndObject No more other annotation or property in the link.
            Post-Condition: The reader is positioned on the first node after the link's end-object node.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.EndDeltaLink(Microsoft.OData.ODataReaderState)">
            <summary>
            Reads the end of the delta(deleted)link.
            </summary>
            <param name="readerState">The state of the link or deleted link being completed.</param>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.Property The next annotation.
                            JsonNodeType.EndObject No more other annotation or property in the link.
            Post-Condition: The reader is positioned on the first node after the link's end-object node.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtNestedResourceInfoStartImplementationSynchronously">
            <summary>
            Implementation of the reader logic when in state 'NestedResourceInfoStart'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.StartObject start of an expanded resource
                            JsonNodeType.StartArray start of an expanded resource set
                            JsonNodeType.PrimitiveValue (null) expanded null resource
                            JsonNodeType.Property deferred link with more properties in owning resource
                            JsonNodeType.EndObject deferred link as last property of the owning resource or
                                                                reporting projected navigation links missing in the payload
            Post-Condition: JsonNodeType.StartArray: start of expanded resource
                            JsonNodeType.StartObject start of expanded resource set
                            JsonNodeType.PrimitiveValue (null) expanded null resource
                            JsonNodeType.Property deferred link with more properties in owning resource
                            JsonNodeType.EndObject deferred link as last property of the owning resource or
                                                                reporting projected navigation links missing in the payload
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtNestedResourceInfoEndImplementationSynchronously">
            <summary>
            Implementation of the reader logic when in state 'NestedResourceInfoEnd'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.EndObject: nested resource info is last property in owning resource or
                                                            reporting projected navigation links missing in the payload
                            JsonNodeType.Property: there are more properties after the nested resource info in the owning resource
            Post-Condition: JsonNodeType.StartObject start of the expanded resource nested resource info to read next
                            JsonNodeType.StartArray start of the expanded resource set nested resource info to read next
                            JsonNoteType.Primitive (null) expanded null resource nested resource info to read next
                            JsonNoteType.Property property after deferred link or entity reference link
                            JsonNodeType.EndObject end of the parent resource
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadAtEntityReferenceLinkSynchronously">
            <summary>
            Implementation of the reader logic when in state 'EntityReferenceLink'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
            <remarks>
            This method doesn't move the reader
            Pre-Condition: JsonNodeType.EndObject: expanded link property is last property in owning resource
                            JsonNodeType.Property: there are more properties after the expanded link property in the owning resource
                            Any: expanded collection link - the node after the entity reference link.
            Post-Condition: JsonNodeType.EndObject: expanded link property is last property in owning resource
                            JsonNodeType.Property: there are more properties after the expanded link property in the owning resource
                            Any: expanded collection link - the node after the entity reference link.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadNextResourceSetItem">
            <summary>
            Reads the next entity or complex value (or primitive or collection value for an untyped collection) in a resource set.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadResourceSetStart(Microsoft.OData.ODataResourceSet,Microsoft.OData.SelectedPropertiesNode)">
            <summary>
            Reads the start of the JSON array for the content of the resource set and sets up the reader state correctly.
            </summary>
            <param name="resourceSet">The resource set to read the contents for.</param>
            <param name="selectedProperties">The selected properties node capturing what properties should be expanded during template evaluation.</param>
            <remarks>
            Pre-Condition: The first node of the resource set property value; this method will throw if the node is not
                            JsonNodeType.StartArray
            Post-Condition: The reader is positioned on the first item in the resource set, or on the end array of the resource set.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadResourceSetEnd">
            <summary>
            Reads the end of the current resource set.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadExpandedNestedResourceInfoStart(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            Reads the start of an expanded resource (null or non-null).
            </summary>
            <param name="nestedResourceInfo">The nested resource info that is being expanded.</param>
            <remarks>
            Pre-Condition: JsonNodeType.StartObject The start of the resource object
                            JsonNodeType.PrimitiveValue (null) The null resource value
            Post-Condition: JsonNodeType.StartObject Start of expanded resource of the nested resource info to read next
                            JsonNodeType.StartArray Start of expanded resource set of the nested resource info to read next
                            JsonNodeType.PrimitiveValue (null) Expanded null resource of the nested resource info to read next, or the null value of the current null resource
                            JsonNodeType.Property Property after deferred link or expanded entity reference
                            JsonNodeType.EndObject If no (more) properties exist in the resource's content
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadExpandedNestedResourceInfoEnd(System.Boolean)">
            <summary>
            Verifies that the current item is an <see cref="T:Microsoft.OData.ODataNestedResourceInfo"/> instance,
            sets the cardinality of the link (IsCollection property) and moves the reader
            into state 'NestedResourceInfoEnd'.
            </summary>
            <param name="isCollection">A flag indicating whether the link represents a collection or not.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadResourceSetItemStart(Microsoft.OData.PropertyAndAnnotationCollector,Microsoft.OData.SelectedPropertiesNode)">
            <summary>
            Reads the start of a (standard, delta, primitive, or null) resource and sets up the reader state correctly
            </summary>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker to use for the resource;
            or null if a new one should be created.</param>
            <param name="selectedProperties">The selected properties node capturing what properties should be expanded during template evaluation.</param>
            <remarks>
            Pre-Condition: JsonNodeType.StartObject If the resource is in a resource set - the start of the resource object
                            JsonNodeType.Property If the resource is a top-level resource and has at least one property
                            JsonNodeType.EndObject If the resource is a top-level resource and has no properties
            Post-Condition: JsonNodeType.StartObject Start of expanded resource of the nested resource info to read next
                            JsonNodeType.StartArray Start of expanded resource set of the nested resource info to read next
                            JsonNodeType.PrimitiveValue (null) Expanded null resource of the nested resource info to read next
                            JsonNodeType.Property Property after deferred link or expanded entity reference
                            JsonNodeType.EndObject If no (more) properties exist in the resource's content
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadDeltaResourceSetStart(Microsoft.OData.ODataDeltaResourceSet,Microsoft.OData.SelectedPropertiesNode)">
            <summary>
            Reads the start of the JSON array for the content of the delta resource set and sets up the reader state correctly.
            </summary>
            <param name="deltaResourceSet">The delta resource set to read the contents for.</param>
            <param name="selectedProperties">The selected properties node capturing what properties should be expanded during template evaluation.</param>
            <remarks>
            Pre-Condition: The first node of the resource set property value; this method will throw if the node is not
                            JsonNodeType.StartArray
            Post-Condition: The reader is positioned on the first item in the resource set, or on the end array of the resource set.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.StartReadingResource">
            <summary>
            Read the resource up to the first nested resource info.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReadNextNestedResourceInfoContentItemInRequest">
            <summary>
            Reads the next item in a nested resource info content in a request payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.StartResource(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.PropertyAndAnnotationCollector,Microsoft.OData.SelectedPropertiesNode)">
            <summary>
            Starts the resource, initializing the scopes and such. This method starts a non-null resource only.
            </summary>
            <param name="source">The source for the resource</param>
            <param name="resourceType">The entity type of the resource</param>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker to use for the resource;
            or null if a new one should be created.</param>
            <param name="selectedProperties">The selected properties node capturing what properties should be expanded during template evaluation.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.StartDeletedResource(Microsoft.OData.ODataDeletedResource,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.PropertyAndAnnotationCollector,Microsoft.OData.SelectedPropertiesNode,System.Boolean)">
            <summary>
            Starts the deleted resource, initializing the scopes and such. This method starts a non-null resource only.
            </summary>
            <param name="deletedResource">The deletedResource to be created.</param>
            <param name="source">The navigation source of the deleted resource.</param>
            <param name="resourceType">The entity type of the deleted resource.</param>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker to use for the resource;
            or null if a new one should be created.</param>
            <param name="selectedProperties">The selected properties node capturing what properties should be expanded during template evaluation.</param>
            <param name="is40DeletedResource">Whether the current resource being read is a 4.0-style deleted resource.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.StartDeltaLink(Microsoft.OData.ODataReaderState)">
            <summary>
            Starts the (deleted) link, initializing the scopes and such. This method starts a non-null resource only.
            </summary>
            <param name="state">The reader state to switch to.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.StartNestedResourceInfo(Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo)">
            <summary>
            Starts the nested resource info.
            Does metadata validation of the nested resource info and sets up the reader to report it.
            </summary>
            <param name="readerNestedResourceInfo">The nested resource info for the nested resource info to start.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.TryAppendEntitySetKeySegment(Microsoft.OData.UriParser.ODataPath@)">
            <summary>
            Try to append key segment.
            </summary>
            <param name="odataPath">The ODataPath to be evaluated.</param>
            <returns>True if successfully append key segment.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ReplaceScope(Microsoft.OData.ODataReaderState)">
            <summary>
            Replaces the current scope with a new scope with the specified <paramref name="state"/> and
            the item of the current scope.
            </summary>
            <param name="state">The <see cref="T:Microsoft.OData.ODataReaderState"/> to use for the new scope.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.EndEntry">
            <summary>
            Called to transition into the EntryEnd state.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.ResolveScopeInfoFromContextUrl">
            <summary>
            Add info resolved from context url to current scope.
            </summary>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightTopLevelScope">
            <summary>
            A reader top-level scope; keeping track of the current reader state and an item associated with this state.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightTopLevelScope.#ctor(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.ODataUri)">
            <summary>
            Constructor creating a new reader scope.
            </summary>
            <param name="navigationSource">The navigation source we are going to read resources for.</param>
            <param name="expectedResourceType">The expected type for the scope.</param>
            <param name="odataUri">The odataUri parsed based on the context uri attached to this scope.</param>
            <remarks>The <paramref name="expectedResourceType"/> has the following meaning
              it's the expected base type of the top-level resource or resource set in the top-level resource set.
            In all cases the specified type must be a structured type.</remarks>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightTopLevelScope.PropertyAndAnnotationCollector">
            <summary>
            The duplicate property names checker for the top level scope represented by the current state.
            </summary>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightPrimitiveScope">
            <summary>
            A reader primitive scope; keeping track of the current reader state and an item associated with this state.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightPrimitiveScope.#ctor(Microsoft.OData.ODataValue,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.ODataUri)">
            <summary>
            Constructor creating a new reader scope.
            </summary>
            <param name="primitiveValue">The item attached to this scope.</param>
            <param name="navigationSource">The navigation source we are going to read resources for.</param>
            <param name="expectedType">The expected type for the scope.</param>
            <param name="odataUri">The odataUri parsed based on the context uri for current scope</param>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightResourceBaseScope">
            <summary>
            A reader resource scope; keeping track of the current reader state and an item associated with this state.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightResourceBaseScope.navigationPropertiesRead">
            <summary>The set of names of the navigation properties we have read so far while reading the resource.</summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightResourceBaseScope.#ctor(Microsoft.OData.ODataReaderState,Microsoft.OData.ODataResourceBase,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.PropertyAndAnnotationCollector,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri)">
            <summary>
            Constructor creating a new reader scope.
            </summary>
            <param name="readerState">The reader state of the new scope that is being created.</param>
            <param name="resource">The item attached to this scope.</param>
            <param name="navigationSource">The navigation source we are going to read resources for.</param>
            <param name="expectedResourceType">The expected type for the scope.</param>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker for this resource scope.</param>
            <param name="selectedProperties">The selected properties node capturing what properties should be expanded during template evaluation.</param>
            <param name="odataUri">The odataUri parsed based on the context uri for current scope</param>
            <remarks>The <paramref name="expectedResourceType"/> has the following meaning
              it's the expected base type of the resource. If the resource has no type name specified
              this type will be assumed. Otherwise the specified type name must be
              the expected type or a more derived type.
            In all cases the specified type must be an entity type.</remarks>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightResourceBaseScope.MetadataBuilder">
            <summary>
            The metadata builder instance for the resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightResourceBaseScope.AnyPropertyFound">
            <summary>
            Flag which indicates that during parsing of the resource represented by this state,
            any property which is not an instance annotation was found. This includes property annotations
            for property which is not present in the payload.
            </summary>
            <remarks>
            This is used to detect incorrect ordering of the payload (for example odata.id must not come after the first property).
            </remarks>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightResourceBaseScope.FirstNestedResourceInfo">
            <summary>
            If the reader finds a nested resource info to report, but it must first report the parent resource
            it will store the nested resource info in this property. So this will only ever store the first nested resource info of a resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightResourceBaseScope.PropertyAndAnnotationCollector">
            <summary>
            The duplicate property names checker for the resource represented by the current state.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightResourceBaseScope.SelectedProperties">
            <summary>
            The selected properties that should be expanded during template evaluation.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightResourceBaseScope.NavigationPropertiesRead">
            <summary>
            The set of names of the navigation properties we have read so far while reading the resource.
            true if we have started processing missing projected navigation links, false otherwise.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightResourceBaseScope.ProcessingMissingProjectedNestedResourceInfos">
            <summary>
            true if we have started processing missing projected navigation links, false otherwise.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightResourceBaseScope.ResourceTypeFromMetadata">
            <summary>
            The expected type defined in the model for the resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightResourceBaseScope.Microsoft#OData#JsonLight#IODataJsonLightReaderResourceState#Resource">
            <summary>
            The resource being read.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightResourceBaseScope.Microsoft#OData#JsonLight#IODataJsonLightReaderResourceState#ResourceType">
            <summary>
            The structured type for the resource (if available).
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightResourceBaseScope.Microsoft#OData#JsonLight#IODataJsonLightReaderResourceState#NavigationSource">
            <summary>
            The navigation source for the resource (if available)
            </summary>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightResourceScope">
            <summary>
            Base class for a reader resource scope; keeping track of the current reader state and an item associated with this state.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightResourceScope.#ctor(Microsoft.OData.ODataReaderState,Microsoft.OData.ODataResourceBase,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.PropertyAndAnnotationCollector,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri)">
            <summary>
            Constructor creating a new reader scope.
            </summary>
            <param name="readerState">The reader state of the new scope that is being created.</param>
            <param name="resource">The item attached to this scope.</param>
            <param name="navigationSource">The navigation source we are going to read resources for.</param>
            <param name="expectedResourceType">The expected type for the scope.</param>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker for this resource scope.</param>
            <param name="selectedProperties">The selected properties node capturing what properties should be expanded during template evaluation.</param>
            <param name="odataUri">The odataUri parsed based on the context uri for current scope</param>
            <remarks>The <paramref name="expectedResourceType"/> has the following meaning
              it's the expected base type of the resource. If the resource has no type name specified
              this type will be assumed. Otherwise the specified type name must be
              the expected type or a more derived type.
            In all cases the specified type must be an entity type.</remarks>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightDeletedResourceScope">
            <summary>
            A reader deleted resource scope; keeping track of the current reader state and an item associated with this state.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightDeletedResourceScope.#ctor(Microsoft.OData.ODataReaderState,Microsoft.OData.ODataDeletedResource,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.PropertyAndAnnotationCollector,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri,System.Boolean)">
            <summary>
            Constructor creating a new reader scope.
            </summary>
            <param name="readerState">The reader state of the new scope that is being created.</param>
            <param name="resource">The item attached to this scope.</param>
            <param name="navigationSource">The navigation source we are going to read resources for.</param>
            <param name="expectedResourceType">The expected type for the scope.</param>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker for this resource scope.</param>
            <param name="selectedProperties">The selected properties node capturing what properties should be expanded during template evaluation.</param>
            <param name="odataUri">The odataUri parsed based on the context uri for current scope</param>
            <param name="is40DeletedResource">Whether the deleted resource being read is an OData 4.0 Deleted Resource</param>
            <remarks>The <paramref name="expectedResourceType"/> has the following meaning
              it's the expected base type of the resource. If the resource has no type name specified
              this type will be assumed. Otherwise the specified type name must be
              the expected type or a more derived type.
            In all cases the specified type must be an entity type.</remarks>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightDeletedResourceScope.Is40DeletedResource">
            <summary>Whether the payload is an OData 4.0 deleted resource.</summary>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightResourceSetScope">
            <summary>
            A reader resource set scope; keeping track of the current reader state and an item associated with this state.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightResourceSetScope.#ctor(Microsoft.OData.ODataResourceSetBase,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri,System.Boolean)">
            <summary>
            Constructor creating a new reader scope.
            </summary>
            <param name="resourceSet">The item attached to this scope.</param>
            <param name="navigationSource">The navigation source we are going to read entities for.</param>
            <param name="expectedResourceType">The expected type for the scope.</param>
            <param name="selectedProperties">The selected properties node capturing what properties should be expanded during template evaluation.</param>
            <param name="odataUri">The odataUri parsed based on the context uri for current scope</param>
            <param name="isDelta">True of the ResourceSetScope is for a delta resource set</param>
            <remarks>The <paramref name="expectedResourceType"/> has the following meaning
              it's the expected base type of the entries in the resource set.
              note that it might be a more derived type than the base type of the entity set for the resource set.
            In all cases the specified type must be an entity type.</remarks>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightResourceSetScope.SelectedProperties">
            <summary>
            The selected properties that should be expanded during template evaluation.
            </summary>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightNestedResourceInfoScope">
            <summary>
            A reader scope; keeping track of the current reader state and an item associated with this state.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightNestedResourceInfoScope.#ctor(Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.ODataUri)">
            <summary>
            Constructor creating a new reader scope.
            </summary>
            <param name="nestedResourceInfo">The nested resource info attached to this scope.</param>
            <param name="navigationSource">The navigation source we are going to read entities for.</param>
            <param name="expectedStructuredType">The expected type for the scope.</param>
            <param name="odataUri">The odataUri parsed based on the context uri for current scope</param>
            <remarks>The <paramref name="expectedStructuredType"/> is the expected base type the items in the nested resource info.</remarks>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightNestedResourceInfoScope.ReaderNestedResourceInfo">
            <summary>
            The nested resource info for the nested resource info to report.
            This is only used on a StartNestedResourceInfo scope in responses.
            </summary>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightDeltaLinkScope">
            <summary>
            A reader scope; keeping track of the current reader state and an item associated with this state.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReader.JsonLightDeltaLinkScope.#ctor(Microsoft.OData.ODataReaderState,Microsoft.OData.ODataDeltaLinkBase,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmEntityType,Microsoft.OData.ODataUri)">
            <summary>
            Constructor creating a new reader scope.
            </summary>
            <param name="state">The reader state of the new scope that is being created.</param>
            <param name="link">The link info attached to this scope.</param>
            <param name="navigationSource">The navigation source we are going to read entities for.</param>
            <param name="expectedEntityType">The expected type for the scope.</param>
            <param name="odataUri">The odataUri parsed based on the context uri for current scope</param>
            <remarks>The <paramref name="expectedEntityType"/> has the following meaning
              it's the expected base type the entries in the expanded link (either the single resource
              or entries in the expanded resource set).
            In all cases the specified type must be an entity type.</remarks>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo">
            <summary>
            Class which holds information about nested resource info to be reported by the reader.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.nestedResourceInfo">
            <summary>
            The nested resource info to report.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.nestedProperty">
            <summary>
            The nested property for which the nested resource info will be reported.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.hasValue">
            <summary>
            true if the nested resource info has a value.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.resourceSet">
            <summary>
            The nested resource set for nested resource info to be reported.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.entityReferenceLinks">
            <summary>
            List of entity reference links to be reported to the navigation link.
            </summary>
            <remarks>
            If the navigation link is a singleton this will hold up to 1 item.
            If the navigation link is a collection this will hold any number of items.
            When the entity reference link is reported it is removed from this list.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.nestedResourceType">
            <summary>
            The resource type of the nested resource info which will be reported.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.#ctor(Microsoft.OData.ODataNestedResourceInfo,Microsoft.OData.Edm.IEdmProperty,System.Boolean)">
            <summary>
            Constructor.
            </summary>
            <param name="nestedResourceInfo">The nested resource info to report.</param>
            <param name="nestedProperty">The nested property for which the nested resource info will be reported.</param>
            <param name="isExpanded">true if the nested resource info is expanded.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.#ctor(Microsoft.OData.ODataNestedResourceInfo,Microsoft.OData.Edm.IEdmProperty,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean)">
            <summary>
            Constructor which used when the nested resource info is a undeclared property in model.
            </summary>
            <param name="nestedResourceInfo">The nested resource info to report.</param>
            <param name="nestedProperty">The nested property for which the nested resource info will be reported.</param>
            <param name="nestedResourceType">The resource type of the nested resource info.</param>
            <param name="isExpanded">true if the nested resource info is expanded.</param>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.NestedResourceInfo">
            <summary>
            The nested resource info to report.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.NavigationProperty">
            <summary>
            The navigation property for which the navigation link will be reported.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.StructuralProperty">
            <summary>
            The structural property for which the nested resource info will be reported.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.NestedProperty">
            <summary>
            The Edm property for which the nested resource info will be reported.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.HasValue">
            <summary>
            true if the nested resource info has a value.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.NestedResourceSet">
            <summary>
            The nested resource set for nested resource info to be reported.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.NestedResourceType">
            <summary>
            The resource type of the nested resource info which will be reported.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.HasEntityReferenceLink">
            <summary>
            true if the link info has entity reference link which was not yet reported, false otherwise.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.CreateDeferredLinkInfo(Microsoft.OData.ODataNestedResourceInfo,Microsoft.OData.Edm.IEdmNavigationProperty)">
            <summary>
            Creates a nested resource info for a deferred link.
            </summary>
            <param name="nestedResourceInfo">The nested resource info to report.</param>
            <param name="navigationProperty">The navigation property for which the link will be reported.</param>
            <returns>The nested resource info created.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.CreateResourceReaderNestedResourceInfo(Microsoft.OData.ODataNestedResourceInfo,Microsoft.OData.Edm.IEdmProperty,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates a nested resource info for an expanded resource link.
            </summary>
            <param name="nestedResourceInfo">The nested resource info to report.</param>
            <param name="nestedProperty">The navigation property for which the link will be reported.</param>
            <param name="nestedResourceType">The type of the nested resource.</param>
            <returns>The nested resource info created.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.CreateResourceSetReaderNestedResourceInfo(Microsoft.OData.ODataNestedResourceInfo,Microsoft.OData.Edm.IEdmProperty,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.ODataResourceSetBase)">
            <summary>
            Creates a nested resource info for nested resources.
            </summary>
            <param name="nestedResourceInfo">The nested resource info to report.</param>
            <param name="nestedProperty">The nested property for which the nested resource info will be reported.</param>
            <param name="nestedResourceType">The type of the nested resource.</param>
            <param name="resourceSet">The nested resource set for the nested resource info to report.</param>
            <returns>The nested resource info created.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.CreateSingletonEntityReferenceLinkInfo(Microsoft.OData.ODataNestedResourceInfo,Microsoft.OData.Edm.IEdmNavigationProperty,Microsoft.OData.ODataEntityReferenceLink,System.Boolean)">
            <summary>
            Creates a nested resource info for a singleton entity reference link.
            </summary>
            <param name="nestedResourceInfo">The nested resource info to report.</param>
            <param name="navigationProperty">The navigation property for which the link will be reported.</param>
            <param name="entityReferenceLink">The entity reference link for the nested resource info to report.</param>
            <param name="isExpanded">true if the nested resource info is expanded.</param>
            <returns>The nested resource info created.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.CreateCollectionEntityReferenceLinksInfo(Microsoft.OData.ODataNestedResourceInfo,Microsoft.OData.Edm.IEdmNavigationProperty,System.Collections.Generic.LinkedList{Microsoft.OData.ODataEntityReferenceLink},System.Boolean)">
            <summary>
            Creates a nested resource info for a collection of entity reference links.
            </summary>
            <param name="nestedResourceInfo">The nested resource info to report.</param>
            <param name="navigationProperty">The navigation property for which the link will be reported.</param>
            <param name="entityReferenceLinks">The entity reference links for the nested resource info to report.</param>
            <param name="isExpanded">true if the nested resource info is expanded.</param>
            <returns>The nested resource info created.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.CreateProjectedNestedResourceInfo(Microsoft.OData.Edm.IEdmNavigationProperty)">
            <summary>
            Creates a nested resource info for a projected nested resource info that is missing from the payload.
            </summary>
            <param name="navigationProperty">The navigation property for which the link will be reported.</param>
            <returns>The nested resource info created.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo.ReportEntityReferenceLink">
            <summary>
            Gets the next entity reference link to report and removes it from the internal storage.
            </summary>
            <returns>The entity reference link to report or null.</returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightReaderUtils">
            <summary>
            Helper methods used by the OData reader for the JsonLight format.
            </summary>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightReaderUtils.ErrorPropertyBitMask">
            <summary>
            Enumeration of all properties in error payloads, the value of the enum is the bitmask which identifies
            a bit per property.
            </summary>
            <remarks>
            We only use a single enumeration for both top-level as well as inner errors.
            This means that some bits are never set for top-level (or inner errors).
            </remarks>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightReaderUtils.ErrorPropertyBitMask.None">
            <summary>No property found yet.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightReaderUtils.ErrorPropertyBitMask.Error">
            <summary>The "error" of the top-level object.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightReaderUtils.ErrorPropertyBitMask.Code">
            <summary>The "code" property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightReaderUtils.ErrorPropertyBitMask.Message">
            <summary>The "message" property of either the error object or the inner error object.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightReaderUtils.ErrorPropertyBitMask.MessageValue">
            <summary>The "value" property of the message object.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightReaderUtils.ErrorPropertyBitMask.InnerError">
            <summary>The "innererror" or "internalexception" property of the error object or an inner error object.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightReaderUtils.ErrorPropertyBitMask.TypeName">
            <summary>The "type" property of an inner error object.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightReaderUtils.ErrorPropertyBitMask.StackTrace">
            <summary>The "stacktrace" property of an inner error object.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightReaderUtils.ErrorPropertyBitMask.Target">
            <summary>The "target" property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightReaderUtils.ErrorPropertyBitMask.Details">
            <summary>The "details" property.</summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReaderUtils.ErrorPropertyNotFound(Microsoft.OData.JsonLight.ODataJsonLightReaderUtils.ErrorPropertyBitMask@,Microsoft.OData.JsonLight.ODataJsonLightReaderUtils.ErrorPropertyBitMask)">
            <summary>
            Checks whether the specified property has already been found before.
            </summary>
            <param name="propertiesFoundBitField">
            The bit field which stores which properties of an error or inner error were found so far.
            </param>
            <param name="propertyFoundBitMask">The bit mask for the property to check.</param>
            <returns>true if the property has not been read before; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReaderUtils.ConvertValue(System.Object,Microsoft.OData.Edm.IEdmPrimitiveTypeReference,Microsoft.OData.ODataMessageReaderSettings,System.Boolean,System.String,Microsoft.OData.ODataPayloadValueConverter)">
            <summary>
            Converts the given JSON value to the expected type as per OData conversion rules for JSON values.
            </summary>
            <param name="value">Value to the converted.</param>
            <param name="primitiveTypeReference">Type reference to which the value needs to be converted.</param>
            <param name="messageReaderSettings">The message reader settings used for reading.</param>
            <param name="validateNullValue">true to validate null values; otherwise false.</param>
            <param name="propertyName">The name of the property whose value is being read, if applicable (used for error reporting).</param>
            <param name="converter">The payload value converter to convert this value.</param>
            <returns>Object which is in sync with the property type (modulo the V1 exception of converting numbers to non-compatible target types).</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReaderUtils.EnsureInstance``1(``0@)">
            <summary>
            Ensure that the <paramref name="instance"/> is not null; if so create a new instance.
            </summary>
            <typeparam name="T">The type of the instance to check.</typeparam>
            <param name="instance">The instance to check for null.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReaderUtils.IsODataAnnotationName(System.String)">
            <summary>
            Determines if the specified <paramref name="propertyName"/> is an OData annotation property name.
            </summary>
            <param name="propertyName">The property name to test.</param>
            <returns>true if the property name is an OData annotation property name, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReaderUtils.IsAnnotationProperty(System.String)">
            <summary>
            Determines if the specified property name is a name of an annotation property.
            </summary>
            <param name="propertyName">The name of the property.</param>
            <returns>true if <paramref name="propertyName"/> is a name of an annotation property, false otherwise.</returns>
            <remarks>
            This method returns true both for normal annotation as well as property annotations.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReaderUtils.ValidateAnnotationValue(System.Object,System.String)">
            <summary>
            Validates that the annotation value is valid.
            </summary>
            <param name="propertyValue">The value of the annotation.</param>
            <param name="annotationName">The name of the (instance or property) annotation (used for error reporting).</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightReaderUtils.GetPayloadTypeName(System.Object)">
            <summary>
            Gets the payload type name for an OData OM instance for JsonLight.
            </summary>
            <param name="payloadItem">The payload item to get the type name for.</param>
            <returns>The type name as read from the payload item (or constructed for primitive items).</returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer">
            <summary>
            OData JsonLight deserializer for entries and resource sets.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.#ctor(Microsoft.OData.JsonLight.ODataJsonLightInputContext)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonLightInputContext">The JsonLight input context to read from.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadResourceSetContentStart">
            <summary>
            Reads the start of the JSON array for the content of the resource set.
            </summary>
            <remarks>
            Pre-Condition: JsonNodeType.StartArray: The start of the resource set property array; this method will fail if the node is anything else.
            Post-Condition: JsonNodeType.StartObject: The first item in the resource set
                            JsonNodeType.PrimitiveValue: A null resource, or a primitive value within an untyped collection
                            JsonNodeType.StartArray: A nested collection within an untyped collection
                            JsonNodeType.EndArray: The end of the resource set
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadResourceSetContentEnd">
            <summary>
            Reads the end of the array containing the resource set content.
            </summary>
            <remarks>
            Pre-Condition: JsonNodeType.EndArray
            Post-Condition: JsonNodeType.Property if the resource set is part of an expanded nested resource info and there are more properties in the object
                            JsonNodeType.EndObject if the resource set is a top-level resource set or the expanded nested resource info is the last property of the payload
                            JsonNodeType.EndOfInput if the resource set is in a Uri operation parameter
                            JsonNodeType.StartArray if the resource set is a member of an untyped collection followed by a collection
                            JsonNodeType.PrimitiveValue if the resource set is a member of an untyped collection followed by a primitive value
                            JsonNodeType.StartObject if the resource set is a member of an untyped collection followed by a resource
                            JsonNodeType.EndArray if the resource set is the last member of an untyped collection
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadResourceTypeName(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState)">
             <summary>
             Reads the resource type name annotation (odata.type)
             </summary>
             <param name="resourceState">The state of the reader for resource to read.</param>
             <remarks>
             Pre-Condition: JsonNodeType.Property The first property after the odata.context in the resource object.
                             JsonNodeType.EndObject End of the resource object.
             Post-Condition: JsonNodeType.Property The property after the odata.type (if there was any), or the property on which the method was called.
                             JsonNodeType.EndObject End of the resource object.
             
             This method fills the ODataResource.TypeName property if the type name is found in the payload.
             </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.IsDeletedResource">
             <summary>
             Reads the OData 4.01 deleted resource annotation (odata.removed)
             </summary>
             <returns>Returns True if the resource is a deleted resource, otherwise returns false </returns>
             <remarks>
             Pre-Condition: JsonNodeType.Property The first property after the odata.context in the resource object.
                             JsonNodeType.EndObject End of the resource object.
             Post-Condition: JsonNodeType.Property The property after the odata.type (if there was any), or the property on which the method was called.
                             JsonNodeType.EndObject End of the resource object.
             
             This method Creates an ODataDeltaDeletedEntry and fills in the Id and Reason properties, if specified in the payload.
             </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadDeletedEntry">
            <summary>
            Reads an OData 4.0 delete entry
            </summary>
            Pre-Condition: JsonNodeType.Property The first property after the odata.context in the link object.
                            JsonNodeType.EndObject End of the link object.
            Post-Condition: JsonNodeType.Property The properties.
                            JsonNodeType.EndObject End of the link object.
            <returns>The <see cref="T:Microsoft.OData.ODataDeletedResource"/> read.</returns>
            <remarks>
            This method Creates an ODataDeltaDeletedEntry and fills in the Id and Reason properties, if specified in the payload.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadDeltaLinkSource(Microsoft.OData.ODataDeltaLinkBase)">
             <summary>
             Reads the delta (deleted) link source.
             </summary>
             <param name="link">The delta (deleted) link being read.</param>
             <remarks>
             Pre-Condition: JsonNodeType.Property The first property after the odata.context in the link object.
                             JsonNodeType.EndObject End of the link object.
             Post-Condition: JsonNodeType.Property The properties.
                             JsonNodeType.EndObject End of the link object.
             
             This method fills the ODataDelta(Deleted)Link.Source property if the id is found in the payload.
             </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadDeltaLinkRelationship(Microsoft.OData.ODataDeltaLinkBase)">
             <summary>
             Reads the delta (deleted) link relationship.
             </summary>
             <param name="link">The delta (deleted) link being read.</param>
             <remarks>
             Pre-Condition: JsonNodeType.Property The first property after the odata.context in the link object.
                             JsonNodeType.EndObject End of the link object.
             Post-Condition: JsonNodeType.Property The properties.
                             JsonNodeType.EndObject End of the link object.
             
             This method fills the ODataDelta(Deleted)Link.Relationship property if the id is found in the payload.
             </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadDeltaLinkTarget(Microsoft.OData.ODataDeltaLinkBase)">
             <summary>
             Reads the delta (deleted) link target.
             </summary>
             <param name="link">The delta (deleted) link being read.</param>
             <remarks>
             Pre-Condition: JsonNodeType.Property The first property after the odata.context in the link object.
                             JsonNodeType.EndObject End of the link object.
             Post-Condition: JsonNodeType.Property The properties.
                             JsonNodeType.EndObject End of the link object.
             
             This method fills the ODataDelta(Deleted)Link.Target property if the id is found in the payload.
             </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadResourceContent(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState)">
            <summary>
            Reads the content of a resource until a nested resource info is detected.
            </summary>
            <param name="resourceState">The state of the reader for resource to read.</param>
            <returns>A reader nested resource info representing the nested resource info detected while reading the resource contents; null if no nested resource info was detected.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.Property The property to read
                            JsonNodeType.EndObject If no (more) properties exist in the resource's content
            Post-Condition: JsonNodeType.EndObject If no (more) properties exist in the resource's content
                            JsonNodeType.Property If we've read a deferred link (this is the property after the deferred link)
                            JsonNodeType.StartObject Expanded resource
                            JsonNodeType.StartArray Expanded resource set
                            JsonNodeType.PrimitiveValue (null) Expanded null
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadODataOrCustomInstanceAnnotationValue(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,Microsoft.OData.JsonLight.ODataJsonLightDeserializer.PropertyParsingResult,System.String)">
            <summary>
            Reads built-in "odata." or custom instance annotation's value.
            </summary>
            <param name="resourceState">The IODataJsonLightReaderResourceState.</param>
            <param name="propertyParsingResult">The PropertyParsingResult.</param>
            <param name="annotationName">The annotation name</param>
            <returns>The annotation value.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ValidateMediaEntity(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState)">
            <summary>
            Validates resource metadata.
            </summary>
            <param name="resourceState">The resource state to use.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadTopLevelResourceSetAnnotations(Microsoft.OData.ODataResourceSetBase,Microsoft.OData.PropertyAndAnnotationCollector,System.Boolean,System.Boolean)">
            <summary>
            Reads the resource set instance annotations for a top-level resource set.
            </summary>
            <param name="resourceSet">The <see cref="T:Microsoft.OData.ODataResourceSet"/> to read the instance annotations for.</param>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker for the top-level scope.</param>
            <param name="forResourceSetStart">true when parsing the instance annotations before the resource set property;
            false when parsing the instance annotations after the resource set property.</param>
            <param name="readAllResourceSetProperties">true if we should scan ahead for the annotations and ignore the actual data properties (used with
            the reordering reader); otherwise false.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadODataOrCustomInstanceAnnotationValue(Microsoft.OData.ODataResourceSetBase,Microsoft.OData.PropertyAndAnnotationCollector,System.Boolean,System.Boolean,Microsoft.OData.JsonLight.ODataJsonLightDeserializer.PropertyParsingResult,System.String)">
            <summary>
            Reads built-in "odata." or custom instance annotation's value.
            </summary>
            <param name="resourceSet">The ODataResourceSetBase.</param>
            <param name="propertyAndAnnotationCollector">The PropertyAndAnnotationCollector.</param>
            <param name="forResourceSetStart">true when parsing the instance annotations before the resource set property;
            false when parsing the instance annotations after the resource set property.</param>
            <param name="readAllResourceSetProperties">true if we should scan ahead for the annotations and ignore the actual data properties (used with
            the reordering reader); otherwise false.</param>
            <param name="propertyParseResult">The PropertyParsingResult.</param>
            <param name="annotationName">The annotation name.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadEntryPropertyAnnotationValue(System.String)">
             <summary>
             Reads a value of property annotation on the resource level.
             </summary>
             <param name="propertyAnnotationName">The name of the property annotation to read.</param>
             <returns>The value of the property annotation.</returns>
             <remarks>
             This method should read the property annotation value and return a representation of the value which will be later
             consumed by the resource reading code.
             
             Pre-Condition: JsonNodeType.PrimitiveValue The value of the property annotation property
                             JsonNodeType.StartObject
                             JsonNodeType.StartArray
             Post-Condition: JsonNodeType.EndObject The end of the resource object
                             JsonNodeType.Property The next property after the property annotation
             </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadEntryInstanceAnnotation(System.String,System.Boolean,System.Boolean,Microsoft.OData.PropertyAndAnnotationCollector)">
            <summary>
            Reads instance annotation in the resource object.
            </summary>
            <param name="annotationName">The name of the instance annotation found.</param>
            <param name="anyPropertyFound">true if a non-annotation property has already been encountered.</param>
            <param name="typeAnnotationFound">true if the 'odata.type' annotation has already been encountered, or should have been by now.</param>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker for the resource being read.</param>
            <returns>The value of the annotation.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.PrimitiveValue The value of the instance annotation property
                            JsonNodeType.StartObject
                            JsonNodeType.StartArray
            Post-Condition: JsonNodeType.EndObject The end of the resource object
                            JsonNodeType.Property The next property after the instance annotation
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ApplyEntryInstanceAnnotation(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,System.String,System.Object)">
            <summary>
            Reads instance annotation in the resource object.
            </summary>
            <param name="resourceState">The state of the reader for resource to read.</param>
            <param name="annotationName">The name of the instance annotation found.</param>
            <param name="annotationValue">The value of the annotation.</param>
            <remarks>
            Pre-Condition: JsonNodeType.PrimitiveValue The value of the instance annotation property
                            JsonNodeType.StartObject
                            JsonNodeType.StartArray
            Post-Condition: JsonNodeType.EndObject The end of the resource object
                            JsonNodeType.Property The next property after the instance annotation
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadAndApplyResourceSetInstanceAnnotationValue(System.String,Microsoft.OData.ODataResourceSetBase,Microsoft.OData.PropertyAndAnnotationCollector)">
            <summary>
            Reads the value of a resource set annotation (count or next link).
            </summary>
            <param name="annotationName">The name of the annotation found.</param>
            <param name="resourceSet">The resource set to read the annotation for; if non-null, the annotation value will be assigned to the resource set.</param>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker instance.</param>
            <remarks>
            Pre-Condition: JsonNodeType.PrimitiveValue The value of the annotation
            Post-Condition: JsonNodeType.EndObject The end of the resource set object
                            JsonNodeType.Property The next annotation after the current annotation
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadPropertyWithoutValue(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,System.String)">
            <summary>
            Reads resource property which doesn't have value, just annotations.
            </summary>
            <param name="resourceState">The state of the reader for resource to read.</param>
            <param name="propertyName">The name of the property read.</param>
            <returns>A reader nested resource info representing the nested resource info detected while reading the resource contents; null if no nested resource info was detected.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.EndObject The end of the resource object.
                            JsonNodeType.Property The property after the one we're to read.
            Post-Condition: JsonNodeType.EndObject This method doesn't move the reader.
                            JsonNodeType.Property
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadNextLinkAnnotationAtResourceSetEnd(Microsoft.OData.ODataResourceSetBase,Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo,Microsoft.OData.PropertyAndAnnotationCollector)">
            <summary>
            Reads any next link annotation immediately after the end of a resource set.
            </summary>
            <param name="resourceSet">The resource set being read.</param>
            <param name="expandedNestedResourceInfo">The information about the expanded link. This must be non-null if we're reading an expanded resource set, and must be null if we're reading a top-level resource set.</param>
            <param name="propertyAndAnnotationCollector">The top-level duplicate property names checker, if we're reading a top-level resource set.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadDeferredNestedResourceInfo(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,System.String,Microsoft.OData.Edm.IEdmNavigationProperty)">
            <summary>
            Reads the information of a deferred link.
            </summary>
            <param name="resourceState">The state of the reader for resource to read.</param>
            <param name="navigationPropertyName">The name of the navigation property for which to read the deferred link.</param>
            <param name="navigationProperty">The navigation property for which to read the deferred link. This can be null.</param>
            <returns>Returns the nested resource info for the deferred nested resource info read.</returns>
            <remarks>
            This method doesn't move the reader.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadExpandedResourceSetAnnotationsAtResourceSetEnd(Microsoft.OData.ODataResourceSetBase,Microsoft.OData.JsonLight.ODataJsonLightReaderNestedResourceInfo)">
            <summary>
            We fail here if we encounter any other property annotation for the expanded navigation (since these should come before the property itself).
            </summary>
            <param name="resourceSet">The resource set that was just read.</param>
            <param name="expandedNestedResourceInfo">The information for the current expanded nested resource info being read.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.SetEntryMediaResource(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,Microsoft.OData.ODataStreamReferenceValue)">
            <summary>
            Sets specified media resource on a resource and hooks up metadata builder.
            </summary>
            <param name="resourceState">The resource state to use.</param>
            <param name="mediaResource">The media resource to set.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadPropertyWithValue(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,System.String,System.Boolean)">
            <summary>
            Reads resource property (which is neither instance nor property annotation) which has a value.
            </summary>
            <param name="resourceState">The state of the reader for resource to read.</param>
            <param name="propertyName">The name of the property read.</param>
            <param name="isDeltaResourceSet">The property being read represents a nested delta resource set.</param>
            <returns>A reader nested resource info representing the nested resource info detected while reading the resource contents; null if no nested resource info was detected.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.PrimitiveValue The value of the property
                            JsonNodeType.StartObject
                            JsonNodeType.StartArray
            Post-Condition: JsonNodeType.EndObject The end of the resource object
                            JsonNodeType.Property The next property after the property
                            JsonNodeType.StartObject Expanded resource
                            JsonNodeType.StartArray Expanded resource set
                            JsonNodeType.PrimitiveValue (null) Expanded null resource
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadEntryDataProperty(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,Microsoft.OData.Edm.IEdmProperty,System.String)">
            <summary>
            Read a resource-level data property and check its version compliance.
            </summary>
            <param name="resourceState">The state of the reader for resource to read.</param>
            <param name="edmProperty">The EDM property of the property being read, or null if the property is an open property.</param>
            <param name="propertyTypeName">The type name specified for the property in property annotation, or null if no such type name is available.</param>
            <remarks>
            Pre-Condition: The reader is positioned on the first node of the property value
            Post-Condition: JsonNodeType.Property: the next property of the resource
                            JsonNodeType.EndObject: the end-object node of the resource
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.InnerReadUndeclaredProperty(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,Microsoft.OData.Edm.IEdmStructuredType,System.String,System.Boolean)">
            <summary>
            Read an open property.
            </summary>
            <param name="resourceState">The state of the reader for resource to read.</param>
            <param name="owningStructuredType">The owning type of the property with name <paramref name="propertyName"/>
            or null if no metadata is available.</param>
            <param name="propertyName">The name of the open property to read.</param>
            <param name="propertyWithValue">true if the property has a value, false if it doesn't.</param>
            <remarks>
            Pre-Condition: The reader is positioned on the first node of the property value
            Post-Condition: JsonNodeType.Property: the next property of the resource
                            JsonNodeType.EndObject: the end-object node of the resource
            </remarks>
            <returns>The NestedResourceInfo or null.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadUndeclaredProperty(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,System.String,System.Boolean)">
            <summary>
            Read an undeclared property. That is a property which is not declared by the model, but the owning type is not an open type.
            </summary>
            <param name="resourceState">The state of the reader for resource to read.</param>
            <param name="propertyName">The name of the open property to read.</param>
            <param name="propertyWithValue">true if the property has a value, false if it doesn't.</param>
            <remarks>
            Pre-Condition: JsonNodeType.PrimitiveValue: propertyWithValue is true and the reader is positioned on the first node of the property value.
                            JsonNodeType.StartObject:
                            JsonNodeType.StartArray:
                            JsonNodeType.Property: propertyWithValue is false and the reader is positioned on the node after the property.
                            JsonNodeType.EndObject:
            Post-Condition: JsonNodeType.Property: the next property of the resource
                            JsonNodeType.EndObject: the end-object node of the resource
            </remarks>
            <returns>A nested resource info instance if the property read is a nested resource info which should be reported to the caller.
            Otherwise null if the property was either ignored or read and added to the list of properties on the resource.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadStreamPropertyValue(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,System.String)">
            <summary>
            Reads a stream property value from the property annotations.
            </summary>
            <param name="resourceState">The state of the reader for resource to read.</param>
            <param name="streamPropertyName">The name of the stream property to read the value for.</param>
            <returns>The newly created stream reference value.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadSingleOperationValue(Microsoft.OData.Json.IODataJsonOperationsDeserializerContext,Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,System.String,System.Boolean)">
            <summary>
            Reads one operation for the resource being read.
            </summary>
            <param name="readerContext">The Json operation deserializer context.</param>
            <param name="resourceState">The state of the reader for resource to read.</param>
            <param name="metadataReferencePropertyName">The name of the metadata reference property being read.</param>
            <param name="insideArray">true if the operation value is inside an array, i.e. multiple targets for the operation; false otherwise.</param>
            <remarks>
            Pre-Condition: JsonNodeType.StartObject: first node of the operation value.
            Post-Condition: JsonNodeType.Property: the property after the current operation being read when there is one target for the operation.
                            JsonNodeType.StartObject: the first node of the next operation value when there are multiple targets for the operation.
                            JsonNodeType.EndArray: the end-array of the operation values when there are multiple target for the operation.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadSingleOperationValue(Microsoft.OData.ODataResourceSet,System.String,System.Boolean)">
            <summary>
            Reads one operation for the resource set being read.
            </summary>
            <param name="resourceSet">The resource set to read.</param>
            <param name="metadataReferencePropertyName">The name of the metadata reference property being read.</param>
            <param name="insideArray">true if the operation value is inside an array, i.e. multiple targets for the operation; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.SetMetadataBuilder(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,Microsoft.OData.ODataOperation)">
            <summary>
            Sets the metadata builder for the operation.
            </summary>
            <param name="resourceState">The state of the reader for resource to read.</param>
            <param name="operation">The operation to set the metadata builder on.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.CreateODataOperationAndAddToEntry(Microsoft.OData.Json.IODataJsonOperationsDeserializerContext,System.String)">
            <summary>
            Creates a new instance of ODataAction or ODataFunction for the <paramref name="metadataReferencePropertyName"/>.
            </summary>
            <param name="readerContext">The Json operation deserializer context.</param>
            <param name="metadataReferencePropertyName">The name of the metadata reference property being read.</param>
            <returns>A new instance of ODataAction or ODataFunction for the <paramref name="metadataReferencePropertyName"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.CreateODataOperationAndAddToResourceSet(Microsoft.OData.ODataResourceSet,System.String)">
            <summary>
            Creates a new instance of ODataAction or ODataFunction for the <paramref name="metadataReferencePropertyName"/>.
            </summary>
            <param name="resourceSet">The resource set to add the action or function .</param>
            <param name="metadataReferencePropertyName">The name of the metadata reference property being read.</param>
            <returns>A new instance of ODataAction or ODataFunction for the <paramref name="metadataReferencePropertyName"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadMetadataReferencePropertyValue(Microsoft.OData.JsonLight.IODataJsonLightReaderResourceState,System.String)">
            <summary>
            Read the metadata reference property value for the resource being read.
            </summary>
            <param name="resourceState">The state of the reader for resource to read.</param>
            <param name="metadataReferencePropertyName">The name of the metadata reference property being read.</param>
            <remarks>
            Pre-Condition: JsonNodeType.Property: first node of the metadata reference property's value. Currently
                                                        actions and functions are the only supported metadata reference property,
                                                        we will throw if this is not a start object or start array node.
            Post-Condition: JsonNodeType.Property: the property after the annotation value
                            JsonNodeType.EndObject: the end-object of the resource
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ReadMetadataReferencePropertyValue(Microsoft.OData.ODataResourceSet,System.String)">
            <summary>
            Read the metadata reference property value for the resource set being read.
            </summary>
            <param name="resourceSet">The resource set to read.</param>
            <param name="metadataReferencePropertyName">The name of the metadata reference property being read.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.ValidateCanReadMetadataReferenceProperty">
            <summary>
            Validates that we can read metadata reference property.
            </summary>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.OperationsDeserializerContext">
            <summary>
            Operations deserializer context to pass to JSON operations reader.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.OperationsDeserializerContext.resource">
            <summary>
            The resource to add operations to.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.OperationsDeserializerContext.jsonLightResourceDeserializer">
            <summary>
            The deserializer to use.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.OperationsDeserializerContext.#ctor(Microsoft.OData.ODataResourceBase,Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer)">
            <summary>
            Constructor.
            </summary>
            <param name="resource">The resource to add operations to.</param>
            <param name="jsonLightResourceDeserializer">The deserializer to use.</param>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.OperationsDeserializerContext.JsonReader">
            <summary>
            The JSON reader to read the operations value from.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.OperationsDeserializerContext.ProcessUriFromPayload(System.String)">
            <summary>
            Given a URI from the payload, this method will try to make it absolute, or fail otherwise.
            </summary>
            <param name="uriFromPayload">The URI string from the payload to process.</param>
            <returns>An absolute URI to report.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.OperationsDeserializerContext.AddActionToResource(Microsoft.OData.ODataAction)">
            <summary>
            Adds the specified action to the current resource.
            </summary>
            <param name="action">The action whcih is fully populated with the data from the payload.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceDeserializer.OperationsDeserializerContext.AddFunctionToResource(Microsoft.OData.ODataFunction)">
            <summary>
            Adds the specified function to the current resource.
            </summary>
            <param name="function">The function whcih is fully populated with the data from the payload.</param>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightResourceSerializer">
            <summary>
            OData JsonLight serializer for entries and resource sets.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceSerializer.#ctor(Microsoft.OData.JsonLight.ODataJsonLightOutputContext)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonLightOutputContext">The output context to write to.</param>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightResourceSerializer.MetadataDocumentBaseUri">
            <summary>
            Gets the base Uri of the metadata document uri, if it has been set.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceSerializer.WriteResourceSetStartMetadataProperties(Microsoft.OData.ODataResourceSet,System.String,System.String,System.Boolean)">
            <summary>
            Writes the metadata properties for a resource set which can only occur at the start.
            </summary>
            <param name="resourceSet">The resource set for which to write the metadata properties.</param>
            <param name="propertyName">The name of the property for which to write the resource set.</param>
            <param name="expectedResourceTypeName">The expected resource type name of the items in the resource set.</param>
            <param name="isUndeclared">true if the resource set is for an undeclared property</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceSerializer.WriteResourceStartMetadataProperties(Microsoft.OData.JsonLight.IODataJsonLightWriterResourceState)">
            <summary>
            Writes the metadata properties for a resource which can only occur at the start.
            </summary>
            <param name="resourceState">The resource state for which to write the metadata properties.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceSerializer.WriteResourceMetadataProperties(Microsoft.OData.JsonLight.IODataJsonLightWriterResourceState)">
            <summary>
            Writes the metadata properties for a resource which can occur both at the start or at the end.
            </summary>
            <param name="resourceState">The resource state for which to write the metadata properties.</param>
            <remarks>
            This method will only write properties which were not written yet.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceSerializer.WriteResourceEndMetadataProperties(Microsoft.OData.JsonLight.IODataJsonLightWriterResourceState,Microsoft.OData.IDuplicatePropertyNameChecker)">
            <summary>
            Writes the metadata properties for a resource which can only occur at the end.
            </summary>
            <param name="resourceState">The resource state for which to write the metadata properties.</param>
            <param name="duplicatePropertyNameChecker">The DuplicatePropertyNameChecker to use.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceSerializer.WriteNavigationLinkMetadata(Microsoft.OData.ODataNestedResourceInfo,Microsoft.OData.IDuplicatePropertyNameChecker)">
            <summary>
            Writes the navigation link metadata.
            </summary>
            <param name="nestedResourceInfo">The navigation link to write the metadata for.</param>
            <param name="duplicatePropertyNameChecker">The DuplicatePropertyNameChecker to use.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceSerializer.WriteNestedResourceInfoContextUrl(Microsoft.OData.ODataNestedResourceInfo,Microsoft.OData.ODataContextUrlInfo)">
            <summary>
            Writes the navigation link metadata.
            </summary>
            <param name="nestedResourceInfo">The navigation link to write the metadata for.</param>
            <param name="contextUrlInfo">The contextUrl information for current element.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceSerializer.WriteOperations(System.Collections.Generic.IEnumerable{Microsoft.OData.ODataOperation},System.Boolean)">
            <summary>
            Writes "actions" or "functions" metadata.
            </summary>
            <param name="operations">The operations to write.</param>
            <param name="isAction">true when writing the resource's actions; false when writing the resource's functions.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceSerializer.WriteDeltaContextUri(Microsoft.OData.ODataResourceTypeContext,Microsoft.OData.ODataDeltaKind,Microsoft.OData.ODataContextUrlInfo)">
            <summary>
            Tries to writes the context URI property for delta resource/resource set/link into the payload if one is available.
            </summary>
            <param name="typeContext">The context object to answer basic questions regarding the type of the resource.</param>
            <param name="kind">The delta kind to write.</param>
            <param name="parentContextUrlInfo">The parent contextUrlInfo.</param>
            <returns>The created context uri info.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceSerializer.WriteResourceContextUri(Microsoft.OData.ODataResourceTypeContext,Microsoft.OData.ODataContextUrlInfo)">
            <summary>
            Tries to writes the context URI property for a resource into the payload if one is available.
            </summary>
            <param name="typeContext">The context object to answer basic questions regarding the type of the resource.</param>
            <param name="parentContextUrlInfo">The parent contextUrlInfo.</param>
            <returns>The created context uri info.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceSerializer.WriteResourceSetContextUri(Microsoft.OData.ODataResourceTypeContext)">
            <summary>
            Tries to writes the context URI property for a resource set into the payload if one is available.
            </summary>
            <param name="typeContext">The context object to answer basic questions regarding the type of the resource set.</param>
            <returns>The contextUrlInfo, if the context URI was successfully written.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceSerializer.WriteAssociationLink(System.String,System.Uri)">
            <summary>
            Writes an association link property annotation.
            </summary>
            <param name="propertyName">The name of the navigation property for which to write the association link.</param>
            <param name="associationLinkUrl">The association link URL to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceSerializer.GetOperationMetadataString(Microsoft.OData.ODataOperation)">
            <summary>
            Gets the metadata reference fragment from the operation context uri.
            i.e. if the operation context uri is {absolute metadata document uri}#{container-qualified-operation-name},
            this method will return #{container-qualified-operation-name}.
            </summary>
            <param name="operation">Operation in question.</param>
            <returns>The metadata reference fragment from the operation context uri.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceSerializer.GetOperationTargetUriString(Microsoft.OData.ODataOperation)">
            <summary>
            Returns the target uri string from the given operation.
            </summary>
            <param name="operation">Operation in question.</param>
            <returns>Returns the target uri string from the given operation.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceSerializer.ValidateOperationMetadataGroup(System.Linq.IGrouping{System.String,Microsoft.OData.ODataOperation})">
            <summary>
            Validates a group of operations with the same context Uri.
            </summary>
            <param name="operations">Operations to validate.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceSerializer.WriteOperationMetadataGroup(System.Linq.IGrouping{System.String,Microsoft.OData.ODataOperation})">
            <summary>
            Writes a group of operation (all actions or all functions) that have the same "metadata".
            </summary>
            <remarks>
            Expects the actions or functions scope to already be open.
            </remarks>
            <param name="operations">A grouping of operations that are all actions or all functions and share the same "metadata".</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightResourceSerializer.WriteOperation(Microsoft.OData.ODataOperation)">
            <summary>
            Writes an operation (an action or a function).
            </summary>
            <remarks>
            Expects the write to already have written the "rel value" and opened an array.
            </remarks>
            <param name="operation">The operation to write.</param>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightSerializer">
            <summary>
            Base class for all OData JsonLight serializers.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightSerializer.ContextUriBuilder">
            <summary>The context uri builder to use.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightSerializer.jsonLightOutputContext">
            <summary>
            The JsonLight output context to write to.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightSerializer.instanceAnnotationWriter">
            <summary>
            Instance annotation writer.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightSerializer.odataAnnotationWriter">
            <summary>
            OData annotation writer.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightSerializer.allowRelativeUri">
            <summary>
            Set to true when odata.context is writen; set to false otherwise.
            When value is false, all URIs writen to the payload must be absolute.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightSerializer.#ctor(Microsoft.OData.JsonLight.ODataJsonLightOutputContext,System.Boolean)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonLightOutputContext">The output context to write to.</param>
            <param name="initContextUriBuilder">Whether contextUriBuilder should be initialized.</param>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightSerializer.JsonLightOutputContext">
            <summary>
            Returns the <see cref="T:Microsoft.OData.JsonLight.ODataJsonLightOutputContext"/> which is to be used to write the content of the message.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightSerializer.JsonWriter">
            <summary>
            Returns the <see cref="P:Microsoft.OData.JsonLight.ODataJsonLightSerializer.JsonWriter"/> which is to be used to write the content of the message.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightSerializer.InstanceAnnotationWriter">
            <summary>
            Instance annotation writer.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightSerializer.ODataAnnotationWriter">
            <summary>
            OData annotation writer.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightSerializer.WritePayloadStart">
            <summary>
            Writes the start of the entire JSON payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightSerializer.WritePayloadEnd">
            <summary>
            Writes the end of the entire JSON payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightSerializer.WriteContextUriProperty(Microsoft.OData.ODataPayloadKind,System.Func{Microsoft.OData.ODataContextUrlInfo},Microsoft.OData.ODataContextUrlInfo,System.String)">
            <summary>
            Writes the context URI property and the specified value into the payload.
            </summary>
            <param name="payloadKind">The ODataPayloadKind for the context URI.</param>
            <param name="contextUrlInfoGen">Function to generate contextUrlInfo.</param>
            <param name="parentContextUrlInfo">The parent contextUrlInfo.</param>
            <param name="propertyName">Property name to write contextUri on.</param>
            <returns>The contextUrlInfo, if the context URI was successfully written.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightSerializer.WriteTopLevelPayload(System.Action)">
            <summary>
            Helper method to write the data wrapper around a JSON payload.
            </summary>
            <param name="payloadWriterAction">The action that writes the actual JSON payload that is being wrapped.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightSerializer.WriteTopLevelError(Microsoft.OData.ODataError,System.Boolean)">
            <summary>
            Write a top-level error message.
            </summary>
            <param name="error">The error instance to write.</param>
            <param name="includeDebugInformation">A flag indicating whether error details should be written (in debug mode only) or not.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightSerializer.UriToString(System.Uri)">
            <summary>
            Returns the string representation of the URI
            </summary>
            <param name="uri">The uri to process.</param>
            <returns>Returns the string representation of the URI.</returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightServiceDocumentDeserializer">
            <summary>
            OData JsonLight deserializer for service documents.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightServiceDocumentDeserializer.#ctor(Microsoft.OData.JsonLight.ODataJsonLightInputContext)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonLightInputContext">The JsonLight input context to read from.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightServiceDocumentDeserializer.ReadServiceDocument">
            <summary>
            Read a service document.
            This method reads the service document from the input and returns
            an <see cref="T:Microsoft.OData.ODataServiceDocument"/> that represents the read service document.
            </summary>
            <returns>An <see cref="T:Microsoft.OData.ODataServiceDocument"/> representing the read service document.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.None: assumes that the JSON reader has not been used yet.
            Post-Condition: JsonNodeType.EndOfInput
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightServiceDocumentDeserializer.ReadServiceDocumentAsync">
            <summary>
            Read a service document.
            This method reads the service document from the input and returns
            an <see cref="T:Microsoft.OData.ODataServiceDocument"/> that represents the read service document.
            </summary>
            <returns>A task which returns an <see cref="T:Microsoft.OData.ODataServiceDocument"/> representing the read service document.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.None: assumes that the JSON reader has not been used yet.
            Post-Condition: JsonNodeType.EndOfInput
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightServiceDocumentDeserializer.ReadServiceDocumentImplementation(Microsoft.OData.PropertyAndAnnotationCollector)">
            <summary>
            Read a service document.
            This method reads the service document from the input and returns
            an <see cref="T:Microsoft.OData.ODataServiceDocument"/> that represents the read service document.
            </summary>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker to use for the top-level scope.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataServiceDocument"/> representing the read service document.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.Property The property right after the context URI property.
                            JsonNodeType.EndObject The EndObject of the service document.
            Post-Condition: Any The node after the EndObject of the service document.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightServiceDocumentDeserializer.ReadServiceDocumentElement(Microsoft.OData.PropertyAndAnnotationCollector)">
            <summary>
            Reads a resource collection within a service document.
            </summary>
            <param name="propertyAndAnnotationCollector">The <see cref="T:Microsoft.OData.PropertyAndAnnotationCollector"/> to use for parsing annotations within the service document element object.</param>
            <returns>A <see cref="T:Microsoft.OData.ODataEntitySetInfo"/> representing the read resource collection.</returns>
            <remarks>
            Pre-Condition: JsonNodeType.StartObject: The beginning of the JSON object representing the service document element.
                            other: Will throw with an appropriate message on any other node type encountered.
            Post-Condition: JsonNodeType.StartObject: The beginning of the next resource collection in the array.
                            JsonNodeType.EndArray: The end of the array.
                            other: Any other node type occuring after the end object of the current service document element. (Would be invalid).
            </remarks>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightServiceDocumentSerializer">
            <summary>
            OData JsonLight serializer for service documents.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightServiceDocumentSerializer.#ctor(Microsoft.OData.JsonLight.ODataJsonLightOutputContext)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonLightOutputContext">The output context to write to.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightServiceDocumentSerializer.WriteServiceDocument(Microsoft.OData.ODataServiceDocument)">
            <summary>
            Writes a service document in JsonLight format.
            </summary>
            <param name="serviceDocument">The service document to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightServiceDocumentSerializer.WriteServiceDocumentElement(Microsoft.OData.ODataServiceDocumentElement,System.String)">
            <summary>
            Writes a element (EntitySet, Singleton or FunctionImport) in service document.
            </summary>
            <param name="serviceDocumentElement">The element in service document to write.</param>
            <param name="kind">Kind of the service document element, optional for entityset's must for FunctionImport and Singleton.</param>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightUtils">
            <summary>
            Helper methods used by the OData reader for the JsonLight format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightUtils.CharactersToTrimFromParameters">
            <summary>
            The set of characters to trim from the parameters of an operation. Contains '(' and ')'.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightUtils.IsMetadataReferenceProperty(System.String)">
            <summary>
            Determines if the specified property name is a name of a metadata reference property.
            </summary>
            <param name="propertyName">The name of the property.</param>
            <returns>true if <paramref name="propertyName"/> is a name of a metadata reference property, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightUtils.GetFullyQualifiedOperationName(System.Uri,System.String,System.String@)">
            <summary>
            Gets the fully qualified operation import name from the metadata reference property name.
            </summary>
            <param name="metadataDocumentUri">The metadata document Uri.</param>
            <param name="metadataReferencePropertyName">The metadata reference property name.</param>
            <param name="parameterNames">The parameter names, if any are present in the given string.</param>
            <returns>The fully qualified operation import name.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightUtils.GetUriFragmentFromMetadataReferencePropertyName(System.Uri,System.String)">
            <summary>
            Gets the Uri fragment from the metadata reference property name.
            </summary>
            <param name="metadataDocumentUri">The metadata document Uri.</param>
            <param name="propertyName">The metadata reference property name.</param>
            <returns>The Uri fragment which corresponds to action/function names, etc.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightUtils.GetAbsoluteUriFromMetadataReferencePropertyName(System.Uri,System.String)">
            <summary>
            Converts the metadata reference property name to an absolute Uri.
            </summary>
            <param name="metadataDocumentUri">The metadata document uri.</param>
            <param name="propertyName">The metadata reference property name.</param>
            <returns>The absolute Uri for the metadata reference property name.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightUtils.GetMetadataReferenceName(Microsoft.OData.Edm.IEdmModel,Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Calculates the metadata reference name for the given operation. When there is no overload to the function, this method will
            return the namespace qualified operation name. When there is overload to the operation this method will
            return FQFN([comma separated parameter type names]) to disambiguate between different overloads.
            </summary>
            <param name="model">The model of the operations.</param>
            <param name="operation">The operation in question.</param>
            <returns>The metadata reference name for the given operation.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightUtils.CreateODataOperation(System.Uri,System.String,Microsoft.OData.Edm.IEdmOperation,System.Boolean@)">
            <summary>
            Creates an ODataAction or ODataFunction from a operation import.
            </summary>
            <param name="metadataDocumentUri">The metadata document uri.</param>
            <param name="metadataReferencePropertyName">The metadata reference property name.</param>
            <param name="edmOperation">The operation to create the ODataOperation for.</param>
            <param name="isAction">true if the created ODataOperation is an ODataAction, false otherwise.</param>
            <returns>The created ODataAction or ODataFunction.</returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightValidationUtils">
            <summary>
            Helper methods used by the OData reader for the JsonLight format.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightValidationUtils.ValidateMetadataReferencePropertyName(System.Uri,System.String)">
            <summary>
            Validates that a string is either a valid absolute URI, or (if it begins with '#') it is a valid URI fragment.
            </summary>
            <param name="metadataDocumentUri">The metadata document uri.</param>
            <param name="propertyName">The property name to validate.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightValidationUtils.ValidateOperation(System.Uri,Microsoft.OData.ODataOperation)">
            <summary>
            Validates an operation is valid.
            </summary>
            <param name="metadataDocumentUri">The metadata document uri.</param>
            <param name="operation">The operation to validate.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightValidationUtils.IsOpenMetadataReferencePropertyName(System.Uri,System.String)">
            <summary>
            Determines if the specified property name is a name of an open metadata reference property.
            </summary>
            <param name="metadataDocumentUri">The metadata document uri.</param>
            <param name="propertyName">The property name in question.</param>
            <returns>true if the specified property name is a name of an open metadata reference property; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightValidationUtils.ValidateOperationPropertyValueIsNotNull(System.Object,System.String,System.String)">
            <summary>
            Validates that the property in an operation (an action or a function) is valid.
            </summary>
            <param name="propertyValue">The value of the property.</param>
            <param name="propertyName">The name of the property (used for error reporting).</param>
            <param name="metadata">The metadata value for the operation (used for error reporting).</param>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightValueSerializer">
            <summary>
            OData JsonLight serializer for value types.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightValueSerializer.recursionDepth">
            <summary>
            The current recursion depth of values written by this serializer.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightValueSerializer.#ctor(Microsoft.OData.JsonLight.ODataJsonLightPropertySerializer,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.OData.JsonLight.ODataJsonLightValueSerializer"/> class.
            </summary>
            <param name="propertySerializer">The property serializer to use when writing complex values.</param>
            <param name="initContextUriBuilder">Whether contextUriBuilder should be initialized.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightValueSerializer.#ctor(Microsoft.OData.JsonLight.ODataJsonLightOutputContext,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.OData.JsonLight.ODataJsonLightValueSerializer"/> class.
            </summary>
            <param name="outputContext">The output context to use.</param>
            <param name="initContextUriBuilder">Whether contextUriBuilder should be initialized.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightValueSerializer.WriteNullValue">
            <summary>
            Writes a null value to the wire.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightValueSerializer.WriteEnumValue(Microsoft.OData.ODataEnumValue,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Write enum value
            </summary>
            <param name="value">enum value</param>
            <param name="expectedTypeReference">expected type reference</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightValueSerializer.WriteCollectionValue(Microsoft.OData.ODataCollectionValue,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.Edm.IEdmTypeReference,System.Boolean,System.Boolean,System.Boolean)">
            <summary>
            Writes out the value of a collection property.
            </summary>
            <param name="collectionValue">The collection value to write.</param>
            <param name="metadataTypeReference">The metadata type reference for the collection.</param>
            <param name="valueTypeReference">The value type reference for the collection.</param>
            <param name="isTopLevelProperty">Whether or not a top-level property is being written.</param>
            <param name="isInUri">Whether or not the value is being written for a URI.</param>
            <param name="isOpenPropertyType">True if the type name belongs to an open property.</param>
            <remarks>The current recursion depth is measured by the number of complex and collection values between
            this one and the top-level payload, not including this one.</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightValueSerializer.WritePrimitiveValue(System.Object,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Writes a primitive value.
            Uses a registered primitive type converter to write the value if one is registered for the type, otherwise directly writes the value.
            </summary>
            <param name="value">The value to write.</param>
            <param name="expectedTypeReference">The expected type reference of the primitive value.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightValueSerializer.WritePrimitiveValue(System.Object,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Writes a primitive value.
            </summary>
            <param name="value">The value to write.</param>
            <param name="actualTypeReference">The actual type reference of the primitive value.</param>
            <param name="expectedTypeReference">The expected type reference of the primitive value.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightValueSerializer.WriteUntypedValue(Microsoft.OData.ODataUntypedValue)">
            <summary>
            Writes an untyped value.
            </summary>
            <param name="value">The untyped value to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightValueSerializer.AssertRecursionDepthIsZero">
            <summary>
            Asserts that the current recursion depth of values is zero. This should be true on all calls into this class from outside of this class.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightValueSerializer.IncreaseRecursionDepth">
            <summary>
            Increases the recursion depth of values by 1. This will throw if the recursion depth exceeds the current limit.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightValueSerializer.DecreaseRecursionDepth">
            <summary>
            Decreases the recursion depth of values by 1.
            </summary>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightWriter">
            <summary>
            Implementation of the ODataWriter for the JsonLight format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.jsonLightOutputContext">
            <summary>
            The output context to write to.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.jsonLightResourceSerializer">
            <summary>
            The JsonLight resource and resource set serializer to use.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.jsonLightValueSerializer">
            <summary>
            The JsonLight value serializer to use for primitive values in an untyped collection.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.writingParameter">
            <summary>
            True if the writer was created for writing a parameter; false otherwise.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.jsonWriter">
            <summary>
            The underlying JSON writer.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.odataAnnotationWriter">
            <summary>
            OData annotation writer.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.#ctor(Microsoft.OData.JsonLight.ODataJsonLightOutputContext,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,System.Boolean,System.Boolean,Microsoft.OData.IODataReaderWriterListener)">
            <summary>
            Constructor.
            </summary>
            <param name="jsonLightOutputContext">The output context to write to.</param>
            <param name="navigationSource">The navigation source we are going to write resource set for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="writingResourceSet">true if the writer is created for writing a resource set; false when it is created for writing a resource.</param>
            <param name="writingParameter">true if the writer is created for writing a parameter; false otherwise.</param>
            <param name="writingDelta">True if the writer is created for writing delta response; false otherwise.</param>
            <param name="listener">If not null, the writer will notify the implementer of the interface of relevant state changes in the writer.</param>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.CurrentResourceScope">
            <summary>
            Returns the current JsonLightResourceScope.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.CurrentDeletedResourceScope">
            <summary>
            Returns the current JsonLightDeletedResourceScope.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.CurrentDeltaLinkScope">
            <summary>
            Returns the current JsonLightDeltaLinkScope.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.CurrentResourceSetScope">
            <summary>
            Returns the current JsonLightResourceSetScope.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.CurrentDeltaResourceSetScope">
            <summary>
            Returns the current JsonLightDeltaResourceSetScope.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.VerifyNotDisposed">
            <summary>
            Check if the object has been disposed; called from all public API methods. Throws an ObjectDisposedException if the object
            has already been disposed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.FlushSynchronously">
            <summary>
            Flush the output.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.FlushAsynchronously">
            <summary>
            Flush the output.
            </summary>
            <returns>Task representing the pending flush operation.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.StartPayload">
            <summary>
            Starts writing a payload (called exactly once before anything else)
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.EndPayload">
            <summary>
            Ends writing a payload (called exactly once after everything else in case of success)
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.PrepareResourceForWriteStart(Microsoft.OData.ODataWriterCore.ResourceScope,Microsoft.OData.ODataResource,System.Boolean,Microsoft.OData.SelectedPropertiesNode)">
            <summary>
            Place where derived writers can perform custom steps before the resource is written, at the beginning of WriteStartEntryImplementation.
            </summary>
            <param name="resourceScope">The ResourceScope.</param>
            <param name="resource">Resource to write.</param>
            <param name="writingResponse">True if writing response.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.PrepareDeletedResourceForWriteStart(Microsoft.OData.ODataWriterCore.DeletedResourceScope,Microsoft.OData.ODataDeletedResource,System.Boolean,Microsoft.OData.SelectedPropertiesNode)">
            <summary>
            Place where derived writers can perform custom steps before the deleted resource is written, at the beginning of WriteStartEntryImplementation.
            </summary>
            <param name="resourceScope">The ResourceScope.</param>
            <param name="deletedResource">Deleted resource to write.</param>
            <param name="writingResponse">True if writing response.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.StartResource(Microsoft.OData.ODataResource)">
            <summary>
            Start writing a resource.
            </summary>
            <param name="resource">The resource to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.EndResource(Microsoft.OData.ODataResource)">
            <summary>
            Finish writing a resource.
            </summary>
            <param name="resource">The resource to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.EndDeletedResource(Microsoft.OData.ODataDeletedResource)">
            <summary>
            Finish writing a deleted resource.
            </summary>
            <param name="deletedResource">The resource to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.StartResourceSet(Microsoft.OData.ODataResourceSet)">
            <summary>
            Start writing a resource set.
            </summary>
            <param name="resourceSet">The resource set to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.EndResourceSet(Microsoft.OData.ODataResourceSet)">
            <summary>
            Finish writing a resource set.
            </summary>
            <param name="resourceSet">The resource set to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.StartDeltaResourceSet(Microsoft.OData.ODataDeltaResourceSet)">
            <summary>
            Start writing a delta resource set.
            </summary>
            <param name="deltaResourceSet">The delta resource set to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.EndDeltaResourceSet(Microsoft.OData.ODataDeltaResourceSet)">
            <summary>
            Finish writing a delta resource set.
            </summary>
            <param name="deltaResourceSet">The resource set to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.StartDeletedResource(Microsoft.OData.ODataDeletedResource)">
            <summary>
            Start writing a delta deleted resource.
            </summary>
            <param name="resource">The resource to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.StartDeltaLink(Microsoft.OData.ODataDeltaLinkBase)">
            <summary>
            Start writing a delta (deleted) link.
            </summary>
            <param name="link">The link to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.WritePrimitiveValue(Microsoft.OData.ODataPrimitiveValue)">
            <summary>
            Write a primitive type inside an untyped collection.
            </summary>
            <param name="primitiveValue">The nested resource info to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.WriteDeferredNestedResourceInfo(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            Start writing a deferred (non-expanded) nested resource info.
            </summary>
            <param name="nestedResourceInfo">The nested resource info to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.StartNestedResourceInfoWithContent(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            Start writing the nested resource info with content.
            </summary>
            <param name="nestedResourceInfo">The nested resource info to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.EndNestedResourceInfoWithContent(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            Finish writing nested resource info with content.
            </summary>
            <param name="nestedResourceInfo">The nested resource info to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.WriteEntityReferenceInNavigationLinkContent(Microsoft.OData.ODataNestedResourceInfo,Microsoft.OData.ODataEntityReferenceLink)">
            <summary>
            Write an entity reference link.
            </summary>
            <param name="parentNestedResourceInfo">The parent navigation link which is being written around the entity reference link.</param>
            <param name="entityReferenceLink">The entity reference link to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.CreateResourceSetScope(Microsoft.OData.ODataResourceSet,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri,System.Boolean)">
            <summary>
            Create a new resource set scope.
            </summary>
            <param name="resourceSet">The resource set for the new scope.</param>
            <param name="navigationSource">The navigation source we are going to write resources for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="skipWriting">true if the content of the scope to create should not be written.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
            <param name="isUndeclared">true if the resource set is for an undeclared property</param>
            <returns>The newly create scope.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.CreateDeltaResourceSetScope(Microsoft.OData.ODataDeltaResourceSet,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri,System.Boolean)">
            <summary>
            Create a new delta resource set scope.
            </summary>
            <param name="deltaResourceSet">The delta resource set for the new scope.</param>
            <param name="navigationSource">The navigation source we are going to write resource set for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="skipWriting">true if the content of the scope to create should not be written.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
            <param name="isUndeclared">true if the resource set is for an undeclared property</param>
            <returns>The newly create scope.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.CreateDeletedResourceScope(Microsoft.OData.ODataDeletedResource,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmEntityType,System.Boolean,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri,System.Boolean)">
            <summary>
            Create a new resource scope.
            </summary>
            <param name="deltaResource">The resource for the new scope.</param>
            <param name="navigationSource">The navigation source we are going to write resources for.</param>
            <param name="resourceType">The entity type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="skipWriting">true if the content of the scope to create should not be written.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
            <param name="isUndeclared">true if the resource is for an undeclared property</param>
            <returns>The newly create scope.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.CreateDeltaLinkScope(Microsoft.OData.ODataDeltaLinkBase,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmEntityType,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri)">
            <summary>
            Create a new delta link scope.
            </summary>
            <param name="link">The link for the new scope.</param>
            <param name="navigationSource">The navigation source we are going to write entities for.</param>
            <param name="entityType">The entity type for the entries in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
            <returns>The newly create scope.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.CreateResourceScope(Microsoft.OData.ODataResource,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri,System.Boolean)">
            <summary>
            Create a new resource scope.
            </summary>
            <param name="resource">The resource for the new scope.</param>
            <param name="navigationSource">The navigation source we are going to write resources for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="skipWriting">true if the content of the scope to create should not be written.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
            <param name="isUndeclared">true if the resource is for an undeclared property</param>
            <returns>The newly create scope.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.CreateNestedResourceInfoScope(Microsoft.OData.ODataWriterCore.WriterState,Microsoft.OData.ODataNestedResourceInfo,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri)">
            <summary>
            Creates a new JSON Light nested resource info scope.
            </summary>
            <param name="writerState">The writer state for the new scope.</param>
            <param name="navLink">The nested resource info for the new scope.</param>
            <param name="navigationSource">The navigation source we are going to write entities for.</param>
            <param name="resourceType">The resource type for the items in the resource set to be written (or null if the navigationSource base type should be used).</param>
            <param name="skipWriting">true if the content of the scope to create should not be written.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
            <returns>The newly created JSON Light nested resource info scope.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.InnerPrepareResourceForWriteStart(Microsoft.OData.ODataResourceBase,Microsoft.OData.ODataResourceTypeContext,Microsoft.OData.SelectedPropertiesNode)">
            <summary>
            Sets resource's metadata builder based on current metadata level.
            </summary>
            <param name="resource">Resource to write.</param>
            <param name="typeContext">The context object to answer basic questions regarding the type of the resource or resource set.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.FindParentResourceMetadataBuilder">
            <summary>
            Find instance of the metadata builder which belong to the parent odata resource
            </summary>
            <returns>
            The metadata builder of the parent odata resource
            Or null if there is no parent odata resource
            </returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.WriteResourceSetCount(System.Nullable{System.Int64},System.String)">
            <summary>
            Writes the odata.count annotation for a resource set if it has not been written yet (and the count is specified on the resource set).
            </summary>
            <param name="count">The count to write for the resource set.</param>
            <param name="propertyName">The name of the expanded nav property or null for a top-level resource set.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.WriteResourceSetNextLink(System.Uri,System.String)">
            <summary>
            Writes the odata.nextLink annotation for a resource set if it has not been written yet (and the next link is specified on the resource set).
            </summary>
            <param name="nextPageLink">The nextLink to write, if available.</param>
            <param name="propertyName">The name of the expanded nav property or null for a top-level resource set.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.WriteResourceSetDeltaLink(System.Uri)">
            <summary>
            Writes the odata.deltaLink annotation for a resource set if it has not been written yet (and the delta link is specified on the resource set).
            </summary>
            <param name="deltaLink">The delta link to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.WriteDeletedResourceId(Microsoft.OData.ODataDeletedResource)">
            <summary>
            Writes the odata.id annotation for a delta deleted resource.
            </summary>
            <param name="resource">The resource to write the id for.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.WriteDeltaResourceProperties(System.Collections.Generic.IEnumerable{Microsoft.OData.ODataProperty})">
            <summary>
            Writes the properties for a delta resource.
            </summary>
            <param name="properties">The properties to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.WriteDeltaResourceReason(Microsoft.OData.ODataDeletedResource)">
            <summary>
            Writes the reason annotation for a delta deleted resource.
            </summary>
            <param name="resource">The resource to write the reason for.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.WriteDeltaLinkContextUri(Microsoft.OData.ODataDeltaKind)">
            <summary>
            Writes the context uri for a delta (deleted) link.
            </summary>
            <param name="kind">The delta kind of link.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.WriteDeltaLinkSource(Microsoft.OData.ODataDeltaLinkBase)">
            <summary>
            Writes the source for a delta (deleted) link.
            </summary>
            <param name="link">The link to write source for.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.WriteDeltaLinkRelationship(Microsoft.OData.ODataDeltaLinkBase)">
            <summary>
            Writes the relationship for a delta (deleted) link.
            </summary>
            <param name="link">The link to write relationship for.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.WriteDeltaLinkTarget(Microsoft.OData.ODataDeltaLinkBase)">
            <summary>
            Writes the target for a delta (deleted) link.
            </summary>
            <param name="link">The link to write target for.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.ValidateNoCustomInstanceAnnotationsForExpandedResourceSet(Microsoft.OData.ODataResourceSet)">
            <summary>
            Validates that the ODataResourceSet.InstanceAnnotations collection is empty for the given expanded resource set.
            </summary>
            <param name="resourceSet">The expanded resource set in question.</param>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceSetScope">
            <summary>
            A scope for a JSON lite resource set.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceSetScope.nextLinkWritten">
            <summary>true if the odata.nextLink was already written, false otherwise.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceSetScope.deltaLinkWritten">
            <summary>true if the odata.deltaLink was already written, false otherwise.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceSetScope.isUndeclared">
            <summary>true if the resource set represents a collection of complex property or a collection navigation property that is undeclared, false otherwise.</summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceSetScope.#ctor(Microsoft.OData.ODataResourceSet,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri,System.Boolean)">
            <summary>
            Constructor to create a new resource set scope.
            </summary>
            <param name="resourceSet">The resource set for the new scope.</param>
            <param name="navigationSource">The navigation source we are going to write resources for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="skipWriting">true if the content of the scope to create should not be written.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
            <param name="isUndeclared">true if the resource set is for an undeclared property</param>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceSetScope.NextPageLinkWritten">
            <summary>
            true if the odata.nextLink annotation was already written, false otherwise.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceSetScope.DeltaLinkWritten">
            <summary>
            true if the odata.deltaLink annotation was already written, false otherwise.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceSetScope.IsUndeclared">
            <summary>
            true if the resource set represents a collection of complex property or a collection navigation property that is undeclared, false otherwise.
            </summary>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope">
            <summary>
            A scope for a deleted resource in JSON Light writer.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope.alreadyWrittenMetadataProperties">
            <summary>Bit field of the JSON Light metadata properties written so far.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope.isUndeclared">
            <summary>true if the resource set represents a complex property or a singleton navigation property that is undeclared, false otherwise.</summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope.#ctor(Microsoft.OData.ODataDeletedResource,Microsoft.OData.ODataResourceSerializationInfo,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmEntityType,System.Boolean,Microsoft.OData.ODataMessageWriterSettings,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri,System.Boolean)">
            <summary>
            Constructor to create a new resource scope.
            </summary>
            <param name="resource">The resource for the new scope.</param>
            <param name="serializationInfo">The serialization info for the current resource.</param>
            <param name="navigationSource">The navigation source we are going to write resources for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="skipWriting">true if the content of the scope to create should not be written.</param>
            <param name="writerSettings">The <see cref="T:Microsoft.OData.ODataMessageWriterSettings"/> The settings of the writer.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
            <param name="isUndeclared">true if the resource is for an undeclared property</param>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope.JsonLightEntryMetadataProperty">
            <summary>
            Enumeration of JSON Light metadata property flags, used to keep track of which properties were already written.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope.JsonLightEntryMetadataProperty.EditLink">
            <summary>The odata.editLink property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope.JsonLightEntryMetadataProperty.ReadLink">
            <summary>The odata.readLink property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope.JsonLightEntryMetadataProperty.MediaEditLink">
            <summary>The odata.mediaEditLink property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope.JsonLightEntryMetadataProperty.MediaReadLink">
            <summary>The odata.mediaReadLink property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope.JsonLightEntryMetadataProperty.MediaContentType">
            <summary>The odata.mediaContentType property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope.JsonLightEntryMetadataProperty.MediaETag">
            <summary>The odata.mediaEtag property.</summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope.Microsoft#OData#JsonLight#IODataJsonLightWriterResourceState#Resource">
            <summary>
            The resource being written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope.IsUndeclared">
            <summary>
            true if the resource set represents a complex property or a singleton navigation property that is undeclared, false otherwise.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope.EditLinkWritten">
            <summary>
            Flag which indicates that the odata.editLink metadata property has been written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope.ReadLinkWritten">
            <summary>
            Flag which indicates that the odata.readLink metadata property has been written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope.MediaEditLinkWritten">
            <summary>
            Flag which indicates that the odata.mediaEditLink metadata property has been written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope.MediaReadLinkWritten">
            <summary>
            Flag which indicates that the odata.mediaReadLink metadata property has been written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope.MediaContentTypeWritten">
            <summary>
            Flag which indicates that the odata.mediaContentType metadata property has been written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope.MediaETagWritten">
            <summary>
            Flag which indicates that the odata.mediaEtag metadata property has been written.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope.SetWrittenMetadataProperty(Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope.JsonLightEntryMetadataProperty)">
            <summary>
            Marks the <paramref name="jsonLightMetadataProperty"/> as written in this resource scope.
            </summary>
            <param name="jsonLightMetadataProperty">The metadta property which was written.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope.IsMetadataPropertyWritten(Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeletedResourceScope.JsonLightEntryMetadataProperty)">
            <summary>
            Determines if the <paramref name="jsonLightMetadataProperty"/> was already written for this resource scope.
            </summary>
            <param name="jsonLightMetadataProperty">The metadata property to test for.</param>
            <returns>true if the <paramref name="jsonLightMetadataProperty"/> was already written for this resource scope; false otherwise.</returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeltaLinkScope">
            <summary>
            A scope for a delta link in JSON Light writer.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeltaLinkScope.#ctor(Microsoft.OData.ODataWriterCore.WriterState,Microsoft.OData.ODataItem,Microsoft.OData.ODataResourceSerializationInfo,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmEntityType,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri)">
            <summary>
            Constructor to create a new delta link scope.
            </summary>
            <param name="state">The writer state of this scope.</param>
            <param name="link">The link for the new scope.</param>
            <param name="serializationInfo">The serialization info for the current resource.</param>
            <param name="navigationSource">The navigation source we are going to write entities for.</param>
            <param name="entityType">The entity type for the entries in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeltaResourceSetScope">
            <summary>
            A scope for a JSON lite resource set.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeltaResourceSetScope.nextLinkWritten">
            <summary>true if the odata.nextLink was already written, false otherwise.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeltaResourceSetScope.deltaLinkWritten">
            <summary>true if the odata.deltaLink was already written, false otherwise.</summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeltaResourceSetScope.#ctor(Microsoft.OData.ODataDeltaResourceSet,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri)">
            <summary>
            Constructor to create a new resource set scope.
            </summary>
            <param name="resourceSet">The resource set for the new scope.</param>
            <param name="navigationSource">The navigation source we are going to write entities for.</param>
            <param name="resourceType">The entity type for the entries in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeltaResourceSetScope.NextPageLinkWritten">
            <summary>
            true if the odata.nextLink annotation was already written, false otherwise.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightDeltaResourceSetScope.DeltaLinkWritten">
            <summary>
            true if the odata.deltaLink annotation was already written, false otherwise.
            </summary>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope">
            <summary>
            A scope for a resource in JSON Light writer.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope.alreadyWrittenMetadataProperties">
            <summary>Bit field of the JSON Light metadata properties written so far.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope.isUndeclared">
            <summary>true if the resource set represents a complex property or a singleton navigation property that is undeclared, false otherwise.</summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope.#ctor(Microsoft.OData.ODataResource,Microsoft.OData.ODataResourceSerializationInfo,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,Microsoft.OData.ODataMessageWriterSettings,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri,System.Boolean)">
            <summary>
            Constructor to create a new resource scope.
            </summary>
            <param name="resource">The resource for the new scope.</param>
            <param name="serializationInfo">The serialization info for the current resource.</param>
            <param name="navigationSource">The navigation source we are going to write resources for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="skipWriting">true if the content of the scope to create should not be written.</param>
            <param name="writerSettings">The <see cref="T:Microsoft.OData.ODataMessageWriterSettings"/> The settings of the writer.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
            <param name="isUndeclared">true if the resource is for an undeclared property</param>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope.JsonLightEntryMetadataProperty">
            <summary>
            Enumeration of JSON Light metadata property flags, used to keep track of which properties were already written.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope.JsonLightEntryMetadataProperty.EditLink">
            <summary>The odata.editLink property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope.JsonLightEntryMetadataProperty.ReadLink">
            <summary>The odata.readLink property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope.JsonLightEntryMetadataProperty.MediaEditLink">
            <summary>The odata.mediaEditLink property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope.JsonLightEntryMetadataProperty.MediaReadLink">
            <summary>The odata.mediaReadLink property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope.JsonLightEntryMetadataProperty.MediaContentType">
            <summary>The odata.mediaContentType property.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope.JsonLightEntryMetadataProperty.MediaETag">
            <summary>The odata.mediaEtag property.</summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope.Microsoft#OData#JsonLight#IODataJsonLightWriterResourceState#Resource">
            <summary>
            The resource being written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope.IsUndeclared">
            <summary>
            true if the resource set represents a complex property or a singleton navigation property that is undeclared, false otherwise.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope.EditLinkWritten">
            <summary>
            Flag which indicates that the odata.editLink metadata property has been written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope.ReadLinkWritten">
            <summary>
            Flag which indicates that the odata.readLink metadata property has been written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope.MediaEditLinkWritten">
            <summary>
            Flag which indicates that the odata.mediaEditLink metadata property has been written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope.MediaReadLinkWritten">
            <summary>
            Flag which indicates that the odata.mediaReadLink metadata property has been written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope.MediaContentTypeWritten">
            <summary>
            Flag which indicates that the odata.mediaContentType metadata property has been written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope.MediaETagWritten">
            <summary>
            Flag which indicates that the odata.mediaEtag metadata property has been written.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope.SetWrittenMetadataProperty(Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope.JsonLightEntryMetadataProperty)">
            <summary>
            Marks the <paramref name="jsonLightMetadataProperty"/> as written in this resource scope.
            </summary>
            <param name="jsonLightMetadataProperty">The metadta property which was written.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope.IsMetadataPropertyWritten(Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightResourceScope.JsonLightEntryMetadataProperty)">
            <summary>
            Determines if the <paramref name="jsonLightMetadataProperty"/> was already written for this resource scope.
            </summary>
            <param name="jsonLightMetadataProperty">The metadata property to test for.</param>
            <returns>true if the <paramref name="jsonLightMetadataProperty"/> was already written for this resource scope; false otherwise.</returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightNestedResourceInfoScope">
            <summary>
            A scope for a JSON Light nested resource info.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightNestedResourceInfoScope.entityReferenceLinkWritten">
            <summary>true if we have already written an entity reference link for this nested resource info in requests; otherwise false.</summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightNestedResourceInfoScope.resourceSetWritten">
            <summary>true if we have written at least one resource set for this nested resource info in requests; otherwise false.</summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightNestedResourceInfoScope.#ctor(Microsoft.OData.ODataWriterCore.WriterState,Microsoft.OData.ODataNestedResourceInfo,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri)">
            <summary>
            Constructor to create a new JSON Light nested resource info scope.
            </summary>
            <param name="writerState">The writer state for the new scope.</param>
            <param name="navLink">The nested resource info for the new scope.</param>
            <param name="navigationSource">The navigation source we are going to write entities for.</param>
            <param name="resourceType">The resource type for the items in the resource set to be written (or null if the navigationSource base type should be used).</param>
            <param name="skipWriting">true if the content of the scope to create should not be written.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightNestedResourceInfoScope.EntityReferenceLinkWritten">
            <summary>
            true if we have already written an entity reference link for this navigation link in requests; otherwise false.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightNestedResourceInfoScope.ResourceSetWritten">
            <summary>
            true if we have written at least one resource set for this nested resource info in requests; otherwise false.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriter.JsonLightNestedResourceInfoScope.Clone(Microsoft.OData.ODataWriterCore.WriterState)">
            <summary>
            Clones this JSON Light nested resource info scope and sets a new writer state.
            </summary>
            <param name="newWriterState">The writer state to set.</param>
            <returns>The cloned nested resource info scope with the specified writer state.</returns>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ODataJsonLightWriterUtils">
            <summary>
            Helper methods used by the OData writer for the JsonLight format.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriterUtils.WriteValuePropertyName(Microsoft.OData.Json.IJsonWriter)">
            <summary>
            Writes the 'value' property name.
            </summary>
            <param name="jsonWriter">The JSON writer to write to.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriterUtils.WritePropertyAnnotationName(Microsoft.OData.Json.IJsonWriter,System.String,System.String)">
            <summary>
            Write a JSON property name which represents a property annotation.
            </summary>
            <param name="jsonWriter">The JSON writer to write to.</param>
            <param name="propertyName">The name of the property to annotate.</param>
            <param name="annotationName">The name of the annotation to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ODataJsonLightWriterUtils.WriteInstanceAnnotationName(Microsoft.OData.Json.IJsonWriter,System.String)">
            <summary>
            Write a JSON instance annotation name which represents a instance annotation.
            </summary>
            <param name="jsonWriter">The JSON writer to write to.</param>
            <param name="annotationName">The name of the instance annotation to write.</param>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ReorderingJsonReader">
            <summary>
            Reader for the JSON Lite format that supports look-ahead and re-ordering of payloads.
            </summary>
            <remarks>TODO: not sure if this class could be implemented as a decorator as well.</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ReorderingJsonReader.#ctor(Microsoft.OData.Json.IJsonReader,System.Int32)">
            <summary>
            Constructor.
            </summary>
            <param name="innerReader">The inner JSON reader.</param>
            <param name="maxInnerErrorDepth">The maximum number of recursive internalexception objects to allow when reading in-stream errors.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ReorderingJsonReader.ProcessObjectValue">
            <summary>
            Called whenever we find a new object value in the payload.
            Buffers and re-orders an object value for later consumption by the JsonLight reader.
            </summary>
            <remarks>
            This method is called when the reader is in the buffering mode and can read ahead (buffering) as much as it needs to
            once it returns the reader will be returned to the position before the method was called.
            The reader is always positioned on a start object when this method is called.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ReorderingJsonReader.ReadPropertyName(System.String@,System.String@)">
            <summary>
            Reads a property name from the JSON reader and determines if it's a regular property, an instance annotation or a property annotation.
            </summary>
            <param name="propertyName">The name of the regular property which the reader is positioned on or which a property annotation belongs to.</param>
            <param name="annotationName">The name of the instance or property annotation, or null if the reader is on a regular property.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferValue">
            <summary>
            Reads over a value buffering it.
            </summary>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedObject">
            <summary>
            A data structure to represent the buffered object with information about its properties,
            their order and annotations.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedObject.propertyCache">
            <summary>The cache for properties.</summary>
            <remarks>The key is the property or instance annotation name,
            the value are the buffered properties grouped by property name (incl. annotation properties).</remarks>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedObject.dataProperties">
            <summary>The set of data property names.</summary>
            <remarks>Data properties are the properties that are neither an instance annotation property nor a property annotation.</remarks>
        </member>
        <member name="F:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedObject.propertyNamesWithAnnotations">
            <summary>A list of property names with their annotation name.</summary>
            <remarks>This is needed to properly maintain the relative order of annotation properties if no data
            property for the annotation property exists in the object.</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedObject.#ctor">
            <summary>
            Constructor.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedObject.ObjectStart">
            <summary>
            The node in the linked list of buffered nodes where this object starts.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedObject.CurrentProperty">
            <summary>
            The current buffered property being processed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedObject.AddBufferedProperty(System.String,System.String,Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedProperty)">
            <summary>
            Adds a new buffered property to the list of buffered properties for this object.
            </summary>
            <param name="propertyName">The name of the data property (null for instance annotations).</param>
            <param name="annotationName">The name of the annotation (null for data properties).</param>
            <param name="bufferedProperty">The buffered property to add.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedObject.Reorder">
            <summary>
            Reorders the buffered properties to conform to the required payload order.
            </summary>
            <remarks>
            The required order is: odata.context comes first, odata.removed comes next (for deleted resources),
            then comes odata.type, then all odata.* property annotations
            and finally, we preserve the relative order of custom annotations and data properties.</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedObject.SortBufferedProperties(System.Collections.Generic.IList{Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedProperty})">
            <summary>
            Sort the data properties and property annotations stored for a particular property name.
            </summary>
            <param name="bufferedProperties">The list of buffered properties to sort.</param>
            <returns>The sorted enumerable of buffered properties.</returns>
            <remarks>The sort order is for all odata.* property annotations to come before the data property
            but otherwise preserve the relative order of custom property annotations with regard to the position of the data property.</remarks>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedObject.IsODataInstanceAnnotation(System.String)">
            <summary>
            Checks whether an annotation name is an odata.* annotation.
            </summary>
            <param name="annotationName">The annotation name to check.</param>
            <returns>true if the annotation name represents an odata.* annotation; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedObject.IsODataContextAnnotation(System.String)">
            <summary>
            Checks whether an annotation name is a odata.context annotation.
            </summary>
            <param name="annotationName">The annotation name to check.</param>
            <returns>true if the annotation name represents an odata.context annotation; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedObject.IsODataRemovedAnnotation(System.String)">
            <summary>
            Checks whether an annotation name is a odata.removed annotation.
            </summary>
            <param name="annotationName">The annotation name to check.</param>
            <returns>true if the annotation name represents an odata.removed annotation; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedObject.IsODataTypeAnnotation(System.String)">
            <summary>
            Checks whether an annotation name is a odata.type annotation.
            </summary>
            <param name="annotationName">The annotation name to check.</param>
            <returns>true if the annotation name represents an odata.type annotation; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedObject.IsODataIdAnnotation(System.String)">
            <summary>
            Checks whether an annotation name is a odata.id annotation.
            </summary>
            <param name="annotationName">The annotation name to check.</param>
            <returns>true if the annotation name represents an odata.id annotation; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedObject.IsODataETagAnnotation(System.String)">
            <summary>
            Checks whether an annotation name is a odata.etag annotation.
            </summary>
            <param name="annotationName">The annotation name to check.</param>
            <returns>true if the annotation name represents an odata.etag annotation; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedObject.SortPropertyNames">
            <summary>
            Sorts the property names for an object.
            </summary>
            <returns>The sorted enumerable of property names.</returns>
            <remarks>The sort order is to put odata.context first, then odata.type, odata.id, and odata.etag, followed by all other odata.* instance annotations.
            For the rest, we preserve the relative order of custom annotations with regard to the data property.
            Note that we choose the position of the first property annotation in cases where no data property for a set of
            property annotations exists.</remarks>
        </member>
        <member name="T:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedProperty">
            <summary>
            A data structure to represent a buffered property.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedProperty.PropertyAnnotationName">
            <summary>
            The annotation name for this buffered property (either instance annotation or property annotation).
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedProperty.PropertyNameNode">
            <summary>
            The node in the linked list of buffered nodes that represents the property name of the buffered property.
            </summary>
        </member>
        <member name="P:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedProperty.EndOfPropertyValueNode">
            <summary>
            The node in the linked list of buffered nodes that represents the end of the property value of the buffered property.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLight.ReorderingJsonReader.BufferedProperty.InsertAfter(Microsoft.OData.Json.BufferingJsonReader.BufferedNode)">
            <summary>
            Reorders the buffered property to be positioned after the <paramref name="node"/> node.
            </summary>
            <param name="node">The node after which to insert this buffered property.</param>
        </member>
        <member name="T:Microsoft.OData.Json.BufferingJsonReader">
            <summary>
            Reader for the JSON format (http://www.json.org) that supports look-ahead.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.BufferingJsonReader.bufferedNodesHead">
            <summary>The (possibly empty) list of buffered nodes.</summary>
            <remarks>This is a circular linked list where this field points to the first item of the list.</remarks>
        </member>
        <member name="F:Microsoft.OData.Json.BufferingJsonReader.currentBufferedNode">
            <summary>
            A pointer into the bufferedNodes list to track the most recent position of the current buffered node.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.BufferingJsonReader.innerReader">
            <summary>
            The inner JSON reader.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.BufferingJsonReader.maxInnerErrorDepth">
            <summary>
            The maximum number of recursive internalexception objects to allow when reading in-stream errors.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.BufferingJsonReader.inStreamErrorPropertyName">
            <summary>The name of the property that denotes an in-stream error.</summary>
        </member>
        <member name="F:Microsoft.OData.Json.BufferingJsonReader.isBuffering">
            <summary>A flag indicating whether the reader is in buffering mode or not.</summary>
        </member>
        <member name="F:Microsoft.OData.Json.BufferingJsonReader.removeOnNextRead">
            <summary>
            A flag indicating that the last node for non-buffering read was taken from the buffer; we leave the
            node in the buffer until the next Read call.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.BufferingJsonReader.parsingInStreamError">
            <summary>
            Debug flag to ensure we do not re-enter the instance while reading ahead and trying to parse an in-stream error.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.BufferingJsonReader.disableInStreamErrorDetection">
            <summary>
            true if the parser should check for in-stream errors whenever a start-object node is encountered; otherwise false.
            This is set to false for parsing of top-level errors where we don't want the in-stream error detection code to kick in.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.BufferingJsonReader.#ctor(Microsoft.OData.Json.IJsonReader,System.String,System.Int32)">
            <summary>
            Constructor.
            </summary>
            <param name="innerReader">The inner JSON reader.</param>
            <param name="inStreamErrorPropertyName">The name of the property that denotes an in-stream error.</param>
            <param name="maxInnerErrorDepth">The maximum number of recursive internalexception objects to allow when reading in-stream errors.</param>
        </member>
        <member name="P:Microsoft.OData.Json.BufferingJsonReader.NodeType">
            <summary>
            The type of the last node read.
            </summary>
            <remarks>
            Depending on whether buffering is on or off this will return the node type of the last
            buffered read or the node type of the last unbuffered read.
            </remarks>
        </member>
        <member name="P:Microsoft.OData.Json.BufferingJsonReader.Value">
            <summary>
            The value of the last reported node.
            </summary>
            <remarks>
            Depending on whether buffering is on or off this will return the node type of the last
            buffered read or the node type of the last unbuffered read.
            </remarks>
        </member>
        <member name="P:Microsoft.OData.Json.BufferingJsonReader.IsIeee754Compatible">
            <summary>
            if it is IEEE754 compatible
            </summary>
        </member>
        <member name="P:Microsoft.OData.Json.BufferingJsonReader.DisableInStreamErrorDetection">
            <summary>
            true if the parser should check for in-stream errors whenever a start-object node is encountered; otherwise false.
            This is set to false for parsing of top-level errors where we don't want the in-stream error detection code to kick in.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Json.BufferingJsonReader.IsBuffering">
            <summary>
            Flag indicating whether buffering is on or off; debug-only for use in asserts.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.BufferingJsonReader.Read">
            <summary>
            Reads the next node from the input.
            </summary>
            <returns>true if a new node was found, or false if end of input was reached.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.BufferingJsonReader.StartBuffering">
            <summary>
            Puts the reader into the state where it buffers read nodes.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.BufferingJsonReader.BookmarkCurrentPosition">
            <summary>
            Creates a bookmark at the current position of the reader.
            </summary>
            <returns>The bookmark object, it should be treated as a black box by the caller.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.BufferingJsonReader.MoveToBookmark(System.Object)">
            <summary>
            Moves the reader to the bookmarked position.
            </summary>
            <param name="bookmark">The bookmark object to move to.</param>
        </member>
        <member name="M:Microsoft.OData.Json.BufferingJsonReader.StopBuffering">
            <summary>
            Puts the reader into the state where no buffering happen on read.
            Either buffered nodes are consumed or new nodes are read (and not buffered).
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.BufferingJsonReader.StartBufferingAndTryToReadInStreamErrorPropertyValue(Microsoft.OData.ODataError@)">
            <summary>
            A method to detect whether the current property value represents an in-stream error.
            </summary>
            <param name="error">The <see cref="T:Microsoft.OData.ODataError"/> read from the payload.</param>
            <returns>true if the current value is an in-stream error value; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.BufferingJsonReader.ReadInternal">
            <summary>
            Reads the next node from the input. If we have still nodes in the buffer, takes the node
            from there. Otherwise reads a new node from the underlying reader and buffers it (depending on the current mode).
            </summary>
            <returns>true if a new node was found, or false if end of input was reached.</returns>
            <remarks>
            If the parsingInStreamError field is false, the method will read ahead for every StartObject node read from the input to check whether the JSON object
            represents an in-stream error. If so, it throws an <see cref="T:Microsoft.OData.ODataErrorException"/>. If false, this check will not happen.
            This parsingInStremError field is set to true when trying to parse an in-stream error; in normal operation it is false.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.Json.BufferingJsonReader.ProcessObjectValue">
            <summary>
            Called whenever we find a new object value in the payload.
            The base class implementation reads ahead and tries to parse it as an in-stream error payload. If it finds one it will throw it.
            </summary>
            <remarks>
            This method is called when the reader is in the buffering mode and can read ahead (buffering) as much as it needs to
            once it returns the reader will be returned to the position before the method was called.
            The reader is always positioned on a start object when this method is called.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.Json.BufferingJsonReader.ReadNextAndCheckForInStreamError">
            <summary>
            Reads the next node from the JSON reader and if a start-object node is detected starts reading ahead and
            tries to parse an in-stream error.
            </summary>
            <returns>true if a new node was found, or false if end of input was reached.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.BufferingJsonReader.TryReadInStreamErrorPropertyValue(Microsoft.OData.ODataError@)">
            <summary>
            Try to read an error structure from the stream. Return null if no error structure can be read.
            </summary>
            <param name="error">An <see cref="T:Microsoft.OData.ODataError"/> instance that was read from the reader or null if none could be read.</param>
            <returns>true if an <see cref="T:Microsoft.OData.ODataError"/> instance that was read; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.BufferingJsonReader.TryReadInnerErrorPropertyValue(Microsoft.OData.ODataInnerError@,System.Int32)">
            <summary>
            Try to read an inner error property value.
            </summary>
            <param name="innerError">An <see cref="T:Microsoft.OData.ODataInnerError"/> instance that was read from the reader or null if none could be read.</param>
            <param name="recursionDepth">The number of times this method has been called recursively.</param>
            <returns>true if an <see cref="T:Microsoft.OData.ODataInnerError"/> instance that was read; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.BufferingJsonReader.TryReadErrorStringPropertyValue(System.String@)">
            <summary>
            Reads the string value of a property.
            </summary>
            <param name="stringValue">The string value read if the method returns true; otherwise null.</param>
            <returns>true if a string value (or null) was read as property value of the current property; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.BufferingJsonReader.SkipValueInternal">
            <summary>
            Skips over a JSON value (primitive, object or array) while parsing in-stream errors.
            Note that the SkipValue extension method can not be used in this case as this method has to
            access the base instance's NodeType and call ReadInternal.
            </summary>
            <remarks>
            Pre-Condition: JsonNodeType.PrimitiveValue, JsonNodeType.StartArray or JsonNodeType.StartObject
            Post-Condition: JsonNodeType.PrimitiveValue, JsonNodeType.EndArray or JsonNodeType.EndObject
            </remarks>
        </member>
        <member name="M:Microsoft.OData.Json.BufferingJsonReader.RemoveFirstNodeInBuffer">
            <summary>
            Removes the head node from the buffer.
            </summary>
        </member>
        <member name="T:Microsoft.OData.Json.BufferingJsonReader.BufferedNode">
            <summary>
            Private class used to buffer nodes when reading in buffering mode.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.BufferingJsonReader.BufferedNode.nodeType">
            <summary>The type of the node read.</summary>
        </member>
        <member name="F:Microsoft.OData.Json.BufferingJsonReader.BufferedNode.nodeValue">
            <summary>The value of the node.</summary>
        </member>
        <member name="M:Microsoft.OData.Json.BufferingJsonReader.BufferedNode.#ctor(Microsoft.OData.Json.JsonNodeType,System.Object)">
            <summary>
            Constructor.
            </summary>
            <param name="nodeType">The type of the node read.</param>
            <param name="value">The value of the node.</param>
        </member>
        <member name="P:Microsoft.OData.Json.BufferingJsonReader.BufferedNode.NodeType">
            <summary>
            The type of the node read.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Json.BufferingJsonReader.BufferedNode.Value">
            <summary>
            The value of the node.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Json.BufferingJsonReader.BufferedNode.Previous">
            <summary>
            The previous node in the list of nodes.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Json.BufferingJsonReader.BufferedNode.Next">
            <summary>
            The next node in the list of nodes.
            </summary>
        </member>
        <member name="T:Microsoft.OData.Json.DefaultJsonWriterFactory">
            <summary>
            Default JSON writer factory
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.DefaultJsonWriterFactory.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.OData.Json.DefaultJsonWriterFactory" />.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.DefaultJsonWriterFactory.#ctor(Microsoft.OData.Json.ODataStringEscapeOption)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.OData.Json.DefaultJsonWriterFactory" />.
            </summary>
            <param name="stringEscapeOption">The string escape option.</param>
        </member>
        <member name="M:Microsoft.OData.Json.DefaultJsonWriterFactory.CreateJsonWriter(System.IO.TextWriter,System.Boolean)">
            <summary>
            Creates a new JSON writer of <see cref="T:Microsoft.OData.Json.IJsonWriter"/>.
            </summary>
            <param name="textWriter">Writer to which text needs to be written.</param>
            <param name="isIeee754Compatible">True if it is IEEE754Compatible.</param>
            <returns>The JSON writer created.</returns>
        </member>
        <member name="T:Microsoft.OData.Json.GeoJsonWriterAdapter">
            <summary>
            Convert writer interface from IJsonWriter to IGeoJsonWriter.
            This enables writer instance to be passed to Spatial to boost writing performance.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.GeoJsonWriterAdapter.writer">
            <summary>
            Inner writer of interface IJsonWriter.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.GeoJsonWriterAdapter.#ctor(Microsoft.OData.Json.IJsonWriter)">
            <summary>
            Constructor (only accessible from OData.Core
            </summary>
            <param name="writer">Inner writer of interface IJsonWriter.</param>
        </member>
        <member name="M:Microsoft.OData.Json.GeoJsonWriterAdapter.Microsoft#Spatial#IGeoJsonWriter#StartObjectScope">
            <summary>
            Start the object scope.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.GeoJsonWriterAdapter.Microsoft#Spatial#IGeoJsonWriter#EndObjectScope">
            <summary>
            End the current object scope.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.GeoJsonWriterAdapter.Microsoft#Spatial#IGeoJsonWriter#StartArrayScope">
            <summary>
            Start the array scope.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.GeoJsonWriterAdapter.Microsoft#Spatial#IGeoJsonWriter#EndArrayScope">
            <summary>
            End the current array scope.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.GeoJsonWriterAdapter.Microsoft#Spatial#IGeoJsonWriter#AddPropertyName(System.String)">
            <summary>
            Add a property name to the current json object.
            </summary>
            <param name="name">The name to add.</param>
        </member>
        <member name="M:Microsoft.OData.Json.GeoJsonWriterAdapter.Microsoft#Spatial#IGeoJsonWriter#AddValue(System.Double)">
            <summary>
            Add a value to the current json scope.
            </summary>
            <param name="value">The value to add.</param>
        </member>
        <member name="M:Microsoft.OData.Json.GeoJsonWriterAdapter.Microsoft#Spatial#IGeoJsonWriter#AddValue(System.String)">
            <summary>
            Add a value to the current json scope.
            </summary>
            <param name="value">The value to add.</param>
        </member>
        <member name="T:Microsoft.OData.Json.IJsonReader">
            <summary>
            Interface for a class that can read arbitrary JSON.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Json.IJsonReader.Value">
            <summary>
            The value of the last reported node.
            </summary>
            <remarks>This is non-null only if the last node was a PrimitiveValue or Property.
            If the last node is a PrimitiveValue this property returns the value:
            - null if the null token was found.
            - boolean if the true or false token was found.
            - string if a string token was found.
            - DateTime if a string token formatted as DateTime was found.
            - Int32 if a number which fits into the Int32 was found.
            - Double if a number which doesn't fit into Int32 was found.
            If the last node is a Property this property returns a string which is the name of the property.
            </remarks>
        </member>
        <member name="P:Microsoft.OData.Json.IJsonReader.NodeType">
            <summary>
            The type of the last node read.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Json.IJsonReader.IsIeee754Compatible">
            <summary>
            if it is IEEE754 compatible
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonReader.Read">
            <summary>
            Reads the next node from the input.
            </summary>
            <returns>true if a new node was found, or false if end of input was reached.</returns>
        </member>
        <member name="T:Microsoft.OData.Json.IJsonReaderFactory">
            <summary>
            Interface of the factory to create JSON readers.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonReaderFactory.CreateJsonReader(System.IO.TextReader,System.Boolean)">
            <summary>
            Creates a new JSON reader of <see cref="T:Microsoft.OData.Json.IJsonReader"/>.
            </summary>
            <param name="textReader">The text reader to read input characters from.</param>
            <param name="isIeee754Compatible">True if it is IEEE754Compatible.</param>
            <returns>The JSON reader created.</returns>
        </member>
        <member name="T:Microsoft.OData.Json.IJsonWriter">
            <summary>
            Interface for a class that can write arbitrary JSON.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.StartPaddingFunctionScope">
            <summary>
            Start the padding function scope.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.EndPaddingFunctionScope">
            <summary>
            End the padding function scope.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.StartObjectScope">
            <summary>
            Start the object scope.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.EndObjectScope">
            <summary>
            End the current object scope.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.StartArrayScope">
            <summary>
            Start the array scope.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.EndArrayScope">
            <summary>
            End the current array scope.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.WriteName(System.String)">
            <summary>
            Write the name for the object property.
            </summary>
            <param name="name">Name of the object property.</param>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.WritePaddingFunctionName(System.String)">
            <summary>
            Writes a function name for JSON padding.
            </summary>
            <param name="functionName">Name of the padding function to write.</param>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.WriteValue(System.Boolean)">
            <summary>
            Write a boolean value.
            </summary>
            <param name="value">Boolean value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.WriteValue(System.Int32)">
            <summary>
            Write an integer value.
            </summary>
            <param name="value">Integer value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.WriteValue(System.Single)">
            <summary>
            Write a float value.
            </summary>
            <param name="value">Float value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.WriteValue(System.Int16)">
            <summary>
            Write a short value.
            </summary>
            <param name="value">Short value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.WriteValue(System.Int64)">
            <summary>
            Write a long value.
            </summary>
            <param name="value">Long value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.WriteValue(System.Double)">
            <summary>
            Write a double value.
            </summary>
            <param name="value">Double value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.WriteValue(System.Guid)">
            <summary>
            Write a Guid value.
            </summary>
            <param name="value">Guid value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.WriteValue(System.Decimal)">
            <summary>
            Write a decimal value
            </summary>
            <param name="value">Decimal value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.WriteValue(System.DateTimeOffset)">
            <summary>
            Writes a DateTimeOffset value
            </summary>
            <param name="value">DateTimeOffset value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.WriteValue(System.TimeSpan)">
            <summary>
            Writes a TimeSpan value
            </summary>
            <param name="value">TimeSpan value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.WriteValue(System.Byte)">
            <summary>
            Write a byte value.
            </summary>
            <param name="value">Byte value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.WriteValue(System.SByte)">
            <summary>
            Write an sbyte value.
            </summary>
            <param name="value">SByte value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.WriteValue(System.String)">
            <summary>
            Write a string value.
            </summary>
            <param name="value">String value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.WriteValue(System.Byte[])">
            <summary>
            Write a byte array.
            </summary>
            <param name="value">Byte array to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.WriteValue(Microsoft.OData.Edm.Date)">
            <summary>
            Write a Date value
            </summary>
            <param name="value">Date value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.WriteValue(Microsoft.OData.Edm.TimeOfDay)">
            <summary>
            Write a TimeOfDay value
            </summary>
            <param name="value">TimeOfDay value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.WriteRawValue(System.String)">
            <summary>
            Write a raw value.
            </summary>
            <param name="rawValue">Raw value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriter.Flush">
            <summary>
            Clears all buffers for the current writer.
            </summary>
        </member>
        <member name="T:Microsoft.OData.Json.IJsonWriterFactory">
            <summary>
            Interface of the factory to create JSON writers.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.IJsonWriterFactory.CreateJsonWriter(System.IO.TextWriter,System.Boolean)">
            <summary>
            Creates a new JSON writer of <see cref="T:Microsoft.OData.Json.IJsonWriter"/>.
            </summary>
            <param name="textWriter">Writer to which text needs to be written.</param>
            <param name="isIeee754Compatible">True if it is IEEE754Compatible.</param>
            <returns>The JSON writer created.</returns>
        </member>
        <member name="T:Microsoft.OData.Json.IODataJsonOperationsDeserializerContext">
            <summary>
            Interface representing a context necessary for reading JSON operations values.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Json.IODataJsonOperationsDeserializerContext.JsonReader">
            <summary>
            The JSON reader to read the operations value from.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.IODataJsonOperationsDeserializerContext.ProcessUriFromPayload(System.String)">
            <summary>
            Given a URI from the payload, this method will try to make it absolute, or fail otherwise.
            </summary>
            <param name="uriFromPayload">The URI string from the payload to process.</param>
            <returns>An absolute URI to report.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.IODataJsonOperationsDeserializerContext.AddActionToResource(Microsoft.OData.ODataAction)">
            <summary>
            Adds the specified action to the current resource.
            </summary>
            <param name="action">The action which is fully populated with the data from the payload.</param>
        </member>
        <member name="M:Microsoft.OData.Json.IODataJsonOperationsDeserializerContext.AddFunctionToResource(Microsoft.OData.ODataFunction)">
            <summary>
            Adds the specified function to the current resource.
            </summary>
            <param name="function">The function which is fully populated with the data from the payload.</param>
        </member>
        <member name="T:Microsoft.OData.Json.JsonConstants">
            <summary>
            Constants for the JSON format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.ODataActionsMetadataName">
            <summary>"actions" header for resource metadata.</summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.ODataFunctionsMetadataName">
            <summary>"functions" header for resource metadata.</summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.ODataOperationTitleName">
            <summary>"title" header for "actions" and "functions" metadata.</summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.ODataOperationMetadataName">
            <summary>"metadata" header for "actions" and "functions" metadata.</summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.ODataOperationTargetName">
            <summary>"target" header for "actions" and "functions" metadata.</summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.ODataErrorName">
            <summary>
            "error" header for the error payload
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.ODataErrorCodeName">
            <summary>
            "code" header for the error code property
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.ODataErrorMessageName">
            <summary>
            "message" header for the error message property
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.ODataErrorTargetName">
            <summary>
            "target" header for the error message property
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.ODataErrorDetailsName">
            <summary>
            "details" header for the inner error property
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.ODataErrorInnerErrorName">
            <summary>
            "innererror" header for the inner error property
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.ODataErrorInnerErrorMessageName">
            <summary>
            "message" header for an inner error (for Astoria compatibility)
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.ODataErrorInnerErrorTypeNameName">
            <summary>
            "typename" header for an inner error (for Astoria compatibility)
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.ODataErrorInnerErrorStackTraceName">
            <summary>
            "stacktrace" header for an inner error (for Astoria compatibility)
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.ODataErrorInnerErrorInnerErrorName">
            <summary>
            "internalexception" header for an inner, inner error property (for Astoria compatibility)
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.ODataDateTimeFormat">
            <summary>
            JSON datetime format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.ODataDateTimeOffsetFormat">
            <summary>
            JSON datetime offset format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.ODataDateTimeOffsetPlusSign">
            <summary>
            A plus sign for the date time offset format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.ODataServiceDocumentEntitySetsName">
            <summary>
            The fixed property name for the entity sets array in a service document payload.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.JsonTrueLiteral">
            <summary>
            The true value literal.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.JsonFalseLiteral">
            <summary>
            The false value literal.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.JsonNullLiteral">
            <summary>
            The null value literal.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.StartObjectScope">
            <summary>
            Character which starts the object scope.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.EndObjectScope">
            <summary>
            Character which ends the object scope.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.StartArrayScope">
            <summary>
            Character which starts the array scope.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.EndArrayScope">
            <summary>
            Character which ends the array scope.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.StartPaddingFunctionScope">
            <summary>
            "(" Json Padding Function scope open parens.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.EndPaddingFunctionScope">
            <summary>
            ")" Json Padding Function scope close parens.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.ObjectMemberSeparator">
            <summary>
            The separator between object members.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.ArrayElementSeparator">
            <summary>
            The separator between array elements.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.NameValueSeparator">
            <summary>
            The separator between the name and the value.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonConstants.QuoteCharacter">
            <summary>
            The quote character.
            </summary>
        </member>
        <member name="T:Microsoft.OData.Json.JsonNodeType">
            <summary>
            Enumeration of all JSON node type.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonNodeType.None">
            <summary>
            No node - invalid value.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonNodeType.StartObject">
            <summary>
            Start of JSON object record, the { character.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonNodeType.EndObject">
            <summary>
            End of JSON object record, the } character.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonNodeType.StartArray">
            <summary>
            Start of JSON array, the [ character.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonNodeType.EndArray">
            <summary>
            End of JSON array, the ] character.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonNodeType.Property">
            <summary>
            Property, the name of the property (the value will be reported as a separate node or nodes)
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonNodeType.PrimitiveValue">
            <summary>
            Primitive value, that is either null, true, false, number or string.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonNodeType.EndOfInput">
            <summary>
            End of input reached.
            </summary>
        </member>
        <member name="T:Microsoft.OData.Json.JsonReader">
            <summary>
            Reader for the JSON format. http://www.json.org
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonReader.InitialCharacterBufferSize">
            <summary>
            The initial size of the buffer of characters.
            </summary>
            <remarks>
            4K (page size) divided by the size of a single character 2 and a little less
            so that array structures also fit into that page.
            The goal is for the entire buffer to fit into one page so that we don't cause
            too many L1 cache misses.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.Json.JsonReader.MaxCharacterCountToMove">
            <summary>
            Maximum number of characters to move in the buffer. If the current token size is bigger than this, we will allocate a larger buffer.
            </summary>
            <remarks>This threshold is copied from the XmlReader implementation.</remarks>
        </member>
        <member name="F:Microsoft.OData.Json.JsonReader.reader">
            <summary>
            The text reader to read input characters from.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonReader.isIeee754Compatible">
            <summary>
            If it is IEEE754Compatible, read quoted string for INT64 and decimal;
            otherwise read number directly.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonReader.scopes">
            <summary>
            Stack of scopes.
            </summary>
            <remarks>
            At the beginning the Root scope is pushed to the stack and stays there for the entire parsing
              (so that we don't have to check for empty stack and also to track the number of root-level values)
            Each time a new object or array is started the Object or Array scope is pushed to the stack.
            If a property inside an Object is found, the Property scope is pushed to the stack.
            The Property is popped once we find the value for the property.
            The Object and Array scopes are popped when their end is found.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.Json.JsonReader.allowAnnotations">
            <summary>true if annotations are allowed and thus the reader has to
            accept more characters in property names than we do normally; otherwise false.</summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonReader.endOfInputReached">
            <summary>
            End of input from the reader was already reached.
            </summary>
            <remarks>This is used to avoid calling Read on the text reader multiple times
            even though it already reported the end of input.</remarks>
        </member>
        <member name="F:Microsoft.OData.Json.JsonReader.characterBuffer">
            <summary>
            Buffer of characters from the input.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonReader.storedCharacterCount">
            <summary>
            Number of characters available in the input buffer.
            </summary>
            <remarks>This can have value of 0 to characterBuffer.Length.</remarks>
        </member>
        <member name="F:Microsoft.OData.Json.JsonReader.tokenStartIndex">
            <summary>
            Index into the characterBuffer which points to the first character
            of the token being currently processed (while in the Read method)
            or of the next token to be processed (while in the caller code).
            </summary>
            <remarks>This can have value from 0 to storedCharacterCount.</remarks>
        </member>
        <member name="F:Microsoft.OData.Json.JsonReader.nodeType">
            <summary>
            The last reported node type.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonReader.nodeValue">
            <summary>
            The value of the last reported node.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonReader.stringValueBuilder">
            <summary>
            Cached string builder to be used when constructing string values (needed to resolve escape sequences).
            </summary>
            <remarks>The string builder instance is cached to avoid excessive allocation when many string values with escape sequences
            are found in the payload.</remarks>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReader.#ctor(System.IO.TextReader,System.Boolean)">
            <summary>
            Constructor.
            </summary>
            <param name="reader">The text reader to read input characters from.</param>
            <param name="isIeee754Compatible">If it is isIeee754Compatible</param>
        </member>
        <member name="T:Microsoft.OData.Json.JsonReader.ScopeType">
            <summary>
            Various scope types for Json writer.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonReader.ScopeType.Root">
            <summary>
            Root scope - the top-level of the JSON content.
            </summary>
            <remarks>This scope is only once on the stack and that is at the bottom, always.
            It's used to track the fact that only one top-level value is allowed.</remarks>
        </member>
        <member name="F:Microsoft.OData.Json.JsonReader.ScopeType.Array">
            <summary>
            Array scope - inside an array.
            </summary>
            <remarks>This scope is pushed when [ is found and is active before the first and between the elements in the array.
            Between the elements it's active when the parser is in front of the comma, the parser is never after comma as then
            it always immediately processed the next token.</remarks>
        </member>
        <member name="F:Microsoft.OData.Json.JsonReader.ScopeType.Object">
            <summary>
            Object scope - inside the object (but not in a property value).
            </summary>
            <remarks>This scope is pushed when { is found and is active before the first and between the properties in the object.
            Between the properties it's active when the parser is in front of the comma, the parser is never after comma as then
            it always immediately processed the next token.</remarks>
        </member>
        <member name="F:Microsoft.OData.Json.JsonReader.ScopeType.Property">
            <summary>
            Property scope - after the property name and colon and throughout the value.
            </summary>
            <remarks>This scope is pushed when a property name and colon is found.
            The scope remains on the stack while the property value is parsed, but once the property value ends, it's immediately removed
            so that it doesn't appear on the stack after the value (ever).</remarks>
        </member>
        <member name="P:Microsoft.OData.Json.JsonReader.Value">
            <summary>
            The value of the last reported node.
            </summary>
            <remarks>This is non-null only if the last node was a PrimitiveValue or Property.
            If the last node is a PrimitiveValue this property returns the value:
            - null if the null token was found.
            - boolean if the true or false token was found.
            - string if a string token was found.
            - DateTime if a string token formatted as DateTime was found.
            - Int32 if a number which fits into the Int32 was found.
            - Double if a number which doesn't fit into Int32 was found.
            If the last node is a Property this property returns a string which is the name of the property.
            </remarks>
        </member>
        <member name="P:Microsoft.OData.Json.JsonReader.NodeType">
            <summary>
            The type of the last node read.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Json.JsonReader.IsIeee754Compatible">
            <summary>
            if it is IEEE754 compatible
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReader.Read">
            <summary>
            Reads the next node from the input.
            </summary>
            <returns>true if a new node was found, or false if end of input was reached.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReader.IsWhitespaceCharacter(System.Char)">
            <summary>
            Determines if a given character is a whitespace character.
            </summary>
            <param name="character">The character to test.</param>
            <returns>true if the <paramref name="character"/> is a whitespace; false otherwise.</returns>
            <remarks>Note that the behavior of this method is different from Char.IsWhitespace, since that method
            returns true for all characters defined as whitespace by the Unicode spec (which is a lot of characters),
            this one on the other hand recognizes just the whitespaces as defined by the JSON spec.</remarks>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReader.ParseValue">
            <summary>
            Parses a "value", that is an array, object or primitive value.
            </summary>
            <returns>The node type to report to the user.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReader.ParseProperty">
            <summary>
            Parses a property name and the colon after it.
            </summary>
            <returns>The node type to report to the user.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReader.ParseStringPrimitiveValue">
            <summary>
            Parses a primitive string value.
            </summary>
            <returns>The value of the string primitive value.</returns>
            <remarks>
            Assumes that the current token position points to the opening quote.
            Note that the string parsing can never end with EndOfInput, since we're already seen the quote.
            So it can either return a string succesfully or fail.</remarks>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReader.ParseStringPrimitiveValue(System.Boolean@)">
            <summary>
            Parses a primitive string value.
            </summary>
            <param name="hasLeadingBackslash">Set to true if the first character in the string was a backslash. This is used when parsing DateTime values
            since they must start with an escaped slash character (\/).</param>
            <returns>The value of the string primitive value.</returns>
            <remarks>
            Assumes that the current token position points to the opening quote.
            Note that the string parsing can never end with EndOfInput, since we're already seen the quote.
            So it can either return a string succesfully or fail.</remarks>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReader.ParseNullPrimitiveValue">
            <summary>
            Parses the null primitive value.
            </summary>
            <returns>Always returns null if successful. Otherwise throws.</returns>
            <remarks>Assumes that the current token position points to the 'n' character.</remarks>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReader.ParseBooleanPrimitiveValue">
            <summary>
            Parses the true or false primitive values.
            </summary>
            <returns>true of false boolean value if successful. Otherwise throws.</returns>
            <remarks>Assumes that the current token position points to the 't' or 'f' character.</remarks>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReader.ParseNumberPrimitiveValue">
            <summary>
            Parses the number primitive values.
            </summary>
            <returns>Parse value to Int32, Decimal or Double. Otherwise throws.</returns>
            <remarks>Assumes that the current token position points to the first character of the number, so either digit, dot or dash.</remarks>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReader.ParseName">
            <summary>
            Parses a name token.
            </summary>
            <returns>The value of the name token.</returns>
            <remarks>Name tokens are (for backward compat reasons) either
            - string value quoted with double quotes.
            - string value quoted with single quotes.
            - sequence of letters, digits, underscores and dollar signs (without quoted and in any order).</remarks>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReader.EndOfInput">
            <summary>
            Called when end of input is reached.
            </summary>
            <returns>Always returns false, used for easy readability of the callers.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReader.PushScope(Microsoft.OData.Json.JsonReader.ScopeType)">
            <summary>
            Creates a new scope of type <paramref name="newScopeType"/> and pushes the stack.
            </summary>
            <param name="newScopeType">The scope type to push.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReader.PopScope">
            <summary>
            Pops a scope from the stack.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReader.TryPopPropertyScope">
            <summary>
            Pops a property scope if it's present on the stack.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReader.SkipWhitespaces">
            <summary>
            Skips all whitespace characters in the input.
            </summary>
            <returns>true if a non-whitespace character was found in which case the tokenStartIndex is pointing at that character.
            false if there are no non-whitespace characters left in the input.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReader.EnsureAvailableCharacters(System.Int32)">
            <summary>
            Ensures that a specified number of characters after the token start is available in the buffer.
            </summary>
            <param name="characterCountAfterTokenStart">The number of character after the token to make available.</param>
            <returns>true if at least the required number of characters is available; false if end of input was reached.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReader.ConsumeTokenToString(System.Int32)">
            <summary>
            Consumes the <paramref name="characterCount"/> characters starting at the start of the token
            and returns them as a string.
            </summary>
            <param name="characterCount">The number of characters after the token start to consume.</param>
            <returns>The string value of the consumed token.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReader.ReadInput">
            <summary>
            Reads more characters from the input.
            </summary>
            <returns>true if more characters are available; false if end of input was reached.</returns>
            <remarks>This may move characters in the characterBuffer, so after this is called
            all indeces to the characterBuffer are invalid except for tokenStartIndex.</remarks>
        </member>
        <member name="T:Microsoft.OData.Json.JsonReader.Scope">
            <summary>
            Class representing scope information.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonReader.Scope.type">
            <summary>
            The type of the scope.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReader.Scope.#ctor(Microsoft.OData.Json.JsonReader.ScopeType)">
            <summary>
            Constructor.
            </summary>
            <param name="type">The type of the scope.</param>
        </member>
        <member name="P:Microsoft.OData.Json.JsonReader.Scope.ValueCount">
            <summary>
            Get/Set the number of values found under the current scope.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Json.JsonReader.Scope.Type">
            <summary>
            Gets the scope type for this scope.
            </summary>
        </member>
        <member name="T:Microsoft.OData.Json.JsonReaderExtensions">
            <summary>
            Extension methods for the JSON reader.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReaderExtensions.ReadStartObject(Microsoft.OData.Json.IJsonReader)">
            <summary>
            Reads the next node from the <paramref name="jsonReader"/> and verifies that it is a StartObject node.
            </summary>
            <param name="jsonReader">The <see cref="T:Microsoft.OData.Json.JsonReader"/> to read from.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReaderExtensions.ReadEndObject(Microsoft.OData.Json.IJsonReader)">
            <summary>
            Reads the next node from the <paramref name="jsonReader"/> and verifies that it is an EndObject node.
            </summary>
            <param name="jsonReader">The <see cref="T:Microsoft.OData.Json.JsonReader"/> to read from.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReaderExtensions.ReadStartArray(Microsoft.OData.Json.IJsonReader)">
            <summary>
            Reads the next node from the <paramref name="jsonReader"/> and verifies that it is an StartArray node.
            </summary>
            <param name="jsonReader">The <see cref="T:Microsoft.OData.Json.JsonReader"/> to read from.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReaderExtensions.ReadEndArray(Microsoft.OData.Json.IJsonReader)">
            <summary>
            Reads the next node from the <paramref name="jsonReader"/> and verifies that it is an EndArray node.
            </summary>
            <param name="jsonReader">The <see cref="T:Microsoft.OData.Json.JsonReader"/> to read from.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReaderExtensions.GetPropertyName(Microsoft.OData.Json.IJsonReader)">
            <summary>
            Verifies that the current node is a property node and returns the property name.
            </summary>
            <param name="jsonReader">The <see cref="T:Microsoft.OData.Json.JsonReader"/> to read from.</param>
            <returns>The property name of the current property node.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReaderExtensions.ReadPropertyName(Microsoft.OData.Json.IJsonReader)">
            <summary>
            Reads the next node from the <paramref name="jsonReader"/>, verifies that it is a Property node and returns the property name.
            </summary>
            <param name="jsonReader">The <see cref="T:Microsoft.OData.Json.JsonReader"/> to read from.</param>
            <returns>The property name of the property node read.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReaderExtensions.ReadPrimitiveValue(Microsoft.OData.Json.IJsonReader)">
            <summary>
            Reads the next node from the <paramref name="jsonReader"/> and verifies that it is a PrimitiveValue node.
            </summary>
            <param name="jsonReader">The <see cref="T:Microsoft.OData.Json.JsonReader"/> to read from.</param>
            <returns>The primitive value read from the reader.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReaderExtensions.ReadStringValue(Microsoft.OData.Json.IJsonReader)">
            <summary>
            Reads the next node from the <paramref name="jsonReader"/> and verifies that it is a PrimitiveValue node of type string.
            </summary>
            <param name="jsonReader">The <see cref="T:Microsoft.OData.Json.JsonReader"/> to read from.</param>
            <returns>The string value read from the reader; throws an exception if no string value could be read.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReaderExtensions.ReadUriValue(Microsoft.OData.Json.IJsonReader)">
            <summary>
            Reads the next node from the <paramref name="jsonReader"/> as a URI and verifies that it is a PrimitiveValue node of type string.
            </summary>
            <param name="jsonReader">The <see cref="T:Microsoft.OData.Json.JsonReader"/> to read from.</param>
            <returns>The string value read from the reader as a URI; throws an exception if no string value could be read.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReaderExtensions.ReadStringValue(Microsoft.OData.Json.IJsonReader,System.String)">
            <summary>
            Reads the next node from the <paramref name="jsonReader"/> and verifies that it is a PrimitiveValue node of type string.
            </summary>
            <param name="jsonReader">The <see cref="T:Microsoft.OData.Json.JsonReader"/> to read from.</param>
            <param name="propertyName">The name of the property for which to read the string; used in error messages only.</param>
            <returns>The string value read from the reader; throws an exception if no string value could be read.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReaderExtensions.ReadDoubleValue(Microsoft.OData.Json.IJsonReader)">
            <summary>
            Reads the next node from the <paramref name="jsonReader"/> and verifies that it is a PrimitiveValue node of type double.
            </summary>
            <param name="jsonReader">The <see cref="T:Microsoft.OData.Json.JsonReader"/> to read from.</param>
            <returns>The double value read from the reader; throws an exception if no double value could be read.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReaderExtensions.SkipValue(Microsoft.OData.Json.IJsonReader)">
            <summary>
            Skips over a JSON value (primitive, object or array).
            </summary>
            <param name="jsonReader">The <see cref="T:Microsoft.OData.Json.JsonReader"/> to read from.</param>
            <remarks>
            Pre-Condition: JsonNodeType.PrimitiveValue, JsonNodeType.StartArray or JsonNodeType.StartObject
            Post-Condition: JsonNodeType.PrimitiveValue, JsonNodeType.EndArray or JsonNodeType.EndObject
            </remarks>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReaderExtensions.SkipValue(Microsoft.OData.Json.IJsonReader,System.Text.StringBuilder)">
            <summary>
            Skips over a JSON value (primitive, object or array), and append raw string to StringBuilder.
            </summary>
            <param name="jsonReader">The <see cref="T:Microsoft.OData.Json.JsonReader"/> to read from.</param>
            <param name="jsonRawValueStringBuilder">The StringBuilder to receive JSON raw string.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReaderExtensions.ReadNext(Microsoft.OData.Json.IJsonReader)">
            <summary>
            Reads the next node. Use this instead of the direct call to Read since this asserts that there actually is a next node.
            </summary>
            <param name="jsonReader">The <see cref="T:Microsoft.OData.Json.JsonReader"/> to read from.</param>
            <returns>The node type of the node that reader is positioned on after reading.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReaderExtensions.IsOnValueNode(Microsoft.OData.Json.IJsonReader)">
            <summary>
            Determines if the reader is on a value node.
            </summary>
            <param name="jsonReader">The reader to inspect.</param>
            <returns>true if the reader is on PrimitiveValue, StartObject or StartArray node, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReaderExtensions.AssertNotBuffering(Microsoft.OData.Json.BufferingJsonReader)">
            <summary>
            Asserts that the reader is not buffer.
            </summary>
            <param name="bufferedJsonReader">The <see cref="T:Microsoft.OData.Json.BufferingJsonReader"/> to read from.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReaderExtensions.AssertBuffering(Microsoft.OData.Json.BufferingJsonReader)">
            <summary>
            Asserts that the reader is buffer.
            </summary>
            <param name="bufferedJsonReader">The <see cref="T:Microsoft.OData.Json.BufferingJsonReader"/> to read from.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReaderExtensions.CreateException(System.String)">
            <summary>
            Creates an exception instance that is appropriate for the current library being built.
            Allows the code in this class to be shared between ODataLib and the common spatial library.
            </summary>
            <param name="exceptionMessage">String to use for the exception message.</param>
            <returns>Exception to be thrown.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReaderExtensions.ReadNext(Microsoft.OData.Json.IJsonReader,Microsoft.OData.Json.JsonNodeType)">
            <summary>
            Reads the next node from the <paramref name="jsonReader"/> and verifies that it is of the expected node type.
            </summary>
            <param name="jsonReader">The <see cref="T:Microsoft.OData.Json.JsonReader"/> to read from.</param>
            <param name="expectedNodeType">The expected <see cref="T:Microsoft.OData.Json.JsonNodeType"/> of the read node.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonReaderExtensions.ValidateNodeType(Microsoft.OData.Json.IJsonReader,Microsoft.OData.Json.JsonNodeType)">
            <summary>
            Validates that the reader is positioned on the specified node type.
            </summary>
            <param name="jsonReader">The <see cref="T:Microsoft.OData.Json.JsonReader"/> to use.</param>
            <param name="expectedNodeType">The expected node type.</param>
        </member>
        <member name="T:Microsoft.OData.Json.JsonSharedUtils">
            <summary>
            Shared JSON util code for ODataLib and Server.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.JsonSharedUtils.IsDoubleValueSerializedAsString(System.Double)">
            <summary>
            Determines if the given double is serialized as a string in JSON.
            </summary>
            <param name="value">The value to check.</param>
            <returns>true if the value should be written as a string, false if should be written as a JSON number.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonSharedUtils.ValueTypeMatchesJsonType(Microsoft.OData.ODataPrimitiveValue,Microsoft.OData.Edm.IEdmPrimitiveTypeReference)">
            <summary>
            Determines if the given primitive value is of a basic type where we can rely on just the JSON representation to convey type information.
            If so, we don't have to write the type name.
            </summary>
            <param name="primitiveValue">The primitive value in question.</param>
            <param name="valueTypeReference">The type of the primitive value.</param>
            <returns>true if the given primitive value is of a basic JSON type, false otherwise.</returns>
        </member>
        <member name="T:Microsoft.OData.Json.JsonValueUtils">
            <summary>
            Provides helper method for converting data values to and from the OData JSON format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonValueUtils.ODataJsonPositiveInfinitySymbol">
            <summary>
            PositiveInfinitySymbol used in OData Json format
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonValueUtils.ODataJsonNegativeInfinitySymbol">
            <summary>
            NegativeInfinitySymbol used in OData Json format
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonValueUtils.ODataNumberFormatInfo">
            <summary>
            The NumberFormatInfo used in OData Json format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonValueUtils.JsonDateTimeMinTimeTicks">
            <summary>
            Const tick value for calculating tick values.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonValueUtils.DoubleIndicatingCharacters">
            <summary>
            Characters which, if found inside a number, indicate that the number is a double when no other type information is available.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonValueUtils.SpecialCharToEscapedStringMap">
            <summary>
            Map of special characters to strings.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.WriteValue(System.IO.TextWriter,System.Boolean)">
            <summary>
            Write a boolean value.
            </summary>
            <param name="writer">The text writer to write the output to.</param>
            <param name="value">The boolean value to write.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.WriteValue(System.IO.TextWriter,System.Int32)">
            <summary>
            Write an integer value.
            </summary>
            <param name="writer">The text writer to write the output to.</param>
            <param name="value">Integer value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.WriteValue(System.IO.TextWriter,System.Single)">
            <summary>
            Write a float value.
            </summary>
            <param name="writer">The text writer to write the output to.</param>
            <param name="value">Float value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.WriteValue(System.IO.TextWriter,System.Int16)">
            <summary>
            Write a short value.
            </summary>
            <param name="writer">The text writer to write the output to.</param>
            <param name="value">Short value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.WriteValue(System.IO.TextWriter,System.Int64)">
            <summary>
            Write a long value.
            </summary>
            <param name="writer">The text writer to write the output to.</param>
            <param name="value">Long value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.WriteValue(System.IO.TextWriter,System.Double)">
            <summary>
            Write a double value.
            </summary>
            <param name="writer">The text writer to write the output to.</param>
            <param name="value">Double value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.WriteValue(System.IO.TextWriter,System.Guid)">
            <summary>
            Write a Guid value.
            </summary>
            <param name="writer">The text writer to write the output to.</param>
            <param name="value">Guid value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.WriteValue(System.IO.TextWriter,System.Decimal)">
            <summary>
            Write a decimal value
            </summary>
            <param name="writer">The text writer to write the output to.</param>
            <param name="value">Decimal value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.WriteValue(System.IO.TextWriter,System.DateTimeOffset,Microsoft.OData.ODataJsonDateTimeFormat)">
            <summary>
            Write a DateTimeOffset value.
            </summary>
            <param name="writer">The text writer to write the output to.</param>
            <param name="value">DateTimeOffset value to be written.</param>
            <param name="dateTimeFormat">The format to write out the DateTime value in.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.WriteValue(System.IO.TextWriter,System.TimeSpan)">
            <summary>
            Write a TimeSpan value.
            </summary>
            <param name="writer">The text writer to write the output to.</param>
            <param name="value">TimeSpan value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.WriteValue(System.IO.TextWriter,Microsoft.OData.Edm.TimeOfDay)">
            <summary>
            Write a TimeOfDay value
            </summary>
            <param name="writer">The text writer to write the output to.</param>
            <param name="value">TimeOfDay value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.WriteValue(System.IO.TextWriter,Microsoft.OData.Edm.Date)">
            <summary>
            Write a Date value
            </summary>
            <param name="writer">The text writer to write the output to.</param>
            <param name="value">Date value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.WriteValue(System.IO.TextWriter,System.Byte)">
            <summary>
            Write a byte value.
            </summary>
            <param name="writer">The text writer to write the output to.</param>
            <param name="value">Byte value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.WriteValue(System.IO.TextWriter,System.SByte)">
            <summary>
            Write an sbyte value.
            </summary>
            <param name="writer">The text writer to write the output to.</param>
            <param name="value">SByte value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.WriteValue(System.IO.TextWriter,System.String,Microsoft.OData.Json.ODataStringEscapeOption,System.Char[]@)">
            <summary>
            Write a string value.
            </summary>
            <param name="writer">The text writer to write the output to.</param>
            <param name="value">String value to be written.</param>
            <param name="stringEscapeOption">The string escape option.</param>
            <param name="buffer">Char buffer to use for streaming data</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.WriteValue(System.IO.TextWriter,System.Byte[])">
            <summary>
            Write a byte array.
            </summary>
            <param name="writer">The text writer to write the output to.</param>
            <param name="value">Byte array to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.WriteEscapedJsonString(System.IO.TextWriter,System.String,Microsoft.OData.Json.ODataStringEscapeOption,System.Char[]@)">
            <summary>
            Returns the string value with special characters escaped.
            </summary>
            <param name="writer">The text writer to write the output to.</param>
            <param name="inputString">Input string value.</param>
            <param name="stringEscapeOption">The string escape option.</param>
            <param name="buffer">Char buffer to use for streaming data</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.JsonTicksToDateTimeTicks(System.Int64)">
            <summary>
            Converts the number of ticks from the JSON date time format to the one used in .NET DateTime or DateTimeOffset structure.
            </summary>
            <param name="ticks">The ticks to from the JSON date time format.</param>
            <returns>The ticks to use in the .NET DateTime of DateTimeOffset structure.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.GetEscapedJsonString(System.String)">
            <summary>
            Convert string to Json-formated string with proper escaped special characters.
            Note that the return value is not enclosed by the top level double-quotes.
            </summary>
            <param name="inputString">string that might contain special characters.</param>
            <returns>A string with special characters escaped properly.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.CheckIfStringHasSpecialChars(System.String,Microsoft.OData.Json.ODataStringEscapeOption,System.Int32@)">
            <summary>
            Checks if the string contains special char and returns the first index
            of special char if present.
            </summary>
            <param name="inputString">string that might contain special characters.</param>
            <param name="stringEscapeOption">The string escape option.</param>
            <param name="firstIndex">first index of the special char</param>
            <returns>A value indicating whether the string contains special character</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.InitializeODataNumberFormatInfo">
            <summary>
            Initialize static property ODataNumberFormatInfo.
            </summary>
            <returns>The <see cref="T:System.Globalization.NumberFormatInfo"/> object.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.WriteQuoted(System.IO.TextWriter,System.String)">
            <summary>
            Write the string value with quotes.
            </summary>
            <param name="writer">The text writer to write the output to.</param>
            <param name="text">String value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.DateTimeTicksToJsonTicks(System.Int64)">
            <summary>
            Converts the number of ticks from the .NET DateTime or DateTimeOffset structure to the ticks use in the JSON date time format.
            </summary>
            <param name="ticks">The ticks from the .NET DateTime of DateTimeOffset structure.</param>
            <returns>The ticks to use in the JSON date time format.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.JsonValueUtils.CreateSpecialCharToEscapedStringMap">
            <summary>
            Creates the special character to escaped string map.
            </summary>
            <returns>The map of special characters to the corresponding escaped strings.</returns>
        </member>
        <member name="T:Microsoft.OData.Json.JsonWriter">
            <summary>
            Writer for the JSON format. http://www.json.org
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonWriter.writer">
            <summary>
            Writer to write text into.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonWriter.scopes">
            <summary>
            Scope of the json text - object, array.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonWriter.isIeee754Compatible">
            <summary>
            If it is IEEE754Compatible, write quoted string for INT64 and decimal to prevent data loss;
            otherwise keep number without quotes.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonWriter.stringEscapeOption">
            <summary>
            Gets or sets a value indicating how to escape the string when writing JSON string.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonWriter.buffer">
            <summary>
            The buffer to help with streaming responses.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.#ctor(System.IO.TextWriter,System.Boolean)">
            <summary>
            Creates a new instance of Json writer.
            </summary>
            <param name="writer">Writer to which text needs to be written.</param>
            <param name="isIeee754Compatible">if it is IEEE754Compatible.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.#ctor(System.IO.TextWriter,System.Boolean,Microsoft.OData.Json.ODataStringEscapeOption)">
            <summary>
            Creates a new instance of Json writer.
            </summary>
            <param name="writer">Writer to which text needs to be written.</param>
            <param name="isIeee754Compatible">if it is IEEE754Compatible.</param>
            <param name="stringEscapeOption">Specifies how to escape string.</param>
        </member>
        <member name="T:Microsoft.OData.Json.JsonWriter.ScopeType">
            <summary>
            Various scope types for Json writer.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonWriter.ScopeType.Array">
            <summary>
            Array scope.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonWriter.ScopeType.Object">
            <summary>
            Object scope.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonWriter.ScopeType.Padding">
            <summary>
            JSON padding function scope.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.StartPaddingFunctionScope">
            <summary>
            Start the padding function scope.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.EndPaddingFunctionScope">
            <summary>
            End the padding function scope.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.StartObjectScope">
            <summary>
            Start the object scope.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.EndObjectScope">
            <summary>
            End the current object scope.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.StartArrayScope">
            <summary>
            Start the array scope.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.EndArrayScope">
            <summary>
            End the current array scope.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.WriteName(System.String)">
            <summary>
            Write the name for the object property.
            </summary>
            <param name="name">Name of the object property.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.WritePaddingFunctionName(System.String)">
            <summary>
            Writes a function name for JSON padding.
            </summary>
            <param name="functionName">Name of the padding function to write.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.WriteValue(System.Boolean)">
            <summary>
            Write a boolean value.
            </summary>
            <param name="value">Boolean value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.WriteValue(System.Int32)">
            <summary>
            Write an integer value.
            </summary>
            <param name="value">Integer value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.WriteValue(System.Single)">
            <summary>
            Write a float value.
            </summary>
            <param name="value">Float value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.WriteValue(System.Int16)">
            <summary>
            Write a short value.
            </summary>
            <param name="value">Short value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.WriteValue(System.Int64)">
            <summary>
            Write a long value.
            </summary>
            <param name="value">Long value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.WriteValue(System.Double)">
            <summary>
            Write a double value.
            </summary>
            <param name="value">Double value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.WriteValue(System.Guid)">
            <summary>
            Write a Guid value.
            </summary>
            <param name="value">Guid value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.WriteValue(System.Decimal)">
            <summary>
            Write a decimal value
            </summary>
            <param name="value">Decimal value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.WriteValue(System.DateTimeOffset)">
            <summary>
            Writes a DateTimeOffset value
            </summary>
            <param name="value">DateTimeOffset value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.WriteValue(System.TimeSpan)">
            <summary>
            Writes a TimeSpan value
            </summary>
            <param name="value">TimeSpan value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.WriteValue(Microsoft.OData.Edm.TimeOfDay)">
            <summary>
            Write a Date value
            </summary>
            <param name="value">Date value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.WriteValue(Microsoft.OData.Edm.Date)">
            <summary>
            Write a Date value
            </summary>
            <param name="value">Date value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.WriteValue(System.Byte)">
            <summary>
            Write a byte value.
            </summary>
            <param name="value">Byte value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.WriteValue(System.SByte)">
            <summary>
            Write an sbyte value.
            </summary>
            <param name="value">SByte value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.WriteValue(System.String)">
            <summary>
            Write a string value.
            </summary>
            <param name="value">String value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.WriteValue(System.Byte[])">
            <summary>
            Write a byte array.
            </summary>
            <param name="value">Byte array to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.WriteRawValue(System.String)">
            <summary>
            Write a raw value.
            </summary>
            <param name="rawValue">Raw value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.Flush">
            <summary>
            Clears all buffers for the current writer.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.WriteValueSeparator">
            <summary>
            Writes a separator of a value if it's needed for the next value to be written.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.StartScope(Microsoft.OData.Json.JsonWriter.ScopeType)">
            <summary>
            Start the scope given the scope type.
            </summary>
            <param name="type">The scope type to start.</param>
        </member>
        <member name="T:Microsoft.OData.Json.JsonWriter.Scope">
            <summary>
            Class representing scope information.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.JsonWriter.Scope.type">
            <summary>
            The type of the scope.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriter.Scope.#ctor(Microsoft.OData.Json.JsonWriter.ScopeType)">
            <summary>
            Constructor.
            </summary>
            <param name="type">The type of the scope.</param>
        </member>
        <member name="P:Microsoft.OData.Json.JsonWriter.Scope.StartString">
            <summary>
            What to write at the beginning of this scope.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Json.JsonWriter.Scope.EndString">
            <summary>
            What to write at the end of this scope.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Json.JsonWriter.Scope.ObjectCount">
            <summary>
            Get/Set the object count for this scope.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Json.JsonWriter.Scope.Type">
            <summary>
            Gets the scope type for this scope.
            </summary>
        </member>
        <member name="T:Microsoft.OData.Json.JsonWriterExtensions">
            <summary>
            Extension methods for the JSON writer.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriterExtensions.WriteJsonObjectValue(Microsoft.OData.Json.IJsonWriter,System.Collections.Generic.IDictionary{System.String,System.Object},System.Action{Microsoft.OData.Json.IJsonWriter})">
            <summary>
            Writes the json object value to the <paramref name="jsonWriter"/>.
            </summary>
            <param name="jsonWriter">The <see cref="T:Microsoft.OData.Json.JsonWriter"/> to write to.</param>
            <param name="jsonObjectValue">Writes the given json object value to the underlying json writer.</param>
            <param name="injectPropertyAction">Called when the top-level object is started to possibly inject first property into the object.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriterExtensions.WritePrimitiveValue(Microsoft.OData.Json.IJsonWriter,System.Object)">
            <summary>
            Writes a primitive value.
            </summary>
            <param name="jsonWriter">The <see cref="T:Microsoft.OData.Json.JsonWriter"/> to write to.</param>
            <param name="value">The value to write.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriterExtensions.WriteJsonArrayValue(Microsoft.OData.Json.IJsonWriter,System.Collections.IEnumerable)">
            <summary>
            Writes the json array value.
            </summary>
            <param name="jsonWriter">The <see cref="T:Microsoft.OData.Json.JsonWriter"/> to write to.</param>
            <param name="arrayValue">Writes the json array value to the underlying json writer.</param>
        </member>
        <member name="M:Microsoft.OData.Json.JsonWriterExtensions.WriteJsonValue(Microsoft.OData.Json.IJsonWriter,System.Object)">
            <summary>
            Writes the json value (primitive, IDictionary or IEnumerable) to the underlying json writer.
            </summary>
            <param name="jsonWriter">The <see cref="T:Microsoft.OData.Json.JsonWriter"/> to write to.</param>
            <param name="propertyValue">value to write.</param>
        </member>
        <member name="T:Microsoft.OData.Json.NonIndentedTextWriter">
            <summary>
            Writes text indented as per the indentation level setting
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.NonIndentedTextWriter.#ctor(System.IO.TextWriter)">
            <summary>
            Constructor
            </summary>
            <param name="writer">The underlying writer to wrap.</param>
        </member>
        <member name="M:Microsoft.OData.Json.NonIndentedTextWriter.Write(System.String)">
            <summary>
            Writes the given string value to the underlying writer.
            </summary>
            <param name="s">String value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.NonIndentedTextWriter.Write(System.Char)">
            <summary>
            Writes the given char value to the underlying writer.
            </summary>
            <param name="value">Char value to be written.</param>
        </member>
        <member name="M:Microsoft.OData.Json.NonIndentedTextWriter.WriteLine">
            <summary>
            Writes a new line.
            </summary>
        </member>
        <member name="T:Microsoft.OData.Json.ODataJsonFormat">
            <summary>
            The JsonLight OData format.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.ODataJsonFormat.ToString">
            <summary>
            The text representation - the name of the format.
            </summary>
            <returns>The name of the format.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.ODataJsonFormat.DetectPayloadKind(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Detects the payload kinds supported by this format for the specified message payload.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="settings">Configuration settings of the OData reader.</param>
            <returns>The set of <see cref="T:Microsoft.OData.ODataPayloadKind"/>s that are supported with the specified payload.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.ODataJsonFormat.CreateInputContext(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Creates an instance of the input context for this format.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageReaderSettings">Configuration settings of the OData reader.</param>
            <returns>The newly created input context.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.ODataJsonFormat.CreateOutputContext(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageWriterSettings)">
            <summary>
            Creates an instance of the output context for this format.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageWriterSettings">Configuration settings of the OData writer.</param>
            <returns>The newly created output context.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.ODataJsonFormat.DetectPayloadKindAsync(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Asynchronously detects the payload kinds supported by this format for the specified message payload.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="settings">Configuration settings of the OData reader.</param>
            <returns>A task that when completed returns the set of <see cref="T:Microsoft.OData.ODataPayloadKind"/>s
            that are supported with the specified payload.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.ODataJsonFormat.CreateInputContextAsync(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Asynchronously creates an instance of the input context for this format.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageReaderSettings">Configuration settings of the OData reader.</param>
            <returns>Task which when completed returned the newly created input context.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.ODataJsonFormat.CreateOutputContextAsync(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageWriterSettings)">
            <summary>
            Creates an instance of the output context for this format.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageWriterSettings">Configuration settings of the OData writer.</param>
            <returns>Task which represents the pending create operation.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.ODataJsonFormat.DetectPayloadKindImplementation(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Detects the payload kind(s) from the message stream.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="settings">Configuration settings of the OData reader.</param>
            <returns>An enumerable of zero, one or more payload kinds that were detected from looking at the payload in the message stream.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.ODataJsonFormat.DetectPayloadKindImplementationAsync(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Detects the payload kind(s) from the message stream.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="settings">Configuration settings of the OData reader.</param>
            <returns>An enumerable of zero, one or more payload kinds that were detected from looking at the payload in the message stream.</returns>
        </member>
        <member name="T:Microsoft.OData.Json.ODataJsonReaderCoreUtils">
            <summary>
            Helper methods used by the OData reader for the Verbose JSON and JSON Light formats.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.ODataJsonReaderCoreUtils.ReadSpatialValue(Microsoft.OData.Json.IJsonReader,System.Boolean,Microsoft.OData.ODataInputContext,Microsoft.OData.Edm.IEdmPrimitiveTypeReference,System.Boolean,System.Int32,System.String)">
            <summary>
            Try and parse spatial type from the json payload.
            </summary>
            <param name="jsonReader">The JSON reader to read from.</param>
            <param name="insideJsonObjectValue">true if the reader is positioned on the first property of the value which is a JSON Object
                (or the second property if the first one was odata.type).</param>
            <param name="inputContext">The input context with all the settings.</param>
            <param name="expectedValueTypeReference">Expected edm property type.</param>
            <param name="validateNullValue">true to validate null values; otherwise false.</param>
            <param name="recursionDepth">The recursion depth to start with.</param>
            <param name="propertyName">The name of the property whose value is being read, if applicable (used for error reporting).</param>
            <returns>An instance of the spatial type.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.ODataJsonReaderCoreUtils.TryReadNullValue(Microsoft.OData.Json.IJsonReader,Microsoft.OData.ODataInputContext,Microsoft.OData.Edm.IEdmTypeReference,System.Boolean,System.String,System.Nullable{System.Boolean})">
            <summary>
            Tries to read a null value from the JSON reader.
            </summary>
            <param name="jsonReader">The JSON reader to read from.</param>
            <param name="inputContext">The input context with all the settings.</param>
            <param name="expectedTypeReference">The expected type reference of the value.</param>
            <param name="validateNullValue">true to validate null values; otherwise false.</param>
            <param name="propertyName">The name of the property whose value is being read, if applicable (used for error reporting).</param>
            <param name="isDynamicProperty">Indicates whether the property is dynamic or unknown.</param>
            <returns>true if a null value could be read from the JSON reader; otherwise false.</returns>
            <remarks>If the method detects a null value it will read it (position the reader after the null value);
            otherwise the reader does not move.</remarks>
        </member>
        <member name="M:Microsoft.OData.Json.ODataJsonReaderCoreUtils.ReadObjectValue(Microsoft.OData.Json.IJsonReader,System.Boolean,Microsoft.OData.ODataInputContext,System.Int32)">
            <summary>
            Reads the json object value from the jsonReader
            </summary>
            <param name="jsonReader">Json reader to read payload from the wire.</param>
            <param name="insideJsonObjectValue">true if the reader is positioned on the first property of the value which is a JSON Object
            (or the second property if the first one was odata.type).</param>
            <param name="inputContext">The input context with all the settings.</param>
            <param name="recursionDepth">The recursion depth to start with.</param>
            <returns>an instance of IDictionary containing the spatial value.</returns>
        </member>
        <member name="M:Microsoft.OData.Json.ODataJsonReaderCoreUtils.ReadArrayValue(Microsoft.OData.Json.IJsonReader,Microsoft.OData.ODataInputContext,System.Int32)">
            <summary>
            Read the json array from the reader.
            </summary>
            <param name="jsonReader">JsonReader instance.</param>
            <param name="inputContext">The input context with all the settings.</param>
            <param name="recursionDepth">The recursion depth to start with.</param>
            <returns>a list of json objects.</returns>
        </member>
        <member name="T:Microsoft.OData.Json.ODataJsonWriterUtils">
            <summary>
            Helper methods used by the OData writer for the JSON format.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.ODataJsonWriterUtils.WriteError(Microsoft.OData.Json.IJsonWriter,System.Action{System.Collections.Generic.IEnumerable{Microsoft.OData.ODataInstanceAnnotation}},Microsoft.OData.ODataError,System.Boolean,System.Int32,System.Boolean)">
            <summary>
            Write an error message.
            </summary>
            <param name="jsonWriter">The JSON writer to write the error.</param>
            <param name="writeInstanceAnnotationsDelegate">Action to write the instance annotations.</param>
            <param name="error">The error instance to write.</param>
            <param name="includeDebugInformation">A flag indicating whether error details should be written (in debug mode only) or not.</param>
            <param name="maxInnerErrorDepth">The maximum number of nested inner errors to allow.</param>
            <param name="writingJsonLight">true if we're writing JSON lite, false if we're writing verbose JSON.</param>
        </member>
        <member name="M:Microsoft.OData.Json.ODataJsonWriterUtils.StartJsonPaddingIfRequired(Microsoft.OData.Json.IJsonWriter,Microsoft.OData.ODataMessageWriterSettings)">
            <summary>
            Will write the function's name and start the JSONP scope if we are writing a response and the
            JSONP function name is not null or empty.
            </summary>
            <param name="jsonWriter">JsonWriter to write to.</param>
            <param name="settings">Writer settings.</param>
        </member>
        <member name="M:Microsoft.OData.Json.ODataJsonWriterUtils.EndJsonPaddingIfRequired(Microsoft.OData.Json.IJsonWriter,Microsoft.OData.ODataMessageWriterSettings)">
            <summary>
            If we are writing a response and the given Json Padding function name is not null or empty
            this function will close the JSONP scope.
            </summary>
            <param name="jsonWriter">JsonWriter to write to.</param>
            <param name="settings">Writer settings.</param>
        </member>
        <member name="M:Microsoft.OData.Json.ODataJsonWriterUtils.WriteError(Microsoft.OData.Json.IJsonWriter,System.String,System.String,System.String,System.Collections.Generic.IEnumerable{Microsoft.OData.ODataErrorDetail},Microsoft.OData.ODataInnerError,System.Collections.Generic.IEnumerable{Microsoft.OData.ODataInstanceAnnotation},System.Action{System.Collections.Generic.IEnumerable{Microsoft.OData.ODataInstanceAnnotation}},System.Int32,System.Boolean)">
            <summary>
            Write an error message.
            </summary>
            <param name="jsonWriter">JSON writer.</param>
            <param name="code">The code of the error.</param>
            <param name="message">The message of the error.</param>
            <param name="target">The target of the error.</param>
            <param name="details">The details of the error.</param>
            <param name="innerError">Inner error details that will be included in debug mode (if present).</param>
            <param name="instanceAnnotations">Instance annotations for this error.</param>
            <param name="writeInstanceAnnotationsDelegate">Action to write the instance annotations.</param>
            <param name="maxInnerErrorDepth">The maximum number of nested inner errors to allow.</param>
            <param name="writingJsonLight">true if we're writing JSON lite, false if we're writing verbose JSON.</param>
        </member>
        <member name="M:Microsoft.OData.Json.ODataJsonWriterUtils.WriteInnerError(Microsoft.OData.Json.IJsonWriter,Microsoft.OData.ODataInnerError,System.String,System.Int32,System.Int32)">
            <summary>
            Write an inner error property and message.
            </summary>
            <param name="jsonWriter">The JSON writer to write the error to.</param>
            <param name="innerError">Inner error details.</param>
            <param name="innerErrorPropertyName">The property name for the inner error property.</param>
            <param name="recursionDepth">The number of times this method has been called recursively.</param>
            <param name="maxInnerErrorDepth">The maximum number of nested inner errors to allow.</param>
        </member>
        <member name="T:Microsoft.OData.Json.ODataStringEscapeOption">
            <summary>
            Enum type to specify how to escape string value when writing JSON text.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.ODataStringEscapeOption.EscapeNonAscii">
            <summary>
            All non-ASCII and control characters (e.g. newline) are escaped.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.ODataStringEscapeOption.EscapeOnlyControls">
            <summary>
            Only control characters (e.g. newline) are escaped.
            </summary>
        </member>
        <member name="T:Microsoft.OData.Json.TextWriterWrapper">
            <summary>
            Writes text non indented
            </summary>
        </member>
        <member name="F:Microsoft.OData.Json.TextWriterWrapper.writer">
            <summary>
            The underlying writer to write to.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.TextWriterWrapper.#ctor(System.IFormatProvider)">
            <summary>
            Constructor
            </summary>
            <param name="formatProvider">An System.IFormatProvider object that controls formatting.</param>
        </member>
        <member name="P:Microsoft.OData.Json.TextWriterWrapper.Encoding">
            <summary>
            Returns the Encoding for the given writer.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Json.TextWriterWrapper.NewLine">
            <summary>
            Returns the new line character.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.TextWriterWrapper.IncreaseIndentation">
            <summary>
            Increases the level of indentation applied to the output.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.TextWriterWrapper.DecreaseIndentation">
            <summary>
            Decreases the level of indentation applied to the output.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.TextWriterWrapper.Flush">
            <summary>
            Clears the buffer of the current writer.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Json.TextWriterWrapper.InternalCloseOrDispose">
            <summary>
            Closes or disposes the underlying writer.
            </summary>
        </member>
        <member name="T:Microsoft.OData.JsonLightInstanceAnnotationWriter">
            <summary>
            Class responsible for writing a collection of <see cref="T:Microsoft.OData.ODataInstanceAnnotation"/>.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLightInstanceAnnotationWriter.valueSerializer">
            <summary>
            Value serializer, responsible for serializing the annotation values.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLightInstanceAnnotationWriter.typeNameOracle">
            <summary>
            The oracle to use to determine the type name to write for entries and values.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLightInstanceAnnotationWriter.jsonWriter">
            <summary>
            JsonWriter instance to use for writing term names.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLightInstanceAnnotationWriter.odataAnnotationWriter">
            <summary>
            OData annotation writer.
            </summary>
        </member>
        <member name="F:Microsoft.OData.JsonLightInstanceAnnotationWriter.writerValidator">
            <summary>
            The writer validator used during writing.
            </summary>
        </member>
        <member name="M:Microsoft.OData.JsonLightInstanceAnnotationWriter.#ctor(Microsoft.OData.JsonLight.ODataJsonLightValueSerializer,Microsoft.OData.JsonLight.JsonLightTypeNameOracle)">
            <summary>
            Constructs a <see cref="T:Microsoft.OData.JsonLightInstanceAnnotationWriter"/> that can write a collection of <see cref="T:Microsoft.OData.ODataInstanceAnnotation"/>.
            </summary>
            <param name="valueSerializer">The <see cref="T:Microsoft.OData.JsonLight.ODataJsonLightValueSerializer"/> to use for writing values of instance annotations.
            The <see cref="T:Microsoft.OData.Json.IJsonWriter"/> that is also used internally will be acquired from the this instance.</param>
            <param name="typeNameOracle">The oracle to use to determine the type name to write for entries and values.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLightInstanceAnnotationWriter.WriteInstanceAnnotations(System.Collections.Generic.IEnumerable{Microsoft.OData.ODataInstanceAnnotation},Microsoft.OData.InstanceAnnotationWriteTracker,System.Boolean,System.String)">
            <summary>
            Writes all the instance annotations specified in <paramref name="instanceAnnotations"/>.
            </summary>
            <param name="instanceAnnotations">Collection of instance annotations to write.</param>
            <param name="tracker">The tracker to track if instance annotations are written.</param>
            <param name="ignoreFilter">Whether to ignore the filter in settings.</param>
            <param name="propertyName">The name of the property this instance annotation applies to</param>
        </member>
        <member name="M:Microsoft.OData.JsonLightInstanceAnnotationWriter.WriteInstanceAnnotations(System.Collections.Generic.IEnumerable{Microsoft.OData.ODataInstanceAnnotation},System.String,System.Boolean)">
            <summary>
            Writes all the instance annotations specified in <paramref name="instanceAnnotations"/>.
            </summary>
            <param name="instanceAnnotations">Collection of instance annotations to write.</param>
            <param name="propertyName">The name of the property this instance annotation applies to</param>
            <param name="isUndeclaredProperty">If writing an undeclared property.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLightInstanceAnnotationWriter.WriteInstanceAnnotationsForError(System.Collections.Generic.IEnumerable{Microsoft.OData.ODataInstanceAnnotation})">
            <summary>
            Writes all the instance annotations specified in <paramref name="instanceAnnotations"/> of error.
            </summary>
            <param name="instanceAnnotations">Collection of instance annotations to write.</param>
        </member>
        <member name="M:Microsoft.OData.JsonLightInstanceAnnotationWriter.WriteInstanceAnnotation(Microsoft.OData.ODataInstanceAnnotation,System.Boolean,System.String)">
            <summary>
            Writes an instance annotation.
            </summary>
            <param name="instanceAnnotation">The instance annotation to write.</param>
            <param name="ignoreFilter">Whether to ignore the filter in settings.</param>
            <param name="propertyName">The name of the property this instance annotation applies to</param>
        </member>
        <member name="M:Microsoft.OData.JsonLightInstanceAnnotationWriter.WriteInstanceAnnotationName(System.String,System.String)">
            <summary>
            Write the name of the instance annotation
            </summary>
            <param name="propertyName">The name of the property this instance annotation applied to</param>
            <param name="annotationName">The name of the instance annotation</param>
        </member>
        <member name="T:Microsoft.OData.MediaTypeUtils">
            <summary>
            Class with utility methods to work with media types.
            </summary>
        </member>
        <member name="F:Microsoft.OData.MediaTypeUtils.allSupportedPayloadKinds">
            <summary>An array of all the supported payload kinds.</summary>
        </member>
        <member name="F:Microsoft.OData.MediaTypeUtils.encodingUtf8NoPreamble">
             <summary>UTF-8 encoding, without the BOM preamble.</summary>
             <remarks>
             While a BOM preamble on UTF8 is generally benign, it seems that some MIME handlers under IE6 will not
             process the payload correctly when included.
             
             Because the data service should include the encoding as part of the Content-Type in the response,
             there should be no ambiguity as to what encoding is being used.
             
             For further information, see http://www.unicode.org/faq/utf_bom.html#BOM.
             </remarks>
        </member>
        <member name="F:Microsoft.OData.MediaTypeUtils.MatchInfoCacheMaxSize">
            <summary>
            Max size to cache match info.
            </summary>
        </member>
        <member name="F:Microsoft.OData.MediaTypeUtils.MatchInfoCache">
            <summary>
            Concurrent cache to cache match info.
            </summary>
        </member>
        <member name="P:Microsoft.OData.MediaTypeUtils.EncodingUtf8NoPreamble">
             <summary>UTF-8 encoding, without the BOM preamble.</summary>
             <remarks>
             While a BOM preamble on UTF8 is generally benign, it seems that some MIME handlers under IE6 will not
             process the payload correctly when included.
             
             Because the data service should include the encoding as part of the Content-Type in the response,
             there should be no ambiguity as to what encoding is being used.
             
             For further information, see http://www.unicode.org/faq/utf_bom.html#BOM.
             </remarks>
        </member>
        <member name="P:Microsoft.OData.MediaTypeUtils.FallbackEncoding">
            <summary>Encoding to fall back to an appropriate encoding is not available.</summary>
        </member>
        <member name="P:Microsoft.OData.MediaTypeUtils.MissingEncoding">
            <summary>Encoding implied by an unspecified encoding value.</summary>
            <remarks>See http://tools.ietf.org/html/rfc2616#section-3.4.1 for details.</remarks>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.GetContentTypeFromSettings(Microsoft.OData.ODataMessageWriterSettings,Microsoft.OData.ODataPayloadKind,Microsoft.OData.ODataMediaTypeResolver,Microsoft.OData.ODataMediaType@,System.Text.Encoding@)">
            <summary>
            Given the Accept and the Accept-Charset headers of the request message computes the media type, encoding and <see cref="T:Microsoft.OData.ODataFormat"/>
            to be used for the response message.
            </summary>
            <param name="settings">The message writer settings to use for serializing the response payload.</param>
            <param name="payloadKind">The kind of payload to be serialized as part of the response message.</param>
            <param name="mediaTypeResolver">The media type resolver to use when interpreting the content type.</param>
            <param name="mediaType">The media type to be used in the response message.</param>
            <param name="encoding">The encoding to be used in the response message.</param>
            <returns>The <see cref="T:Microsoft.OData.ODataFormat"/> used when serializing the response.</returns>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.GetPayloadKindsForContentType(System.String,Microsoft.OData.ODataMediaTypeResolver,Microsoft.OData.ODataMediaType@,System.Text.Encoding@)">
            <summary>
            Gets all payload kinds and their corresponding formats that match the specified content type header.
            </summary>
            <param name="contentTypeHeader">The content type header to get the payload kinds for.</param>
            <param name="mediaTypeResolver">The media type resolver to use when interpreting the content type.</param>
            <param name="contentType">The parsed content type as <see cref="T:Microsoft.OData.ODataMediaType"/>.</param>
            <param name="encoding">The encoding from the content type or the default encoding from <see cref="T:Microsoft.OData.ODataMediaType" />.</param>
            <returns>The list of payload kinds and formats supported for the specified <paramref name="contentTypeHeader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.MediaTypeAndSubtypeAreEqual(System.String,System.String)">
            <summary>
            Checks whether two media types with subtypes (but without parameters) are equal.
            </summary>
            <param name="firstTypeAndSubtype">The first media type and subtype.</param>
            <param name="secondTypeAndSubtype">The second media type and subtype.</param>
            <returns>true if the <paramref name="firstTypeAndSubtype"/> is equal to <paramref name="secondTypeAndSubtype"/>; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.MediaTypeStartsWithTypeAndSubtype(System.String,System.String)">
            <summary>
            Checks whether a media type starts with the expected type and subtype.
            </summary>
            <param name="mediaType">The media type to check.</param>
            <param name="typeAndSubtype">The type and subtype the <paramref name="mediaType"/> should start with.</param>
            <returns>true if the <paramref name="mediaType"/> starts with <paramref name="typeAndSubtype"/>; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.MediaTypeHasParameterWithValue(Microsoft.OData.ODataMediaType,System.String,System.String)">
            <summary>
            Checks whether the specified media type has a parameter with the expected value.
            </summary>
            <param name="mediaType">The media type to check the parameters for.</param>
            <param name="parameterName">The name of the expected parameter.</param>
            <param name="parameterValue">The value of the expected parameter.</param>
            <returns>true if the <paramref name="mediaType"/> has a parameter called <paramref name="parameterName"/>
            with value <paramref name="parameterValue"/>; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.HasStreamingSetToTrue(Microsoft.OData.ODataMediaType)">
            <summary>
            Determines whether the media type has a 'streaming' parameter with the value 'true'.
            </summary>
            <param name="mediaType">The media type to check.</param>
            <returns>
              <c>true</c> if the media type has a 'streaming' parameter with the value 'true'; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.HasIeee754CompatibleSetToTrue(Microsoft.OData.ODataMediaType)">
            <summary>
            Determines whether the media type has a 'IEEE754Compatible' parameter with the value 'true'.
            </summary>
            <param name="mediaType">The media type to check</param>
            <returns>
              <c>true</c> if the media type has a 'IEEE754Compatible' parameter with the value 'true'; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.CheckMediaTypeForWildCards(Microsoft.OData.ODataMediaType)">
            <summary>
            Checks for wildcard characters in the <see cref="T:Microsoft.OData.ODataMediaType"/>.
            </summary>
            <param name="mediaType">The <see cref="T:Microsoft.OData.ODataMediaType"/> to check.</param>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.AlterContentTypeForJsonPadding(System.String)">
            <summary>
            JSONP - instead of writing 'application/json', we write 'text/javascript'. In all other ways we pretend it is JSON
            </summary>
            <param name="contentType">Original content-type value string.</param>
            <returns>New content-type value string.</returns>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.GetFormatFromContentType(System.String,Microsoft.OData.ODataPayloadKind[],Microsoft.OData.ODataMediaTypeResolver,Microsoft.OData.ODataMediaType@,System.Text.Encoding@,Microsoft.OData.ODataPayloadKind@)">
            <summary>
            Determine the <see cref="T:Microsoft.OData.ODataFormat"/> to use for the given <paramref name="contentTypeName"/>. If no supported content type
            is found an exception is thrown.
            </summary>
            <param name="contentTypeName">The name of the content type to be checked.</param>
            <param name="supportedPayloadKinds">All possible kinds of payload that can be read with this content type.</param>
            <param name="mediaTypeResolver">The media type resolver to use when interpreting the content type.</param>
            <param name="mediaType">The media type parsed from the <paramref name="contentTypeName"/>.</param>
            <param name="encoding">The encoding from the content type or the default encoding for the <paramref name="mediaType" />.</param>
            <param name="selectedPayloadKind">
            The payload kind that was selected form the list of <paramref name="supportedPayloadKinds"/> for the
            specified <paramref name="contentTypeName"/>.
            </param>
            <returns>The <see cref="T:Microsoft.OData.ODataFormat"/> for the <paramref name="contentTypeName"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.ParseContentType(System.String,System.String@)">
            <summary>
            Parses the specified content type header into a media type instance.
            </summary>
            <param name="contentTypeHeader">The content type header to parse.</param>
            <param name="charset">The optional charset specified with the content type.</param>
            <returns>The <see cref="T:Microsoft.OData.ODataMediaType"/> of the parsed <paramref name="contentTypeHeader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.GetDefaultMediaType(System.Collections.Generic.IList{Microsoft.OData.ODataMediaTypeFormat},Microsoft.OData.ODataFormat,Microsoft.OData.ODataFormat@)">
            <summary>
            Gets the default media type for a given payload kind in a given format.
            </summary>
            <param name="supportedMediaTypes">A list of supported media types and formats.</param>
            <param name="specifiedFormat">The user-specified format in which to write the payload (can be null).</param>
            <param name="actualFormat">The default format for the specified payload kind</param>
            <returns>The default media type for the given payload kind and format.</returns>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.GetEncoding(System.String,Microsoft.OData.ODataPayloadKind,Microsoft.OData.ODataMediaType,System.Boolean)">
            <summary>
            Parses the accepted char sets and matches them against the supported encodings for the given <paramref name="payloadKind"/>.
            </summary>
            <param name="acceptCharsetHeader">The Accept-Charset header of the request.</param>
            <param name="payloadKind">The <see cref="T:Microsoft.OData.ODataPayloadKind"/> for which to compute the encoding.</param>
            <param name="mediaType">The media type used to compute the default encoding for the payload.</param>
            <param name="useDefaultEncoding">true if the default encoding should be returned if no acceptable charset is found; otherwise false.</param>
            <returns>The encoding to be used for the response.</returns>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.MatchMediaTypes(System.Collections.Generic.IEnumerable{Microsoft.OData.ODataMediaType},Microsoft.OData.ODataMediaType[])">
            <summary>
            Matches the supported media types against the list of media types specified in the Accept header or ContentType header of the message. Matching follows the
            rules for media type matching as described in RFC 2616.
            </summary>
            <param name="sourceTypes">The set of media types to be matched against the <paramref name="targetTypes"/>.</param>
            <param name="targetTypes">The set of media types the <paramref name="sourceTypes"/> will be matched against.</param>
            <returns>The best <see cref="T:Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo"/> found during the matching process or null if no match was found.</returns>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.ConvertApplicationJsonInAcceptableMediaTypes(System.Collections.Generic.IList{System.Collections.Generic.KeyValuePair{Microsoft.OData.ODataMediaType,System.String}},Microsoft.OData.ODataVersion)">
            <summary>
            Converts all occurrences of the 'application/json' media type to 'application/json;odata.metadata=minimal'.
            This is necessary because for an accept header 'application/json
            we want the result to be 'application/json;odata.metadata=minimal'
            </summary>
            <param name="specifiedTypes">The parsed acceptable media types.</param>
            <param name="version">The ODataVersion for which to convert the 'application/json' media type</param>
        </member>
        <member name="T:Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo">
            <summary>
            Class representing the result of matching two <see cref="T:Microsoft.OData.ODataMediaType"/> instances.
            </summary>
        </member>
        <member name="F:Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo.DefaultQualityValue">
            <summary>The default quality value (in the normalized range from 0 .. 1000).</summary>
        </member>
        <member name="F:Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo.sourceIndex">
            <summary>Index of the source type in the list of all source types.</summary>
        </member>
        <member name="F:Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo.targetIndex">
            <summary>Index of the target type in the list of all target types.</summary>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo.#ctor(Microsoft.OData.ODataMediaType,Microsoft.OData.ODataMediaType,System.Int32,System.Int32)">
            <summary>
            Constructor.
            </summary>
            <param name="sourceType">The source <see cref="T:Microsoft.OData.ODataMediaType"/> to match against the target type.</param>
            <param name="targetType">The target <see cref="T:Microsoft.OData.ODataMediaType"/> to match against the source type.</param>
            <param name="sourceIndex">Index of the source type in the list of all source types.</param>
            <param name="targetIndex">Index of the target type in the list of all target types.</param>
        </member>
        <member name="P:Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo.SourceTypeIndex">
            <summary>
            Index of the source type in the list of all source types.
            </summary>
        </member>
        <member name="P:Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo.TargetTypeIndex">
            <summary>
            Index of the target type in the list of all target types.
            </summary>
        </member>
        <member name="P:Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo.MatchingTypeNamePartCount">
            <summary>
            Represents the number of non-* matching type name parts or -1 if not matching at all.
            </summary>
        </member>
        <member name="P:Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo.MatchingParameterCount">
            <summary>
            Represents the number of matching parameters or -1 if neither the source type nor the target type have parameters.
            </summary>
        </member>
        <member name="P:Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo.QualityValue">
            <summary>The quality value of the target type (or -1 if none is specified).</summary>
        </member>
        <member name="P:Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo.SourceTypeParameterCountForMatching">
            <summary>
            The number of parameters of the source type that are used for comparison. All accept-parameters are ignored.
            </summary>
        </member>
        <member name="P:Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo.IsMatch">
            <summary>
            true if this <see cref="T:Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo"/> represents a valid match (i.e., the source and target types match/are compatible); otherwise false.
            </summary>
            <remarks>
            Two types are considered compatible if at least one type name part matches (or we are dealing with a wildcard)
            and all the parameters in the source type have been matched.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo.CompareTo(Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo)">
            <summary>
            Implementation of <see cref="T:System.IComparable`1"/>.
            </summary>
            <param name="other">The <see cref="T:Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo"/> to compare against.</param>
            <returns>
            -1 if this instance is a worse match than <paramref name="other"/>.
            0 if both matches are the same.
            1 if <paramref name="other"/> is a better match than this instance.
            </returns>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo.ParseQualityValue(System.String)">
            <summary>Selects a quality value for the specified type.</summary>
            <param name="qualityValueText">The text representation of the quality value.</param>
            <returns>The quality value, in range from 0 through 1000.</returns>
            <remarks>See http://tools.ietf.org/html/rfc2616#section-14.1 for further details.</remarks>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo.TryFindMediaTypeParameter(System.Collections.Generic.IList{System.Collections.Generic.KeyValuePair{System.String,System.String}},System.String,System.String@)">
            <summary>
            Tries to find a parameter with the specified <paramref name="parameterName"/> in the given list <paramref name="parameters"/> of parameters.
            Does not include accept extensions (i.e., parameters after the q quality value parameter)
            </summary>
            <param name="parameters">The list of parameters to search.</param>
            <param name="parameterName">The name of the parameter to find.</param>
            <param name="parameterValue">The parameter value of the parameter with the specified <paramref name="parameterName"/>.</param>
            <returns>True if a parameter with the specified <paramref name="parameterName"/> was found; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo.IsQualityValueParameter(System.String)">
            <summary>
            Returns a flag indicating whether a given media type parameter name is the Http quality value parameter.
            </summary>
            <param name="parameterName">The parameter name to check.</param>
            <returns>True if the parameter name is for the quality value; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo.MatchTypes(Microsoft.OData.ODataMediaType,Microsoft.OData.ODataMediaType)">
            <summary>
            Matches the source type against the media type.
            </summary>
            <param name="sourceType">The source <see cref="T:Microsoft.OData.ODataMediaType"/> to match against the target type.</param>
            <param name="targetType">The target <see cref="T:Microsoft.OData.ODataMediaType"/> to match against the source type.</param>
        </member>
        <member name="T:Microsoft.OData.MediaTypeUtils.MatchInfoCacheKey">
            <summary>
            Class representing key of match info cache.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.MatchInfoCacheKey.#ctor(Microsoft.OData.ODataMediaTypeResolver,Microsoft.OData.ODataPayloadKind,System.String)">
            <summary>
            Constructor.
            </summary>
            <param name="resolver">The media type resolver to use.</param>
            <param name="payloadKind">Kind of the payload.</param>
            <param name="contentTypeName">Name of content type.</param>
        </member>
        <member name="P:Microsoft.OData.MediaTypeUtils.MatchInfoCacheKey.MediaTypeResolver">
            <summary>
            Type of the mediaTypeResolver.
            </summary>
        </member>
        <member name="P:Microsoft.OData.MediaTypeUtils.MatchInfoCacheKey.PayloadKind">
            <summary>
            Kind of the payload.
            </summary>
        </member>
        <member name="P:Microsoft.OData.MediaTypeUtils.MatchInfoCacheKey.ContentTypeName">
            <summary>
            Name of content type.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.MatchInfoCacheKey.Equals(System.Object)">
            <summary>
            Returns a value indicating whether this instance is equal to a specified object.
            </summary>
            <param name="obj">An object to compare with this instance.</param>
            <returns>true if obj is equal to this instance; otherwise, false.</returns>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.MatchInfoCacheKey.GetHashCode">
            <summary>
            Returns the hash code for the value of this instance.
            </summary>
            <returns>A 32-bit signed integer hash code.</returns>
        </member>
        <member name="T:Microsoft.OData.MediaTypeUtils.MatchInfoConcurrentCache">
            <summary>
            Class representing the concurrent cache for match info.
            </summary>
        </member>
        <member name="F:Microsoft.OData.MediaTypeUtils.MatchInfoConcurrentCache.maxSize">
            <summary>
            Max size of the elements that the cache can contain.
            </summary>
        </member>
        <member name="F:Microsoft.OData.MediaTypeUtils.MatchInfoConcurrentCache.dict">
            <summary>
            The dictionary to save elements.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.MatchInfoConcurrentCache.#ctor(System.Int32)">
            <summary>
            Constructor.
            </summary>
            <param name="maxSize">Max size of the elements that the cache can contain.</param>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.MatchInfoConcurrentCache.TryGetValue(Microsoft.OData.MediaTypeUtils.MatchInfoCacheKey,Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo@)">
            <summary>
            Gets the value associated with the specified key.
            </summary>
            <param name="key">The key whose value to get.</param>
            <param name="value">The value associated with the specified key, if the key is found; otherwise, null.</param>
            <returns>true if the cache contains an element with the specified key; otherwise, false.</returns>
        </member>
        <member name="M:Microsoft.OData.MediaTypeUtils.MatchInfoConcurrentCache.Add(Microsoft.OData.MediaTypeUtils.MatchInfoCacheKey,Microsoft.OData.MediaTypeUtils.MediaTypeMatchInfo)">
            <summary>
            Adds an element with the provided key and value to the cache.
            </summary>
            <param name="key">The key of the element to add.</param>
            <param name="value">The value of the element to add.</param>
        </member>
        <member name="T:Microsoft.OData.MessageStreamWrapper">
            <summary>
            Factory class for the various wrapper streams around the actual message stream.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MessageStreamWrapper.CreateNonDisposingStream(System.IO.Stream)">
            <summary>
            Creates a non-disposing stream.
            </summary>
            <param name="innerStream">The inner <see cref="T:System.IO.Stream"/> to wrap.</param>
            <returns>A stream wrapping the <paramref name="innerStream"/> that ignores calls to Dispose.</returns>
        </member>
        <member name="M:Microsoft.OData.MessageStreamWrapper.CreateStreamWithMaxSize(System.IO.Stream,System.Int64)">
            <summary>
            Creates a stream with a given maximum size.
            </summary>
            <param name="innerStream">The inner <see cref="T:System.IO.Stream"/> to wrap.</param>
            <param name="maxBytesToBeRead">The maximum number of bytes to be read from the <paramref name="innerStream"/>.</param>
            <returns>A stream wrapping the <paramref name="innerStream"/> that
            enforces the maximum number of bytes to be read from the stream.</returns>
        </member>
        <member name="M:Microsoft.OData.MessageStreamWrapper.CreateNonDisposingStreamWithMaxSize(System.IO.Stream,System.Int64)">
            <summary>
            Creates a non-disposing stream with a given maximum size.
            </summary>
            <param name="innerStream">The inner <see cref="T:System.IO.Stream"/> to wrap.</param>
            <param name="maxBytesToBeRead">The maximum number of bytes to be read from the <paramref name="innerStream"/>.</param>
            <returns>A stream wrapping the <paramref name="innerStream"/> that ignores calls to Dispose and
            enforces the maximum number of bytes to be read from the stream.</returns>
        </member>
        <member name="M:Microsoft.OData.MessageStreamWrapper.IsNonDisposingStream(System.IO.Stream)">
            <summary>
            Checks whether the provided stream already ignores calls to Dispose.
            </summary>
            <param name="stream">The <see cref="T:System.IO.Stream"/> to check.</param>
            <returns>true if the <paramref name="stream"/> ignores calls to Dispose; otherwise false.</returns>
        </member>
        <member name="T:Microsoft.OData.MessageStreamWrapper.MessageStreamWrappingStream">
            <summary>
            Stream wrapper that supports counting the total number of bytes read from the stream and ensures
            that they don't exceed a specified maximum (used for security purposes) and ignoring calls
            to Dispose if the underlying stream should not be disposed.
            </summary>
        </member>
        <member name="F:Microsoft.OData.MessageStreamWrapper.MessageStreamWrappingStream.maxBytesToBeRead">
            <summary>The maximum number of bytes to be read from the stream before reporting an error.</summary>
        </member>
        <member name="F:Microsoft.OData.MessageStreamWrapper.MessageStreamWrappingStream.ignoreDispose">
            <summary>true to not dispose the inner stream when Dispose is called; otherwise false.</summary>
        </member>
        <member name="F:Microsoft.OData.MessageStreamWrapper.MessageStreamWrappingStream.innerStream">
            <summary>Stream that is being wrapped.</summary>
        </member>
        <member name="F:Microsoft.OData.MessageStreamWrapper.MessageStreamWrappingStream.totalBytesRead">
            <summary>The total number of bytes read from the stream so far.</summary>
        </member>
        <member name="M:Microsoft.OData.MessageStreamWrapper.MessageStreamWrappingStream.#ctor(System.IO.Stream,System.Boolean,System.Int64)">
            <summary>
            Constructs an instance of the byte counting stream wrapper class.
            </summary>
            <param name="innerStream">Stream that is being wrapped.</param>
            <param name="ignoreDispose">true if calls to Dispose should be ignored; otherwise false.</param>
            <param name="maxBytesToBeRead">The maximum number of bytes to be read from the stream before reporting an error.</param>
        </member>
        <member name="P:Microsoft.OData.MessageStreamWrapper.MessageStreamWrappingStream.CanRead">
            <summary>
            Determines if the stream can read.
            </summary>
        </member>
        <member name="P:Microsoft.OData.MessageStreamWrapper.MessageStreamWrappingStream.CanSeek">
            <summary>
            Determines if the stream can seek.
            </summary>
        </member>
        <member name="P:Microsoft.OData.MessageStreamWrapper.MessageStreamWrappingStream.CanWrite">
            <summary>
            Determines if the stream can write.
            </summary>
        </member>
        <member name="P:Microsoft.OData.MessageStreamWrapper.MessageStreamWrappingStream.Length">
            <summary>
            Returns the length of the stream.
            </summary>
        </member>
        <member name="P:Microsoft.OData.MessageStreamWrapper.MessageStreamWrappingStream.Position">
            <summary>
            Gets or sets the position in the stream.
            </summary>
        </member>
        <member name="P:Microsoft.OData.MessageStreamWrapper.MessageStreamWrappingStream.IgnoreDispose">
            <summary>true if the wrapping stream ignores calls to Dispose; otherwise false.</summary>
        </member>
        <member name="M:Microsoft.OData.MessageStreamWrapper.MessageStreamWrappingStream.Flush">
            <summary>
            Flush the stream to the underlying storage.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MessageStreamWrapper.MessageStreamWrappingStream.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads data from the stream.
            </summary>
            <param name="buffer">The buffer to read the data to.</param>
            <param name="offset">The offset in the buffer to write to.</param>
            <param name="count">The number of bytes to read.</param>
            <returns>The number of bytes actually read.</returns>
        </member>
        <member name="M:Microsoft.OData.MessageStreamWrapper.MessageStreamWrappingStream.ReadAsync(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.OData.MessageStreamWrapper.MessageStreamWrappingStream.Seek(System.Int64,System.IO.SeekOrigin)">
            <summary>
            Seeks the stream.
            </summary>
            <param name="offset">The offset to seek to.</param>
            <param name="origin">The origin of the seek operation.</param>
            <returns>The new position in the stream.</returns>
        </member>
        <member name="M:Microsoft.OData.MessageStreamWrapper.MessageStreamWrappingStream.SetLength(System.Int64)">
            <summary>
            Sets the length of the stream.
            </summary>
            <param name="value">The length in bytes to set.</param>
        </member>
        <member name="M:Microsoft.OData.MessageStreamWrapper.MessageStreamWrappingStream.Write(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Writes to the stream.
            </summary>
            <param name="buffer">The buffer to get data from.</param>
            <param name="offset">The offset in the buffer to start from.</param>
            <param name="count">The number of bytes to write.</param>
        </member>
        <member name="M:Microsoft.OData.MessageStreamWrapper.MessageStreamWrappingStream.WriteAsync(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.OData.MessageStreamWrapper.MessageStreamWrappingStream.Dispose(System.Boolean)">
            <summary>
            Dispose this wrapping stream and the underlying stream.
            </summary>
            <param name="disposing">If 'true' this method is called from user code; if 'false' it is called by the runtime.</param>
        </member>
        <member name="M:Microsoft.OData.MessageStreamWrapper.MessageStreamWrappingStream.IncreaseTotalBytesRead(System.Int32)">
            <summary>
            Increases the number of total bytes read from the stream.
            </summary>
            <param name="bytesRead">The number of bytes read from the stream during the last read operation.</param>
            <remarks>Since we don't own the underlying stream we also have to prepare for streams returning &lt; 0 bytes read.</remarks>
        </member>
        <member name="T:Microsoft.OData.Metadata.BufferingXmlReader">
            <summary>
            XML reader which supports look-ahead.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.BufferingXmlReader.XmlNamespace">
            <summary>The "http://www.w3.org/XML/1998/namespace" namespace for the "xml" prefix.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.BufferingXmlReader.XmlBaseAttributeName">
            <summary>The "base" name for the XML base attribute.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.BufferingXmlReader.ODataMetadataNamespace">
            <summary>XML namespace for data service annotations.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.BufferingXmlReader.ODataNamespace">
            <summary>XML namespace for data services. This is to provide compatibility with WCF DS client which accepts custom data namespace value.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.BufferingXmlReader.ODataErrorElementName">
            <summary>The 'error' local name of the error element.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.BufferingXmlReader.lineInfo">
            <summary>Object converted from this.reader to provide line number and position (if presented).</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.BufferingXmlReader.reader">
            <summary>The underlying XML reader this buffering reader is wrapping.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.BufferingXmlReader.bufferedNodes">
            <summary>The (possibly empty) list of buffered nodes.</summary>
            <remarks>This list stores only non-attribute nodes, attributes are stored in a separate list on an element node.</remarks>
        </member>
        <member name="F:Microsoft.OData.Metadata.BufferingXmlReader.endOfInputBufferedNode">
            <summary>
            A special buffered node instance which represents the end of input.
            We always have just one instance and compare references.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.BufferingXmlReader.disableXmlBase">
            <summary>Flag to control if the xml:base attributes should be processed when reading.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.BufferingXmlReader.maxInnerErrorDepth">
            <summary>The maximumum number of recursive internalexception elements to allow when reading in-stream errors.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.BufferingXmlReader.documentBaseUri">
            <summary>The base URI for the document.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.BufferingXmlReader.currentBufferedNode">
            <summary>A pointer into the bufferedNodes list to track the most recent position of the current buffered node.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.BufferingXmlReader.currentAttributeNode">
            <summary>
            A pointer into the linked list of attribute nodes which is only used if the currentBufferedNodeToReport is the attribute value node (not the attribute itself).
            In that case it points to the current attribute node.
            In all other cases this node is null.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.BufferingXmlReader.currentBufferedNodeToReport">
            <summary>
            A pointer either into the bufferedNodes list or into the list of attributes on a buffered element node
            which points to the node which should be reported to the user.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.BufferingXmlReader.isBuffering">
            <summary>A flag indicating whether the reader is in buffering mode or not.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.BufferingXmlReader.removeOnNextRead">
            <summary>
            A flag indicating that the last node for non-buffering read was taken from the buffer; we leave the
            node in the buffer until the next Read call.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.BufferingXmlReader.disableInStreamErrorDetection">
            <summary>Flag to control whether in-stream errors should be detected when reading.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.BufferingXmlReader.xmlBaseStack">
            <summary>The stack of XML base URI definitions.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.BufferingXmlReader.bufferStartXmlBaseStack">
            <summary>The XML base stack state when the buffering started. This is only used when in buffering mode.</summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.#ctor(System.Xml.XmlReader,System.Uri,System.Uri,System.Boolean,System.Int32)">
            <summary>Constructor</summary>
            <param name="reader">The reader to wrap.</param>
            <param name="parentXmlBaseUri">If this reader is wrapping an inner reader of some kind, this parameter should pass the xml:base effective value of the parent.</param>
            <param name="documentBaseUri">The base URI for the document.</param>
            <param name="disableXmlBase">Flag to control if the xml:base attributes should be processed when reading.</param>
            <param name="maxInnerErrorDepth">The maximum number of recursive internalexception elements to allow when reading in-stream errors.</param>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.NodeType">
            <summary>
            Returns the type of the current node.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.IsEmptyElement">
            <summary>
            Returns true if the reader is positioned on an empty element.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.LocalName">
            <summary>
            Returns the local name of the current node.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.Prefix">
            <summary>
            Returns the prefix of the current node.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.NamespaceURI">
            <summary>
            Returns the namespace URI of the current node.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.Value">
            <summary>
            Returns the value of the current node.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.Depth">
            <summary>
            Returns the depth of the current node.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.EOF">
            <summary>
            Returns true if the end of input was reached.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.ReadState">
            <summary>
            Returns the current state of the reader.
            </summary>
            <remarks>We need to support ReadState in order for Skip to work without us implementing it again.</remarks>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.NameTable">
            <summary>
            Returns the nametable used by the reader.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.AttributeCount">
            <summary>
            Returns the number of attributes on the node.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.BaseURI">
            <summary>
            Returns the base URI of the node - note that this is not based on the xml:base attribute, just the input streams.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.HasValue">
            <summary>
            Returns true if the current node has a value.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.System#Xml#IXmlLineInfo#LineNumber">
            <summary>
            Explicit IXmlLineInfo.LineNumber implementation.
            This property provides current line number of this reader.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.System#Xml#IXmlLineInfo#LinePosition">
            <summary>
            Explicit IXmlLineInfo.LinePosition implementation.
            This property provides current line position of this reader.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.XmlBaseUri">
            <summary>
            The active XML base URI for the current node.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.ParentXmlBaseUri">
            <summary>
            The active XML base URI for the parent node (parent element) of the current node.
            </summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.DisableInStreamErrorDetection">
            <summary>
            Flag to control whether in-stream errors should be detected when reading.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.Read">
            <summary>
            Reads the next node from the input.
            </summary>
            <returns>true if another node is available and the reader has moved to it; false if end of input was reached.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.MoveToElement">
            <summary>
            Moves the reader to the element which owns the current attribute.
            </summary>
            <returns>true if the reader has moved (that is the current node was an attribute);
            false if the reader didn't move (the reader was already positioned on an element or other node).</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.MoveToFirstAttribute">
            <summary>
            Moves the reader to the first attribute of the current element.
            </summary>
            <returns>true if the reader moved to the first attribute; false if there are no attribute for the current node (the reader didn't move).</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.MoveToNextAttribute">
            <summary>
            Moves the reader to the next attribute on the current element.
            </summary>
            <returns>true if the reader moved to the next attribute (if the node was an element it moves to the first attribute);
            false if the reader didn't move (no attributes for the current node).</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.ReadAttributeValue">
            <summary>
            Reads the next node from the value of an attribute.
            </summary>
            <returns>true if next node was available; false if end of the attribute value was reached.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.GetAttribute(System.Int32)">
            <summary>
            Returns the value of an attribute based on its index.
            </summary>
            <param name="i">The index of the attribute, starts at 0.</param>
            <returns>The value of the attribute at index <paramref name="i"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.GetAttribute(System.String,System.String)">
            <summary>
            Returns the value of an attribute based on its fully qualified name.
            </summary>
            <param name="name">The local name of the attribute.</param>
            <param name="namespaceURI">The namespace URI of the attribute.</param>
            <returns>The value of the attribute with specified <paramref name="name"/> and <paramref name="namespaceURI"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.GetAttribute(System.String)">
            <summary>
            Returns the value of an attribute based on its name.
            </summary>
            <param name="name">The name of the attribute. (prefix:localname)</param>
            <returns>The value of the attribute with specified <paramref name="name"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.LookupNamespace(System.String)">
            <summary>
            Looks up a namespace URI based on the prefix.
            </summary>
            <param name="prefix">The prefix to search for.</param>
            <returns>The namespace URI for the specified <paramref name="prefix"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.MoveToAttribute(System.String,System.String)">
            <summary>
            Moves the reader to the attribute specified by fully qualified name.
            </summary>
            <param name="name">The local name of the attribute.</param>
            <param name="ns">The namespace URI of the attribute.</param>
            <returns>true if the attribute specified by <paramref name="name"/> and <paramref name="ns"/> was found and the reader is positioned on it;
            false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.MoveToAttribute(System.String)">
            <summary>
            Moves the reader to the attribute specified by name.
            </summary>
            <param name="name">The name of the attribute (prefix:localname).</param>
            <returns>true if the attribute specified by <paramref name="name"/> was found and the reader is positioned on it;
            false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.ResolveEntity">
            <summary>
            Resolves the current entity node.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.System#Xml#IXmlLineInfo#HasLineInfo">
            <summary>
            Explicit IXmlLineInfo.HasLineInfo() implementation.
            Check if this reader has line info.
            </summary>
            <returns>If line info is presented.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.StartBuffering">
            <summary>
            Puts the reader into the state where it buffers read nodes.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.StopBuffering">
            <summary>
            Puts the reader into the state where no buffering happen on read.
            Either buffered nodes are consumed or new nodes are read (and not buffered).
            </summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.ReadInternal(System.Boolean)">
            <summary>
            The actual implementatin of the Read method. Moves the reader to the next node.
            </summary>
            <param name="ignoreInStreamErrors">true if the reader should not check for in-stream errors; otherwise false.</param>
            <returns>true if next node is available and the reader has moved; false if end-of-input was reached.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.ReadNextAndCheckForInStreamError">
            <summary>
            Reads the next node from the XML reader and if m:error element node is detected starts reading ahead and
            tries to parse an in-stream error.
            </summary>
            <returns>true if a new node was found, or false if end of input was reached.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.IsEndOfInputNode(Microsoft.OData.Metadata.BufferingXmlReader.BufferedNode)">
            <summary>
            Determines if the specified node is the end of input node.
            </summary>
            <param name="node">The buffered node to test.</param>
            <returns>true if the node is the special end of input node, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.BufferCurrentReaderNode">
            <summary>
            Buffers the current reader state into a node.
            </summary>
            <returns>The newly created buffered node.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.GetCurrentElementNode">
            <summary>
            Returns the current element node (or node which acts like an element, it doesn't have to be of type Element).
            </summary>
            <returns>The current element node.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.FindAttributeBufferedNode(System.Int32)">
            <summary>
            Finds the buffered node for the attribute specified by its index.
            </summary>
            <param name="index">The index of the attribute.</param>
            <returns>The linked list node of the found attribute, or null if no such attribute could be found.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.FindAttributeBufferedNode(System.String,System.String)">
            <summary>
            Finds the buffered node for the attribute specified by its local name and namespace URI.
            </summary>
            <param name="localName">The local name of the attribute.</param>
            <param name="namespaceUri">The namespace URI of the attribute.</param>
            <returns>The linked list node of the found attribute, or null if no such attribute could be found.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.FindAttributeBufferedNode(System.String)">
            <summary>
            Finds the buffered node for the attribute specified by its qualified name.
            </summary>
            <param name="qualifiedName">The qualified name of the attribute to find, that is prefix:localName.</param>
            <returns>The linked list node of the found attribute, or null if no such attribute could be found.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.MoveFromAttributeValueNode">
            <summary>
            If the reader is positioned on the attribute value node, this moves it to the owning attribute node.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.GetAttributeWithAtomizedName(System.String,System.String)">
            <summary>
            Returns the value of an attribute based on its fully qualified name.
            </summary>
            <param name="name">The local name of the attribute. This string must already be atomized against the reader's nametable.</param>
            <param name="namespaceURI">The namespace URI of the attribute. This string must already be atomized against the reader's nametable.</param>
            <returns>The value of the attribute with specified <paramref name="name"/> and <paramref name="namespaceURI"/>.</returns>
            <remarks>
            Behaves the same as GetAttribute, but it assumes that the parameters are already atomized against our nametable.
            This allows the method to be much faster.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.ValidateInternalState">
            <summary>
            Validates internal state of the reader - debug only.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.HasLineInfo">
            <summary>
            Check if this reader has line info.
            </summary>
            <returns>If line info is presented.</returns>
        </member>
        <member name="T:Microsoft.OData.Metadata.BufferingXmlReader.BufferedNode">
            <summary>
            Class representing one buffered XML node
            </summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.BufferingXmlReader.BufferedNode.attributeNodes">
            <summary>
            The list of attribute nodes, if this node is an element node.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.BufferedNode.#ctor(System.Xml.XmlReader)">
            <summary>
            Constructor.
            </summary>
            <param name="reader">The XML reader to get all the interesting values from. The reader
            is positioned on the node which the new buffered node should buffer.</param>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.BufferedNode.#ctor(System.String,System.Int32,System.Xml.XmlNameTable)">
            <summary>
            Constructor for an attribute value node
            </summary>
            <param name="value">The value of the attribute value node to create.</param>
            <param name="depth">The parent attribute depth.</param>
            <param name="nametable">The nametable to use.</param>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.BufferedNode.#ctor(System.String)">
            <summary>
            Constructor for end of input node.
            </summary>
            <param name="emptyString">The atomized instance of an empty string.</param>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.BufferedNode.NodeType">
            <summary>The type of the buffered node.</summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.BufferedNode.NamespaceUri">
            <summary>The namespace URI of the buffered node.</summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.BufferedNode.LocalName">
            <summary>The local name of the buffered node.</summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.BufferedNode.Prefix">
            <summary>The prefix of the buffered node.</summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.BufferedNode.Value">
            <summary>The value of the buffered node.</summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.BufferedNode.Depth">
            <summary>The depth of the buffered node.</summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.BufferedNode.IsEmptyElement">
            <summary>Denotes if the buffered node is an empty element.</summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.BufferedNode.AttributeNodes">
            <summary>List of attributes. If the node is not element, this will be null.</summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.BufferedNode.CreateEndOfInput(System.Xml.XmlNameTable)">
            <summary>
            Creates a special node which represents the end of input.
            </summary>
            <param name="nametable">The nametable of the underlying reader.</param>
            <returns>The newly created node.</returns>
        </member>
        <member name="T:Microsoft.OData.Metadata.BufferingXmlReader.XmlBaseDefinition">
            <summary>
            Helper class to store XML base URI definition for a specific depth of the reader.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.BufferingXmlReader.XmlBaseDefinition.#ctor(System.Uri,System.Int32)">
            <summary>
            Constructor.
            </summary>
            <param name="baseUri">The XML base URI for the definition.</param>
            <param name="depth">The depth of the XML reader for the definition.</param>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.XmlBaseDefinition.BaseUri">
            <summary>The base URI for this definition.</summary>
        </member>
        <member name="P:Microsoft.OData.Metadata.BufferingXmlReader.XmlBaseDefinition.Depth">
            <summary>The depth of the XmlReader on which this XML base is defined.</summary>
        </member>
        <member name="T:Microsoft.OData.Metadata.CachedPrimitiveKeepInContentAnnotation">
            <summary>
            Annotation which stores a hashset of property names of a complex type that returned KeepInContent == true
            when written the first time. See the comments on ODataWriterBehavior.UseV1ProviderBehavior for more details.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.CachedPrimitiveKeepInContentAnnotation.keptInContentPropertyNames">
            <summary>
            A hash set with the property names of properties that are kept in the content.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.CachedPrimitiveKeepInContentAnnotation.#ctor(System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Constructor.
            </summary>
            <param name="keptInContentPropertyNames">Enumeration of property names that are kept in content.</param>
        </member>
        <member name="M:Microsoft.OData.Metadata.CachedPrimitiveKeepInContentAnnotation.IsKeptInContent(System.String)">
            <summary>
            Determines if a property is in a list of properties that are kept in the content.
            </summary>
            <param name="propertyName">The name of the property to lookup.</param>
            <returns>true if the property is kept in the content; false otherwise.</returns>
        </member>
        <member name="T:Microsoft.OData.Metadata.EdmConstants">
            <summary>
            Constant values used in the EDM.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmNamespace">
            <summary>namespace for edm primitive types.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmBinaryTypeName">
            <summary>edm binary primitive type name</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmBooleanTypeName">
            <summary>edm boolean primitive type name</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmByteTypeName">
            <summary>edm byte primitive type name</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmDateTypeName">
            <summary>edm date primitive type name</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmDateTimeOffsetTypeName">
            <summary>Represents a Time instance as an interval measured in milliseconds from an instance of DateTime.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmDecimalTypeName">
            <summary>edm decimal primitive type name</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmDoubleTypeName">
            <summary>edm double primitive type name</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmGuidTypeName">
            <summary>edm guid primitive type name</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmSingleTypeName">
            <summary>edm single primitive type name</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmSByteTypeName">
            <summary>edm sbyte primitive type name</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmInt16TypeName">
            <summary>edm int16 primitive type name</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmInt32TypeName">
            <summary>edm int32 primitive type name</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmInt64TypeName">
            <summary>edm int64 primitive type name</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmStringTypeName">
            <summary>edm string primitive type name</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmDurationTypeName">
            <summary>Represents an interval measured in milliseconds.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmStreamTypeName">
            <summary>edm stream primitive type name</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmTimeOfDayTypeName">
            <summary>edm timeOfDay primitive type name</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmGeographyTypeName">
            <summary>edm geography primitive type name</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmPointTypeName">
            <summary>Represents a geography Point type.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmLineStringTypeName">
            <summary>Represents a geography LineString type.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmPolygonTypeName">
            <summary>Represents a geography Polygon type.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmGeographyCollectionTypeName">
            <summary>Represents a geography GeomCollection type.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmMultiPolygonTypeName">
            <summary>Represents a geography MultiPolygon type.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmMultiLineStringTypeName">
            <summary>Represents a geography MultiLineString type.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmMultiPointTypeName">
            <summary>Represents a geography MultiPoint type.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmGeometryTypeName">
            <summary>Represents an arbitrary Geometry type.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmGeometryPointTypeName">
            <summary>Represents a geometry Point type.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmGeometryLineStringTypeName">
            <summary>Represents a geometry LineString type.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmGeometryPolygonTypeName">
            <summary>Represents a geometry Polygon type.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmGeometryCollectionTypeName">
            <summary>Represents a geometry GeomCollection type.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmGeometryMultiPolygonTypeName">
            <summary>Represents a geometry MultiPolygon type.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmGeometryMultiLineStringTypeName">
            <summary>Represents a geometry MultiLineString type.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmGeometryMultiPointTypeName">
            <summary>Represents a geometry MultiPoint type.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmxOasisNamespace">
            <summary>
            The namespace for Oasis verion of Edmx
            </summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.EdmxName">
            <summary>The element name of the top-level &lt;Edmx&gt; metadata envelope.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmConstants.InternalUri">
            <summary>
            The URI of annotations that are internal and will not be serialized.
            </summary>
        </member>
        <member name="T:Microsoft.OData.Metadata.EdmLibraryExtensions">
            <summary>
            Class with code that will eventually live in EdmLib.
            </summary>
            <remarks>This class should go away completely when the EdmLib integration is fully done.</remarks>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmLibraryExtensions.PrimitiveTypeReferenceMap">
            <summary>
            Map of CLR primitive type to EDM primitive type reference. Doesn't include spatial types since they need assignability and not equality.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmLibraryExtensions.BooleanTypeReference">
            <summary>Type reference for Edm.Boolean.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmLibraryExtensions.ByteTypeReference">
            <summary>Type reference for Edm.Byte.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmLibraryExtensions.DecimalTypeReference">
            <summary>Type reference for Edm.Decimal.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmLibraryExtensions.DoubleTypeReference">
            <summary>Type reference for Edm.Double.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmLibraryExtensions.Int16TypeReference">
            <summary>Type reference for Edm.Int16.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmLibraryExtensions.Int32TypeReference">
            <summary>Type reference for Edm.Int32.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmLibraryExtensions.Int64TypeReference">
            <summary>Type reference for Edm.Int64.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmLibraryExtensions.SByteTypeReference">
            <summary>Type reference for Edm.SByte.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmLibraryExtensions.StringTypeReference">
            <summary>Type reference for Edm.String.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmLibraryExtensions.SingleTypeReference">
            <summary>Type reference for Edm.Float.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmLibraryExtensions.CollectionTypeQualifier">
            <summary>The qualifier to turn a type name into a Collection type name.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmLibraryExtensions.CollectionTypeFormat">
            <summary>Format string to describe a Collection of a given type.</summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.#cctor">
            <summary>
            Constructor.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.FilterFunctionsByParameterNames(System.Collections.Generic.IEnumerable{Microsoft.OData.Edm.IEdmFunctionImport},System.Collections.Generic.IEnumerable{System.String},System.Boolean)">
            <summary>
            Filters functions by the parameter names.
            </summary>
            <param name="functionImports">The operation imports.</param>
            <param name="parameterNames">The parameter names.</param>
            <param name="caseInsensitive">Whether to support case insensitive.</param>
            <returns>Return the operation imports that match the parameter names.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.FindBestOverloadBasedOnParameters(System.Collections.Generic.IEnumerable{Microsoft.OData.Edm.IEdmOperationImport},System.Collections.Generic.IEnumerable{System.String},System.Boolean)">
            <summary>
            Filters the operations by parameter names.
            </summary>
            <param name="functions">The operations.</param>
            <param name="parameters">The list of non-binding parameter names to match.</param>
            <param name="caseInsensitive">Whether case insensitive.</param>
            <returns>The best matching operations based on parameters.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.FilterBoundOperationsWithSameTypeHierarchyToTypeClosestToBindingType(System.Collections.Generic.IEnumerable{Microsoft.OData.Edm.IEdmOperation},Microsoft.OData.Edm.IEdmType)">
            <summary>
            Filters the type of the bound operations in by the bindingtype inheritance hierarchy to type closest to bindingtype.
            </summary>
            <param name="operations">The operations.</param>
            <param name="bindingType">Type of the binding.</param>
            <returns>The closest Bound Operations to the specified binding type.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.FindBestOverloadBasedOnParameters(System.Collections.Generic.IEnumerable{Microsoft.OData.Edm.IEdmOperation},System.Collections.Generic.IEnumerable{System.String},System.Boolean)">
            <summary>
            Filters the operations by parameter names.
            </summary>
            <param name="functions">The operations.</param>
            <param name="parameters">The list of non-binding parameter names to match.</param>
            <param name="caseInsensitive">Whether case insensitive.</param>
            <returns>The best matching operations based on parameters.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.FilterFunctionsByParameterNames(System.Collections.Generic.IEnumerable{Microsoft.OData.Edm.IEdmFunction},System.Collections.Generic.IEnumerable{System.String},System.Boolean)">
            <summary>
            Given a list of possible operations and a list of parameter names, filter operations that exactly matches
            the parameter names. If more than one function matches, throw.
            </summary>
            <remarks>
            Binding parameters will be ignored in this method. Only non-binding parameters are matched.
            </remarks>
            <param name="functions">The list of functions to search.</param>
            <param name="parameters">The list of non-binding parameter names to match.</param>
            <param name="caseInsensitive">Whether case insensitive.</param>
            <returns>All operation imports matches the parameter names exactly or an empty enumerable.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.FilterOperationsByParameterNames(System.Collections.Generic.IEnumerable{Microsoft.OData.Edm.IEdmOperation},System.Collections.Generic.IEnumerable{System.String},System.Boolean)">
            <summary>
            Filters the operations by parameter names.
            </summary>
            <param name="operations">The operations.</param>
            <param name="parameters">The parameters.</param>
            <param name="caseInsensitive">Whether case insensitive.</param>
            <returns>Operations filtered by parameter.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.EnsureOperationsBoundWithBindingParameter(System.Collections.Generic.IEnumerable{Microsoft.OData.Edm.IEdmOperation})">
            <summary>
            Ensures that operations are bound and have a binding parameter, other wise throws an exception.
            </summary>
            <param name="operations">The operations.</param>
            <returns>Bound Operations with binding parameters.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.ResolveOperations(Microsoft.OData.Edm.IEdmModel,System.String)">
            <summary>
            Finds the operation group with the specified namespace and name. If the name contains the function parameters, this
            method will return the operation with matching parameters.
            </summary>
            <param name="model">The model to find the operation in.</param>
            <param name="namespaceQualifiedOperationName">The namespace qualified name of the operation.</param>
            <returns>The <see cref="T:Microsoft.OData.Edm.IEdmOperation"/> Operation group with the specified name or null if no such operation exists.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.ResolveOperations(Microsoft.OData.Edm.IEdmModel,System.String,System.Boolean)">
            <summary>
            Resolves an operation or operation group.
            </summary>
            <param name="model">The model.</param>
            <param name="operationName">The operation name to resolve. The name may be namespace qualified and it may contain parameter type names, e.g. Function1(P1Type,P2Type)</param>
            <param name="allowParameterTypeNames">Whether parameter type names are allowed to appear in the operation name to resolve.</param>
            <returns>The resolved operation or operation group.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.NameWithParameters(Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Name of the operation with parameters.
            </summary>
            <param name="operation">Operation in question.</param>
            <returns>Name of the operation import with parameters.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.FullNameWithParameters(Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Full name of the operation with parameters.
            </summary>
            <param name="operation">Operation in question.</param>
            <returns>Full name of the operation with parameters.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.FullNameWithNonBindingParameters(Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Full name of the operation with non-binding parameters.
            </summary>
            <param name="operation">Operation in question.</param>
            <returns>Full name of the operation with parameters.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.NameWithParameters(Microsoft.OData.Edm.IEdmOperationImport)">
            <summary>
            Name of the operation import with parameters.
            </summary>
            <param name="operationImport">Operation import in question.</param>
            <returns>Name of the operation import with parameters.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.FullNameWithParameters(Microsoft.OData.Edm.IEdmOperationImport)">
            <summary>
            Full name of the operation import with parameters.
            </summary>
            <param name="operationImport">Operation import in question.</param>
            <returns>Full name of the operation import with parameters.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.RemoveActions(System.Collections.Generic.IEnumerable{Microsoft.OData.Edm.IEdmOperation},System.Collections.Generic.IList{Microsoft.OData.Edm.IEdmAction}@)">
            <summary>
            Removes the actions.
            </summary>
            <param name="source">The source.</param>
            <param name="actionItems">The action items.</param>
            <returns>Only the functions from the operation sequence.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.RemoveActionImports(System.Collections.Generic.IEnumerable{Microsoft.OData.Edm.IEdmOperationImport},System.Collections.Generic.IList{Microsoft.OData.Edm.IEdmActionImport}@)">
            <summary>
            Removes the action imports.
            </summary>
            <param name="source">The source.</param>
            <param name="actionImportItems">The action import items.</param>
            <returns>Only the function imports from the operation Import sequence.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.IsUserModel(Microsoft.OData.Edm.IEdmModel)">
            <summary>
            A method that determines whether a given model is a user model or one of the built-in core models
            that can only used for primitive type resolution.
            </summary>
            <param name="model">The model to check.</param>
            <returns>true if the <paramref name="model"/> is a user model; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.IsPrimitiveType(System.Type)">
            <summary>
            Checks whether the provided <paramref name="clrType"/> is a supported primitive type.
            </summary>
            <param name="clrType">The CLR type to check.</param>
            <returns>true if the <paramref name="clrType"/> is a supported primitive type; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.ToCollectionTypeReference(Microsoft.OData.Edm.IEdmPrimitiveTypeReference)">
            <summary>
            Creates a collection value type for the specified <paramref name="itemTypeReference"/>.
            </summary>
            <param name="itemTypeReference">The <see cref="T:Microsoft.OData.Edm.IEdmPrimitiveTypeReference"/> for the item type.</param>
            <returns>The created <see cref="T:Microsoft.OData.Edm.IEdmCollectionTypeReference"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.ToCollectionTypeReference(Microsoft.OData.Edm.IEdmComplexTypeReference)">
            <summary>
            Creates a collection type for the specified <paramref name="itemTypeReference"/>.
            </summary>
            <param name="itemTypeReference">The <see cref="T:Microsoft.OData.Edm.IEdmComplexTypeReference"/> for the item type.</param>
            <returns>The created <see cref="T:Microsoft.OData.Edm.IEdmCollectionTypeReference"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.IsAssignableFrom(Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Checks if the <paramref name="baseType"/> type reference is assignable from the <paramref name="subtype"/> type reference.
            In other words, if <paramref name="subtype"/> is a subtype of <paramref name="baseType"/> or not.
            </summary>
            <param name="baseType">Type of the base type.</param>
            <param name="subtype">Type of the sub type.</param>
            <returns>true, if the <paramref name="baseType"/> is assignable to <paramref name="subtype"/>. Otherwise returns false.</returns>
            <remarks>Note that this method only checks the type definition for assignability; it does not consider nullability
            or any other facets of the type reference.</remarks>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.IsAssignableFrom(Microsoft.OData.Edm.IEdmType,Microsoft.OData.Edm.IEdmType)">
            <summary>
            Checks if the <paramref name="baseType"/> type is assignable from the <paramref name="subtype"/> type.
            In other words, if <paramref name="subtype"/> is a subtype of <paramref name="baseType"/> or not.
            </summary>
            <param name="baseType">Type of the base type.</param>
            <param name="subtype">Type of the sub type.</param>
            <returns>true, if the <paramref name="baseType"/> is assignable to <paramref name="subtype"/>. Otherwise returns false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.GetCommonBaseType(Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Checks if the <paramref name="firstType"/> structured type and the <paramref name="secondType"/> structured type
            have a common base type.
            In other words, if <paramref name="secondType"/> is a subtype of <paramref name="firstType"/> or not.
            </summary>
            <param name="firstType">Type of the base type.</param>
            <param name="secondType">Type of the sub type.</param>
            <returns>The common base type or null if no common base type exists.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.GetCommonBaseType(Microsoft.OData.Edm.IEdmPrimitiveType,Microsoft.OData.Edm.IEdmPrimitiveType)">
            <summary>
            Checks if the <paramref name="firstType"/> primitive type and the <paramref name="secondType"/> primitive type
            have a common base type.
            In other words, if <paramref name="secondType"/> is a subtype of <paramref name="firstType"/> or not.
            </summary>
            <param name="firstType">Type of the base type.</param>
            <param name="secondType">Type of the sub type.</param>
            <returns>The common base type or null if no common base type exists.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.BaseType(Microsoft.OData.Edm.IEdmPrimitiveType)">
            <summary>
            Returns the base type of a primitive type.
            </summary>
            <param name="type">The <see cref="T:Microsoft.OData.Edm.IEdmPrimitiveType"/> to get the base type for.</param>
            <returns>The base type of the <paramref name="type"/> or null if no base type exists.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.AsCollectionOrNull(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Casts an <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/> to a <see cref="T:Microsoft.OData.Edm.IEdmCollectionTypeReference"/> or returns null if this is not supported.
            </summary>
            <param name="typeReference">The type reference to convert.</param>
            <returns>An <see cref="T:Microsoft.OData.Edm.IEdmCollectionTypeReference"/> instance or null if the <paramref name="typeReference"/> cannot be converted.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.IsElementTypeEquivalentTo(Microsoft.OData.Edm.IEdmType,Microsoft.OData.Edm.IEdmType)">
            <summary>
            Compare if the two collection types are equal on the element type regardless of nullable, facets.
            </summary>
            <param name="type">The left operand.</param>
            <param name="other">The right operand.</param>
            <returns>If the two collection types are equal on the element type regardless of nullable, facets.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.ConvertToUnderlyingTypeIfUIntValue(Microsoft.OData.Edm.IEdmModel,System.Object,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Convert the value to underlying type according to model if the value is uint;
            otherwise return the original value directly.
            </summary>
            <param name="model">The given model.</param>
            <param name="value">The value to convert.</param>
            <param name="expectedTypeReference">The expected type reference of the value (null by default).</param>
            <returns>The converted value.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.ResolveUIntTypeDefinition(Microsoft.OData.Edm.IEdmModel,System.Object)">
            <summary>
            Try to resolve the type definition from the model if value is unsigned int.
            </summary>
            <param name="model">The given model.</param>
            <param name="value">The given value.</param>
            <returns>The type reference to type definition corresponding to the value.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.ResolvePrimitiveTypeName(System.String)">
            <summary>
            Resolves the name of a primitive type.
            </summary>
            <param name="typeName">The name of the type to resolve.</param>
            <returns>The <see cref="T:Microsoft.OData.Edm.IEdmType"/> representing the type specified by the <paramref name="typeName"/>;
            or null if no such type could be found.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.GetCollectionItemType(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Get the <see cref="T:Microsoft.OData.Edm.IEdmEntityTypeReference"/> of the item type of the <paramref name="typeReference"/>.
            </summary>
            <param name="typeReference">The collection type to get the item type for.</param>
            <returns>The item type of the <paramref name="typeReference"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.GetCollectionType(Microsoft.OData.Edm.IEdmType)">
            <summary>
            Returns the IEdmCollectionType implementation with the given IEdmType as nullable element type.
            </summary>
            <param name="itemType">IEdmType instance which is the element type.</param>
            <returns>An <see cref="T:Microsoft.OData.Edm.IEdmCollectionType"/> instance using the <paramref name="itemType"/> as Collection item type.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.GetCollectionType(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Returns the IEdmCollectionType implementation with the given IEdmTypeReference as element type.
            </summary>
            <param name="itemTypeReference">IEdmTypeReference instance which is the element type.</param>
            <returns>An <see cref="T:Microsoft.OData.Edm.IEdmCollectionType"/> instance using the <paramref name="itemTypeReference"/> as Collection item type.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.GetCollectionItemTypeName(System.String)">
            <summary>
            Returns CollectionValue item type name or null if the provided type name is not a collectionValue.
            </summary>
            <param name="typeName">CollectionValue type name read from payload.</param>
            <returns>CollectionValue element type name or null if not a collectionValue.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.GetCollectionTypeFullName(System.String)">
            <summary>
            Gets the collection full type name from the given type string.
            </summary>
            <param name="typeName">The original collection type string.</param>
            <returns>The full type name for the given origin type name/>.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.OperationsBoundToStructuredTypeMustBeContainerQualified(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Determines whether operations bound to this type must be qualified with the operation they belong to when appearing in a $select clause.
            </summary>
            <param name="structuredType">The structured type the operations are bound to.</param>
            <returns>True if the operations must be container qualified, otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.ODataShortQualifiedName(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Gets the Partail name of the definition referred to by the type reference.
            </summary>
            <param name="typeReference">The type reference to get the partial name for.</param>
            <returns>The partial name of this <paramref name="typeReference"/>.</returns>
            <remarks>
            Note that this method is different from the EdmLib PartialName extension method in that it also returns
            names for collection types. For EdmLib, collection types are functions and thus don't have a Partial name.
            The name/string they use in CSDL is just shorthand for them.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.ODataShortQualifiedName(Microsoft.OData.Edm.IEdmType)">
            <summary>
            Gets the Partial name of the type.
            </summary>
            <param name="type">The type to get the partial name for.</param>
            <returns>The partial name of the <paramref name="type"/>.</returns>
            <remarks>
            Note that this method is different from the EdmLib PartialName extension method in that it also returns
            names for collection types. For EdmLib, collection types are functions and thus don't have a full name.
            The name/string they use in CSDL is just shorthand for them.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.Clone(Microsoft.OData.Edm.IEdmTypeReference,System.Boolean)">
            <summary>
            Clones the specified type reference.
            </summary>
            <param name="typeReference">The type reference to clone.</param>
            <param name="nullable">true to make the cloned type reference nullable; false to make it non-nullable.</param>
            <returns>The cloned <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/> instance.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.OperationGroupFullName(System.Collections.Generic.IEnumerable{Microsoft.OData.Edm.IEdmOperation})">
            <summary>
            Gets the full name of a operation group.
            </summary>
            <param name="operationGroup">The operation group in question.</param>
            <returns>The full name of the operation group.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.OperationImportGroupFullName(System.Collections.Generic.IEnumerable{Microsoft.OData.Edm.IEdmOperationImport})">
            <summary>
            Gets the full name of a operation import group.
            </summary>
            <param name="operationImportGroup">The operation import group in question.</param>
            <returns>The full name of the operation import group.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.IsAssignableFrom(Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Checks if the <paramref name="baseType"/> is assignable to <paramref name="subtype"/>.
            In other words, if <paramref name="subtype"/> is a subtype of <paramref name="baseType"/> or not.
            </summary>
            <param name="baseType">Type of the base type.</param>
            <param name="subtype">Type of the sub type.</param>
            <returns>true, if the <paramref name="baseType"/> is assignable to <paramref name="subtype"/>. Otherwise returns false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.IsAssignableFrom(Microsoft.OData.Edm.IEdmPrimitiveType,Microsoft.OData.Edm.IEdmPrimitiveType)">
            <summary>
            Checks if the <paramref name="baseType"/> primitive type is assignable to <paramref name="subtype"/> primitive type.
            In other words, if <paramref name="subtype"/> is a subtype of <paramref name="baseType"/> or not.
            </summary>
            <param name="baseType">Type of the base type.</param>
            <param name="subtype">Type of the sub type.</param>
            <returns>true, if the <paramref name="baseType"/> is assignable to <paramref name="subtype"/>. Otherwise returns false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.GetPrimitiveClrType(Microsoft.OData.Edm.IEdmPrimitiveTypeReference)">
            <summary>
            Returns the primitive CLR type for the specified primitive type reference.
            </summary>
            <param name="primitiveTypeReference">The primitive type to resolve.</param>
            <returns>The CLR type for the primitive type reference.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.ToTypeReference(Microsoft.OData.Edm.IEdmType)">
            <summary>
            Turns a <see cref="T:Microsoft.OData.Edm.IEdmType"/> into the corresponding non-nullable <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/>.
            </summary>
            <param name="type">The type to convert.</param>
            <returns>A non-nullable type reference for the <paramref name="type"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.FullName(Microsoft.OData.Edm.IEdmEntityContainerElement)">
            <summary>
            Returns the fully qualified name of an entity container element.
            </summary>
            <param name="containerElement">The container element to get the full name for.</param>
            <returns>The full name of the owning entity container, slash, name of the container element.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.GetPrimitiveTypeReference(System.Type)">
            <summary>
            Returns the primitive type reference for the given Clr type.
            </summary>
            <param name="clrType">The Clr type to resolve.</param>
            <returns>The primitive type reference for the given Clr type.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.ToTypeReference(Microsoft.OData.Edm.IEdmType,System.Boolean)">
            <summary>
            Turns a <see cref="T:Microsoft.OData.Edm.IEdmType"/> into the corresponding <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/>.
            </summary>
            <param name="type">The type to convert.</param>
            <param name="nullable">true if the returned type reference should be nullable; otherwise false.</param>
            <returns>A type reference for the <paramref name="type"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.GetCollectionTypeName(System.String)">
            <summary>
            Creates the EDM type name for a collection of the specified item type name. E.g. Collection(Edm.String)
            </summary>
            <param name="itemTypeName">Type name of the items in the collection.</param>
            <returns>Type name for a collection of the specified item type name.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.ResolveOperationImports(Microsoft.OData.Edm.IEdmEntityContainer,System.String)">
            <summary>
            Resolves a operation import or operation import group.
            </summary>
            <param name="container">The entity container.</param>
            <param name="operationImportName">The operation import name to resolve. May contain parameter type names, e.g. Function1(P1Type,P2Type)</param>
            <returns>The resolved operation import or operation import group.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.ResolveOperationImports(Microsoft.OData.Edm.IEdmEntityContainer,System.String,System.Boolean)">
            <summary>
            Resolves an operation import or operation import group.
            </summary>
            <param name="container">The entity container.</param>
            <param name="operationImportName">The operation import name to resolve. May contain parameter type names, e.g. Function1(P1Type,P2Type)</param>
            <param name="allowParameterTypeNames">Whether parameter type names are allowed to appear in the operation import name to resolve.</param>
            <returns>The resolved operation import or operation import group.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.GetPrimitiveClrType(Microsoft.OData.Edm.IEdmPrimitiveType,System.Boolean)">
            <summary>
            Returns the primitive CLR type for the specified primitive type reference.
            </summary>
            <param name="primitiveType">The primitive type to resolve.</param>
            <param name="isNullable">Whether the returned type should be a nullable variant or not.</param>
            <returns>The CLR type for the primitive type reference.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.ValidateOperationGroupReturnsOnlyOnKind(System.Collections.Generic.IEnumerable{Microsoft.OData.Edm.IEdmOperation},System.String)">
            <summary>
            Validates the kind of the operation group returns only on.
            </summary>
            <param name="operations">The operations.</param>
            <param name="operationNameWithoutParameterTypes">The operation name without parameter types.</param>
            <returns>Enumerable list of operations.</returns>
            <exception cref="T:Microsoft.OData.ODataException">If there is an action and function in the sequence.</exception>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.ParameterTypesToString(Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Gets the operation parameter types in string.
            </summary>
            <param name="operation">Operation in question.</param>
            <returns>Comma separated operation parameter types enclosed in parantheses.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.NonBindingParameterNamesToString(Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Gets the non binding operation parameter names in string.
            </summary>
            <param name="operation">Operation in question.</param>
            <returns>Comma separated operation parameter names enclosed in parantheses.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.GetCollectionItemTypeName(System.String,System.Boolean)">
            <summary>
            Returns Collection item type name or null if the provided type name is not a collection.
            </summary>
            <param name="typeName">Collection type name.</param>
            <param name="isNested">Whether it is a nested (recursive) call.</param>
            <returns>Collection element type name or null if not a collection.</returns>
            <remarks>
            The following rules are used for collection type names:
            - it has to start with "Collection(" and end with ")" - trailing and leading whitespaces make the type not to be recognized as collection.
            - there is to be no characters (including whitespaces) between "Collection" and "(" - otherwise it won't berecognized as collection
            - collection item type name has to be a non-empty string - i.e. "Collection()" won't be recognized as collection
            - nested collection - e.g. "Collection(Collection(Edm.Int32))" - are not supported - we will throw
            Note the following are examples of valid type names which are not collection:
            - "Collection()"
            - " Collection(Edm.Int32)"
            - "Collection (Edm.Int32)"
            - "Collection("
            </remarks>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.ParameterTypesToString(Microsoft.OData.Edm.IEdmOperationImport)">
            <summary>
            Gets the operation import parameter types in string.
            </summary>
            <param name="operationImport">Function import in question.</param>
            <returns>Comma separated operation import parameter types enclosed in parantheses.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.FilterByOperationParameterTypes(System.Collections.Generic.IEnumerable{Microsoft.OData.Edm.IEdmOperationImport},System.String,System.String)">
            <summary>
            Filters the by operation parameter types.
            </summary>
            <param name="operationImports">The operation imports.</param>
            <param name="operationNameWithoutParameterTypes">The operation name without parameter types.</param>
            <param name="originalFullOperationImportName">Name of the original full operation import.</param>
            <returns>A list of EdmOperations that filters out operations that don't match.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.InheritanceLevelFromSpecifiedInheritedType(Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Inheritances the type of the level from specified inherited.
            </summary>
            <param name="structuredType">Type of the structured.</param>
            <param name="rootType">Type of the root.</param>
            <returns>Get the inheritance level.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.ToTypeReference(Microsoft.OData.Edm.IEdmPrimitiveType,System.Boolean)">
            <summary>
            Gets a reference to a primitive kind definition of the appropriate kind.
            </summary>
            <param name="primitiveType">Primitive type to create a reference for.</param>
            <param name="nullable">Flag specifying if the referenced type should be nullable per default.</param>
            <returns>A new primitive type reference.</returns>
        </member>
        <member name="T:Microsoft.OData.Metadata.EdmLibraryExtensions.EdmTypeEqualityComparer">
            <summary>
            Equality comparer for an IEdmType.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.EdmTypeEqualityComparer.Equals(Microsoft.OData.Edm.IEdmType,Microsoft.OData.Edm.IEdmType)">
            <summary>
            Determines whether the specified objects are equal.
            </summary>
            <param name="x">The first object of type to compare.</param>
            <param name="y">The second object of type to compare.</param>
            <returns>
            true if the specified objects are equal; otherwise, false.
            </returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmLibraryExtensions.EdmTypeEqualityComparer.GetHashCode(Microsoft.OData.Edm.IEdmType)">
            <summary>
            Returns a hash code for this instance.
            </summary>
            <param name="obj">The obj.</param>
            <returns>
            A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table.
            </returns>
        </member>
        <member name="T:Microsoft.OData.Metadata.EdmTypeReaderResolver">
            <summary>
            Responsible for resolving the element type of an entity set with reader (i.e., looser) semantics.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmTypeReaderResolver.model">
            <summary>The model to use or null if no model is available.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmTypeReaderResolver.clientCustomTypeResolver">
            <summary>Reader behavior if the caller is a reader, null if no reader behavior is available.</summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmTypeReaderResolver.#ctor(Microsoft.OData.Edm.IEdmModel,System.Func{Microsoft.OData.Edm.IEdmType,System.String,Microsoft.OData.Edm.IEdmType})">
            <summary>Creates a new entity set element type resolver with all the information needed when resolving for reading scenarios.</summary>
            <param name="model">The model to use or null if no model is available.</param>
            <param name="clientCustomTypeResolver">Reader behavior if the caller is a reader, null if no reader behavior is available.</param>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmTypeReaderResolver.GetElementType(Microsoft.OData.Edm.IEdmNavigationSource)">
            <summary>Returns the entity type of the given navigation source.</summary>
            <param name="navigationSource">The navigation source to get the element type of.</param>
            <returns>The <see cref="T:Microsoft.OData.Edm.IEdmEntityType"/> representing the entity type of the <paramref name="navigationSource" />.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmTypeReaderResolver.GetReturnType(Microsoft.OData.Edm.IEdmOperationImport)">
            <summary>
            Returns the return type of the given operation import.
            </summary>
            <param name="operationImport">The operation import to get the return type from.</param>
            <returns>The <see cref="T:Microsoft.OData.Edm.IEdmType"/> representing the return type fo the <paramref name="operationImport"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmTypeReaderResolver.GetReturnType(System.Collections.Generic.IEnumerable{Microsoft.OData.Edm.IEdmOperationImport})">
            <summary>
            Returns the return type of the given operation import group.
            </summary>
            <param name="functionImportGroup">The operation import group to get the return type from.</param>
            <returns>The <see cref="T:Microsoft.OData.Edm.IEdmType"/> representing the return type fo the <paramref name="functionImportGroup"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmTypeReaderResolver.GetParameterType(Microsoft.OData.Edm.IEdmOperationParameter)">
            <summary>
            Gets the operation parameter type for read and calls the client type resolver to resolve type when it is specified.
            </summary>
            <param name="operationParameter">The operation parameter to resolve the type for.</param>
            <returns>The <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/> representing the type on the operation parameter; or null if no such type could be found.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmTypeReaderResolver.ResolveTypeReference(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Resolves the given type reference if a client type resolver is available.
            </summary>
            <param name="typeReferenceToResolve">Type reference to resolve.</param>
            <returns>The resolved type reference.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmTypeReaderResolver.ResolveType(Microsoft.OData.Edm.IEdmType)">
            <summary>
            Resolves the given type if a client type resolver is available.
            </summary>
            <param name="typeToResolve">Type to resolve.</param>
            <returns>The resolved type.</returns>
        </member>
        <member name="T:Microsoft.OData.Metadata.EdmTypeResolver">
            <summary>
            Class responsible for determining the entity type of an entity set.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmTypeResolver.GetElementType(Microsoft.OData.Edm.IEdmNavigationSource)">
            <summary>
            Returns the entity type of the given navigation source.
            </summary>
            <param name="navigationSource">The navigation source to get the entity type of.</param>
            <returns>The <see cref="T:Microsoft.OData.Edm.IEdmEntityType"/> representing the entity type of the <paramref name="navigationSource" />.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmTypeResolver.GetReturnType(Microsoft.OData.Edm.IEdmOperationImport)">
            <summary>
            Returns the return type of the given operation import.
            </summary>
            <param name="operationImport">The operation import to get the return type from.</param>
            <returns>The <see cref="T:Microsoft.OData.Edm.IEdmType"/> representing the return type fo the <paramref name="operationImport"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmTypeResolver.GetReturnType(System.Collections.Generic.IEnumerable{Microsoft.OData.Edm.IEdmOperationImport})">
            <summary>
            Returns the return type of the given operation import group.
            </summary>
            <param name="functionImportGroup">The operation import group to get the return type from.</param>
            <returns>The <see cref="T:Microsoft.OData.Edm.IEdmType"/> representing the return type fo the <paramref name="functionImportGroup"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmTypeResolver.GetParameterType(Microsoft.OData.Edm.IEdmOperationParameter)">
            <summary>
            Gets the function parameter type.
            </summary>
            <param name="operationParameter">The function parameter to get the type for.</param>
            <returns>The <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/> representing the type on the function parameter; or null if no such type could be found.</returns>
        </member>
        <member name="T:Microsoft.OData.Metadata.EdmTypeWriterResolver">
            <summary>
            Responsible for resolving the element type of an entity set with writer semantics.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.EdmTypeWriterResolver.Instance">
            <summary>
            Singleton instance of the resolver.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmTypeWriterResolver.#ctor">
            <summary>
            Private constructor to ensure all access goes through the singleton Instance.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmTypeWriterResolver.GetElementType(Microsoft.OData.Edm.IEdmNavigationSource)">
            <summary>Returns the entity type of the given navigation source.</summary>
            <param name="navigationSource">The navigation source to get the entity type of.</param>
            <returns>The <see cref="T:Microsoft.OData.Edm.IEdmEntityType"/> representing the entity type of the <paramref name="navigationSource" />.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmTypeWriterResolver.GetReturnType(Microsoft.OData.Edm.IEdmOperationImport)">
            <summary>
            Returns the return type of the given operation import.
            </summary>
            <param name="operationImport">The operation import to get the return type from.</param>
            <returns>The <see cref="T:Microsoft.OData.Edm.IEdmType"/> representing the return type fo the <paramref name="operationImport"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmTypeWriterResolver.GetReturnType(System.Collections.Generic.IEnumerable{Microsoft.OData.Edm.IEdmOperationImport})">
            <summary>
            Returns the return type of the given operation import group.
            </summary>
            <param name="functionImportGroup">The operation import group to get the return type from.</param>
            <returns>The <see cref="T:Microsoft.OData.Edm.IEdmType"/> representing the return type fo the <paramref name="functionImportGroup"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.EdmTypeWriterResolver.GetParameterType(Microsoft.OData.Edm.IEdmOperationParameter)">
            <summary>
            Gets the operation parameter type for write.
            </summary>
            <param name="operationParameter">The operation parameter to resolve the type for.</param>
            <returns>The <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/> representing the type on the operation parameter; or null if no such type could be found.</returns>
        </member>
        <member name="T:Microsoft.OData.Metadata.MetadataUtils">
            <summary>
            Class with utility methods for dealing with OData metadata.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtils.GetODataAnnotations(Microsoft.OData.Edm.IEdmModel,Microsoft.OData.Edm.IEdmElement)">
            <summary>
            Gets all the serializable annotations in the OData metadata namespace on the <paramref name="annotatable"/>.
            </summary>
            <param name="model">The <see cref="T:Microsoft.OData.Edm.IEdmModel"/> containing the annotations."/></param>
            <param name="annotatable">The <see cref="T:Microsoft.OData.Edm.IEdmElement"/> to get the annotations from.</param>
            <returns>All annotations in the OData metadata namespace; or null if no annotations are found.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtils.ResolveTypeNameForWrite(Microsoft.OData.Edm.IEdmModel,System.String)">
            <summary>
            Resolves the name of a primitive, complex, entity or collection type to the respective type. Uses the semantics used by writers.
            Thus it implements the strict speced behavior.
            </summary>
            <param name="model">The model to use.</param>
            <param name="typeName">The name of the type to resolve.</param>
            <returns>The <see cref="T:Microsoft.OData.Edm.IEdmType"/> representing the type specified by the <paramref name="typeName"/>;
            or null if no such type could be found.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtils.ResolveTypeNameForRead(Microsoft.OData.Edm.IEdmModel,Microsoft.OData.Edm.IEdmType,System.String,System.Func{Microsoft.OData.Edm.IEdmType,System.String,Microsoft.OData.Edm.IEdmType},Microsoft.OData.Edm.EdmTypeKind@)">
            <summary>
            Resolves the name of a primitive, complex, entity or collection type to the respective type. Uses the semantics used be readers.
            Thus it can be a bit looser.
            </summary>
            <param name="model">The model to use.</param>
            <param name="expectedType">The expected type for the type name being resolved, or null if none is available.</param>
            <param name="typeName">The name of the type to resolve.</param>
            <param name="clientCustomTypeResolver">The function of client cuetom type resolver.</param>
            <param name="typeKind">The type kind of the type, if it could be determined. This will be None if we couldn't tell. It might be filled
            even if the method returns null, for example for Collection types with item types which are not recognized.</param>
            <returns>The <see cref="T:Microsoft.OData.Edm.IEdmType"/> representing the type specified by the <paramref name="typeName"/>;
            or null if no such type could be found.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtils.ResolveTypeName(Microsoft.OData.Edm.IEdmModel,Microsoft.OData.Edm.IEdmType,System.String,System.Func{Microsoft.OData.Edm.IEdmType,System.String,Microsoft.OData.Edm.IEdmType},Microsoft.OData.Edm.EdmTypeKind@)">
            <summary>
            Resolves the name of a primitive, complex, entity or collection type to the respective type.
            </summary>
            <param name="model">The model to use.</param>
            <param name="expectedType">The expected type for the type name being resolved, or null if none is available.</param>
            <param name="typeName">The name of the type to resolve.</param>
            <param name="customTypeResolver">Custom type resolver to use, if null the model is used directly.</param>
            <param name="typeKind">The type kind of the type, if it could be determined. This will be None if we couldn't tell. It might be filled
            even if the method returns null, for example for Collection types with item types which are not recognized.</param>
            <returns>The <see cref="T:Microsoft.OData.Edm.IEdmType"/> representing the type specified by the <paramref name="typeName"/>;
            or null if no such type could be found.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtils.CalculateBindableOperationsForType(Microsoft.OData.Edm.IEdmType,Microsoft.OData.Edm.IEdmModel,Microsoft.OData.Metadata.EdmTypeResolver)">
            <summary>
            Calculates the operations that are bindable to the given type.
            </summary>
            <param name="bindingType">The binding type in question.</param>
            <param name="model">The model to search for operations.</param>
            <param name="edmTypeResolver">The edm type resolver to get the parameter type.</param>
            <returns>An enumeration of operations that are always bindable to the given type.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtils.LookupTypeOfTerm(System.String,Microsoft.OData.Edm.IEdmModel)">
            <summary>
            Looks up the given term name in the given model, and returns the term's type if a matching term was found.
            </summary>
            <param name="qualifiedTermName">The name of the term to lookup, including the namespace.</param>
            <param name="model">The model to look in.</param>
            <returns>The type of the term in the model, or null if no matching term was found.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtils.GetNullablePayloadTypeReference(Microsoft.OData.Edm.IEdmType)">
            <summary>
            Gets the nullable type reference for a payload type; if the payload type is null, uses Edm.String.
            </summary>
            <param name="payloadType">The payload type to get the type reference for.</param>
            <returns>The nullable <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/> for the <paramref name="payloadType"/>.</returns>
        </member>
        <member name="T:Microsoft.OData.Metadata.MetadataUtilsCommon">
            <summary>
            Class with utility methods for dealing with OData metadata that are shared with the OData.Query project.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.IsODataPrimitiveTypeKind(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Checks whether a type reference refers to an OData primitive type (i.e., a primitive, non-stream type).
            </summary>
            <param name="typeReference">The (non-null) <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/> to check.</param>
            <returns>true if the <paramref name="typeReference"/> is an OData primitive type reference; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.IsODataPrimitiveTypeKind(Microsoft.OData.Edm.IEdmType)">
            <summary>
            Checks whether a type refers to an OData primitive type (i.e., a primitive, non-stream type).
            </summary>
            <param name="type">The (non-null) <see cref="T:Microsoft.OData.Edm.IEdmType"/> to check.</param>
            <returns>true if the <paramref name="type"/> is an OData primitive type; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.IsODataComplexTypeKind(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Checks whether a type reference refers to an OData complex type.
            </summary>
            <param name="typeReference">The (non-null) <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/> to check.</param>
            <returns>true if the <paramref name="typeReference"/> is an OData complex type reference; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.IsODataComplexTypeKind(Microsoft.OData.Edm.IEdmType)">
            <summary>
            Checks whether a type refers to an OData complex type.
            </summary>
            <param name="type">The (non-null) <see cref="T:Microsoft.OData.Edm.IEdmType"/> to check.</param>
            <returns>true if the <paramref name="type"/> is an OData complex type; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.IsODataEnumTypeKind(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Checks whether a type reference refers to an OData enumeration type.
            </summary>
            <param name="typeReference">The (non-null) <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/> to check.</param>
            <returns>true if the <paramref name="typeReference"/> is an OData enumeration type reference; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.IsODataEnumTypeKind(Microsoft.OData.Edm.IEdmType)">
            <summary>
            Checks whether a type refers to an OData Enumeration type
            </summary>
            <param name="type">The (non-null) <see cref="T:Microsoft.OData.Edm.IEdmType"/> to check.</param>
            <returns>true if the <paramref name="type"/> is an OData enumeration type; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.IsODataTypeDefinitionTypeKind(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Checks whether a type reference refers to an OData type definition.
            </summary>
            <param name="typeReference">The (non-null) <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/> to check.</param>
            <returns>true if the <paramref name="typeReference"/> is an OData type definition reference; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.IsODataTypeDefinitionTypeKind(Microsoft.OData.Edm.IEdmType)">
            <summary>
            Checks whether a type refers to an OData type definition.
            </summary>
            <param name="type">The (non-null) <see cref="T:Microsoft.OData.Edm.IEdmType"/> to check.</param>
            <returns>true if the <paramref name="type"/> is an OData type definition; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.IsODataEntityTypeKind(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Checks whether a type reference refers to an OData entity type.
            </summary>
            <param name="typeReference">The (non-null) <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/> to check.</param>
            <returns>true if the <paramref name="typeReference"/> is an OData entity type reference; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.IsODataEntityTypeKind(Microsoft.OData.Edm.IEdmType)">
            <summary>
            Checks whether a type refers to an OData entity type.
            </summary>
            <param name="type">The (non-null) <see cref="T:Microsoft.OData.Edm.IEdmType"/> to check.</param>
            <returns>true if the <paramref name="type"/> is an OData entity type; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.IsODataValueType(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Checks whether a type reference is considered a value type in OData.
            </summary>
            <param name="typeReference">The <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/> to check.</param>
            <returns>true if the <paramref name="typeReference"/> is considered a value type; otherwise false.</returns>
            <remarks>
            The notion of value type in the OData space is driven by the IDSMP requirements where
            Clr types denote the primitive types.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.IsNonEntityCollectionType(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Checks whether a type reference refers to a OData collection value type of non-entity elements.
            </summary>
            <param name="typeReference">The (non-null) <see cref="T:Microsoft.OData.Edm.IEdmType"/> to check.</param>
            <returns>true if the <paramref name="typeReference"/> is a non-entity OData collection value type; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.IsEntityCollectionType(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Checks whether a type reference refers to a OData collection value type of entity elements.
            </summary>
            <param name="typeReference">The (non-null) <see cref="T:Microsoft.OData.Edm.IEdmType"/> to check.</param>
            <returns>true if the <paramref name="typeReference"/> is an entity OData collection value type; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.IsStructuredCollectionType(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Checks whether a type reference refers to a OData collection value type of structured elements.
            </summary>
            <param name="typeReference">The (non-null) <see cref="T:Microsoft.OData.Edm.IEdmType"/> to check.</param>
            <returns>true if the <paramref name="typeReference"/> is an OData collection value type of structured type; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.IsNonEntityCollectionType(Microsoft.OData.Edm.IEdmType)">
            <summary>
            Checks whether a type refers to a OData collection value type of non-entity elements.
            </summary>
            <param name="type">The (non-null) <see cref="T:Microsoft.OData.Edm.IEdmType"/> to check.</param>
            <returns>true if the <paramref name="type"/> is a non-entity OData collection value type; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.IsEntityCollectionType(Microsoft.OData.Edm.IEdmType)">
            <summary>
            Checks whether a type refers to a OData collection value type of entity elements.
            </summary>
            <param name="type">The (non-null) <see cref="T:Microsoft.OData.Edm.IEdmType"/> to check.</param>
            <returns>true if the <paramref name="type"/> is an entity OData collection value type; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.IsStructuredCollectionType(Microsoft.OData.Edm.IEdmType)">
            <summary>
            Checks whether a type refers to a OData collection value type of structured elements.
            </summary>
            <param name="type">The (non-null) <see cref="T:Microsoft.OData.Edm.IEdmType"/> to check.</param>
            <returns>true if the <paramref name="type"/> is an OData collection value type of structured type; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.IsEntityOrEntityCollectionType(Microsoft.OData.Edm.IEdmType)">
            <summary>
            Returns whether or not the type is an entity or entity collection type.
            </summary>
            <param name="edmType">The type to check.</param>
            <returns>Whether or not the type is an entity or entity collection type.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.IsEntityOrEntityCollectionType(Microsoft.OData.Edm.IEdmType,Microsoft.OData.Edm.IEdmEntityType@)">
            <summary>
            Returns whether or not the type is an entity or entity collection type.
            </summary>
            <param name="edmType">The type to check.</param>
            <param name="entityType">The entity type. If the given type was a collection, this will be the element type.</param>
            <returns>Whether or not the type is an entity or entity collection type.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.IsStructuredOrStructuredCollectionType(Microsoft.OData.Edm.IEdmType)">
            <summary>
            Returns whether or not the type is a structured or structured collection type.
            </summary>
            <param name="edmType">The type to check.</param>
            <returns>Whether or not the type is a structured or structured collection type.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.IsStructuredOrStructuredCollectionType(Microsoft.OData.Edm.IEdmType,Microsoft.OData.Edm.IEdmStructuredType@)">
            <summary>
            Returns whether or not the type is a structured or structured collection type.
            </summary>
            <param name="edmType">The type to check.</param>
            <param name="structuredType">The structured type. If the given type was a collection, this will be the element type.</param>
            <returns>Whether or not the type is a structured or structured collection type.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.AsPrimitiveOrNull(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Casts an <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/> to a <see cref="T:Microsoft.OData.Edm.IEdmPrimitiveTypeReference"/> or returns null if this is not supported.
            </summary>
            <param name="typeReference">The type reference to convert.</param>
            <returns>An <see cref="T:Microsoft.OData.Edm.IEdmPrimitiveTypeReference"/> instance or null if the <paramref name="typeReference"/> cannot be converted.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.AsEntityOrNull(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Casts an <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/> to a <see cref="T:Microsoft.OData.Edm.IEdmEntityTypeReference"/> or returns null if this is not supported.
            </summary>
            <param name="typeReference">The type reference to convert.</param>
            <returns>An <see cref="T:Microsoft.OData.Edm.IEdmComplexTypeReference"/> instance or null if the <paramref name="typeReference"/> cannot be converted.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.AsStructuredOrNull(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Casts an <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/> to a <see cref="T:Microsoft.OData.Edm.IEdmStructuredTypeReference"/> or returns null if this is not supported.
            </summary>
            <param name="typeReference">The type reference to convert.</param>
            <returns>An <see cref="T:Microsoft.OData.Edm.IEdmStructuredTypeReference"/> instance or null if the <paramref name="typeReference"/> cannot be converted.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.CanConvertPrimitiveTypeTo(Microsoft.OData.UriParser.SingleValueNode,Microsoft.OData.Edm.IEdmPrimitiveType,Microsoft.OData.Edm.IEdmPrimitiveType)">
            <summary>
            Determines if a <paramref name="sourcePrimitiveType"/> is convertibale according to OData rules to the
            <paramref name="targetPrimitiveType"/>.
            </summary>
            <param name="sourceNodeOrNull">The node which is to be converted.</param>
            <param name="sourcePrimitiveType">The type which is to be converted.</param>
            <param name="targetPrimitiveType">The type to which we want to convert.</param>
            <returns>true if the source type is convertible to the target type; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.MetadataUtilsCommon.TryGetConstantNodePrimitiveLDMF(Microsoft.OData.UriParser.SingleValueNode,System.Object@)">
            <summary>
            Tries getting the constant node's primitive L M D F value (which can be converted to other primitive type while primitive AccessPropertyNode can't).
            </summary>
            <param name="sourceNodeOrNull">The Node</param>
            <param name="primitiveValue">THe out parameter if succeeds</param>
            <returns>true if the constant node is for long, float, double or decimal type</returns>
        </member>
        <member name="T:Microsoft.OData.Metadata.ODataAtomErrorDeserializer">
            <summary>
            OData ATOM deserializer for error payloads.
            </summary>
        </member>
        <member name="T:Microsoft.OData.Metadata.ODataAtomErrorDeserializer.DuplicateErrorElementPropertyBitMask">
            <summary>
            An enumeration of the various kinds of elements in an m:error element.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataAtomErrorDeserializer.DuplicateErrorElementPropertyBitMask.None">
            <summary>No duplicates.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataAtomErrorDeserializer.DuplicateErrorElementPropertyBitMask.Code">
            <summary>The 'code' element of the error element.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataAtomErrorDeserializer.DuplicateErrorElementPropertyBitMask.Message">
            <summary>The 'message' element of the error element.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataAtomErrorDeserializer.DuplicateErrorElementPropertyBitMask.InnerError">
            <summary>The 'innererror' element of the error element.</summary>
        </member>
        <member name="T:Microsoft.OData.Metadata.ODataAtomErrorDeserializer.DuplicateInnerErrorElementPropertyBitMask">
            <summary>
            An enumeration of the various kinds of elements in an internal error element.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataAtomErrorDeserializer.DuplicateInnerErrorElementPropertyBitMask.None">
            <summary>No duplicates.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataAtomErrorDeserializer.DuplicateInnerErrorElementPropertyBitMask.Message">
            <summary>The 'message' element of the inner error element.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataAtomErrorDeserializer.DuplicateInnerErrorElementPropertyBitMask.TypeName">
            <summary>The 'type' element of the inner error element.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataAtomErrorDeserializer.DuplicateInnerErrorElementPropertyBitMask.StackTrace">
            <summary>The 'stacktrace' element of the inner error element.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataAtomErrorDeserializer.DuplicateInnerErrorElementPropertyBitMask.InternalException">
            <summary>The 'internalexception' element of the inner error element.</summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.ODataAtomErrorDeserializer.ReadErrorElement(Microsoft.OData.Metadata.BufferingXmlReader,System.Int32)">
            <summary>
            Reads the content of an error element.
            </summary>
            <param name="xmlReader">The Xml reader to read the error payload from.</param>
            <param name="maxInnerErrorDepth">The maximumum number of recursive internalexception elements to allow.</param>
            <returns>The <see cref="T:Microsoft.OData.ODataError"/> representing the error.</returns>
            <remarks>
            This method is used to read top-level errors as well as in-stream errors (from inside the buffering Xml reader).
            Pre-Condition: XmlNodeType.Element - The m:error start element.
            Post-Condition: XmlNodeType.EndElement - The m:error end-element.
                            XmlNodeType.Element - The empty m:error start element.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.Metadata.ODataAtomErrorDeserializer.VerifyErrorElementNotFound(Microsoft.OData.Metadata.ODataAtomErrorDeserializer.DuplicateErrorElementPropertyBitMask@,Microsoft.OData.Metadata.ODataAtomErrorDeserializer.DuplicateErrorElementPropertyBitMask,System.String)">
            <summary>
            Verifies that the specified element was not yet found in a top-level error element.
            </summary>
            <param name="elementsFoundBitField">
            The bit field which stores which elements of an error were found so far.
            </param>
            <param name="elementFoundBitMask">The bit mask for the element to check.</param>
            <param name="elementName">The name of the element to check (used for error reporting).</param>
        </member>
        <member name="M:Microsoft.OData.Metadata.ODataAtomErrorDeserializer.VerifyInnerErrorElementNotFound(Microsoft.OData.Metadata.ODataAtomErrorDeserializer.DuplicateInnerErrorElementPropertyBitMask@,Microsoft.OData.Metadata.ODataAtomErrorDeserializer.DuplicateInnerErrorElementPropertyBitMask,System.String)">
            <summary>
            Verifies that the specified element was not yet found in an inner error element.
            </summary>
            <param name="elementsFoundBitField">
            The bit field which stores which elements of an inner error were found so far.
            </param>
            <param name="elementFoundBitMask">The bit mask for the element to check.</param>
            <param name="elementName">The name of the element to check (used for error reporting).</param>
        </member>
        <member name="M:Microsoft.OData.Metadata.ODataAtomErrorDeserializer.ReadInnerErrorElement(Microsoft.OData.Metadata.BufferingXmlReader,System.Int32,System.Int32)">
            <summary>
            Reads the content of an inner error element.
            </summary>
            <param name="xmlReader">The (buffering) Xml reader to read the error payload from.</param>
            <param name="recursionDepth">The number of times this function has been called recursively.</param>
            <param name="maxInnerErrorDepth">The maximumum number of recursive internalexception elements to allow.</param>
            <returns>The <see cref="T:Microsoft.OData.ODataInnerError"/> representing the inner error.</returns>
            <remarks>
            Pre-Condition: XmlNodeType.Element - the m:innererror or m:internalexception element
            Post-Condition: Any - the node after the m:innererror/m:internalexception end element or the node after the empty m:innererror/m:internalexception element node.
            </remarks>
        </member>
        <member name="T:Microsoft.OData.Metadata.ODataMetadataConstants">
            <summary>
            Constant values related to the Metadata format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataMetadataConstants.XmlNamespace">
            <summary>Attribute use to add xml: namespaces specific attributes.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataMetadataConstants.XmlBaseAttributeName">
            <summary>XML attribute value to indicate the base URI for a document or element.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataMetadataConstants.ODataMetadataNamespace">
            <summary>XML namespace for data service annotations.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataMetadataConstants.ODataMetadataNamespacePrefix">
            <summary>XML namespace prefix for data service annotations.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataMetadataConstants.ODataNamespace">
            <summary>XML namespace for data services.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataMetadataConstants.ODataValueElementName">
            <summary>OData element name for the 'value' element</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataMetadataConstants.ODataErrorElementName">
            <summary>Name of the error element for Xml error responses.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataMetadataConstants.ODataErrorCodeElementName">
            <summary>Name of the error code element for Xml error responses.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataMetadataConstants.ODataErrorMessageElementName">
            <summary>Name of the error message element for Xml error responses.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataMetadataConstants.ODataInnerErrorElementName">
            <summary>Name of the inner error message element for Xml error responses.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataMetadataConstants.ODataInnerErrorMessageElementName">
            <summary>Name of the message element in inner errors for Xml error responses.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataMetadataConstants.ODataInnerErrorTypeElementName">
            <summary>Name of the type element in inner errors for Xml error responses.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataMetadataConstants.ODataInnerErrorStackTraceElementName">
            <summary>Name of the stack trace element in inner errors for Xml error responses.</summary>
        </member>
        <member name="F:Microsoft.OData.Metadata.ODataMetadataConstants.ODataInnerErrorInnerErrorElementName">
            <summary>Name of the inner error element nested in inner errors for Xml error responses.</summary>
        </member>
        <member name="T:Microsoft.OData.Metadata.ODataMetadataReaderUtils">
            <summary>
            Helper methods used by the OData reader for the Metadata format.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.ODataMetadataReaderUtils.CreateXmlReader(System.IO.Stream,System.Text.Encoding,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Creates an Xml reader over the specified stream with the provided settings.
            </summary>
            <param name="stream">The stream to create the XmlReader over.</param>
            <param name="encoding">The encoding to use to read the input.</param>
            <param name="messageReaderSettings">The OData message reader settings used to control the settings of the Xml reader.</param>
            <returns>An <see cref="T:System.Xml.XmlReader"/> instance configured with the provided settings.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.ODataMetadataReaderUtils.CreateXmlReaderSettings(Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Creates a new XmlReaderSettings instance using the encoding.
            </summary>
            <param name="messageReaderSettings">Configuration settings of the OData reader.</param>
            <returns>The Xml reader settings to use for this reader.</returns>
        </member>
        <member name="T:Microsoft.OData.Metadata.ODataMetadataWriterUtils">
            <summary>
            Helper methods used by the OData writer for the Metadata format.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.ODataMetadataWriterUtils.CreateXmlWriter(System.IO.Stream,Microsoft.OData.ODataMessageWriterSettings,System.Text.Encoding)">
            <summary>
            Creates an Xml writer over the specified stream, with the provided settings and encoding.
            </summary>
            <param name="stream">The stream to create the XmlWriter over.</param>
            <param name="messageWriterSettings">The OData message writer settings used to control the settings of the Xml writer.</param>
            <param name="encoding">The encoding used for writing.</param>
            <returns>An <see cref="T:System.Xml.XmlWriter"/> instance configured with the provided settings and encoding.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.ODataMetadataWriterUtils.WriteError(System.Xml.XmlWriter,Microsoft.OData.ODataError,System.Boolean,System.Int32)">
            <summary>
            Write an error message.
            </summary>
            <param name="writer">The Xml writer to write to.</param>
            <param name="error">The error instance to write.</param>
            <param name="includeDebugInformation">A flag indicating whether error details should be written (in debug mode only) or not.</param>
            <param name="maxInnerErrorDepth">The maximumum number of nested inner errors to allow.</param>
        </member>
        <member name="M:Microsoft.OData.Metadata.ODataMetadataWriterUtils.CreateXmlWriterSettings(Microsoft.OData.ODataMessageWriterSettings,System.Text.Encoding)">
            <summary>
            Creates a new XmlWriterSettings instance using the encoding.
            </summary>
            <param name="messageWriterSettings">Configuration settings of the OData writer.</param>
            <param name="encoding">Encoding to use in the writer settings.</param>
            <returns>The Xml writer settings to use for this writer.</returns>
        </member>
        <member name="T:Microsoft.OData.Metadata.XmlReaderExtensions">
            <summary>
            Extension methods for the XML reader.
            </summary>
        </member>
        <member name="M:Microsoft.OData.Metadata.XmlReaderExtensions.ReadElementValue(System.Xml.XmlReader)">
             <summary>
             Reads the value of the element as a string.
             </summary>
             <param name="reader">The reader to read from.</param>
             <returns>The string value of the element.</returns>
             <remarks>
             Pre-Condition: XmlNodeType.Element - the element to read the value for.
                              XmlNodeType.Attribute - an attribute on the element to read the value for.
             Post-Condition: Any - the node after the element.
             
             This method is similar to ReadElementContentAsString with one difference:
             - It ignores Whitespace nodes - this is needed for compatiblity, WCF DS ignores insignificant whitespaces
                 it does that by setting the IgnoreWhitespace option on reader settings, ODataLib can't do that
                 cause it doesn't always control the creation of the XmlReader, so it has to explicitely ignore
                 insignificant whitespaces.
             </remarks>
        </member>
        <member name="M:Microsoft.OData.Metadata.XmlReaderExtensions.ReadElementContentValue(System.Xml.XmlReader)">
             <summary>
             Reads the value of the element as a string.
             </summary>
             <param name="reader">The reader to read from.</param>
             <returns>The string value of the element.</returns>
             <remarks>
             Pre-Condition: XmlNodeType.Element - the element to read the value for.
                              XmlNodeType.Attribute - an attribute on the element to read the value for.
             Post-Condition: XmlNodeType.Element - the element was empty.
                              XmlNodeType.EndElement - the element had some value.
             
             This method is similar to ReadElementContentAsString with two differences:
             - It ignores Whitespace nodes - this is needed for compatiblity, WCF DS ignores insignificant whitespaces
                 it does that by setting the IgnoreWhitespace option on reader settings, ODataLib can't do that
                 cause it doesn't always control the creation of the XmlReader, so it has to explicitely ignore
                 insignificant whitespaces.
             - It leaves the reader positioned on the EndElement node (or the start node if it was empty).
             </remarks>
        </member>
        <member name="M:Microsoft.OData.Metadata.XmlReaderExtensions.NamespaceEquals(System.Xml.XmlReader,System.String)">
            <summary>
            Determines if the current node's namespace equals to the specified <paramref name="namespaceUri"/>
            </summary>
            <param name="reader">The XML reader to get the current node from.</param>
            <param name="namespaceUri">The namespace URI to compare, this must be a string already atomized in the <paramref name="reader"/> name table.</param>
            <returns>true if the current node is in the specified namespace; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.XmlReaderExtensions.LocalNameEquals(System.Xml.XmlReader,System.String)">
            <summary>
            Determines if the current node's local name equals to the specified <paramref name="localName"/>
            </summary>
            <param name="reader">The XML reader to get the current node from.</param>
            <param name="localName">The local name to compare, this must be a string already atomized in the <paramref name="reader"/> name table.</param>
            <returns>true if the current node has the specified local name; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.Metadata.XmlReaderExtensions.TryReadToNextElement(System.Xml.XmlReader)">
            <summary>
            Reads to the next element encountered in an Xml payload.
            </summary>
            <param name="reader">The <see cref="T:System.Xml.XmlReader"/> to read from.</param>
            <returns>true if the method reached the next element; otherwise false.</returns>
        </member>
        <member name="T:Microsoft.OData.MimeConstants">
            <summary>
            Constant values related to media types.
            </summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeAny">
            <summary>Media type for requesting any media type.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeApplicationType">
            <summary>'application' - media type for application types.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeTextType">
            <summary>'text' - media type for text subtypes.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeMultipartType">
            <summary>'multipart' - media type.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeAtomXmlSubType">
            <summary>'atom+xml' - constant for atom+xml subtypes.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeAtomSvcXmlSubType">
            <summary>'atomsvc+xml' - constant for atomsvc+xml subtypes.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeXmlSubType">
            <summary>'xml' - constant for xml subtypes.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeJsonSubType">
            <summary>'json' - constant for JSON subtypes.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimePlainSubType">
            <summary>'plain' - constant for text subtypes.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeJavaScriptType">
            <summary>'javascript' - constant for javascript subtypes.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeOctetStreamSubType">
            <summary>'octet-stream' subtype.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeMixedSubType">
            <summary>'mixed' subtype.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeHttpSubType">
            <summary>'http' subtype.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeTypeParameterName">
            <summary>Parameter name for 'type' parameters.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeTypeParameterValueEntry">
            <summary>Parameter value for type 'resource'.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeTypeParameterValueFeed">
            <summary>Parameter value for type 'feed'.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeShortMetadataParameterName">
            <summary>JSON Light 4.01 short parameter name for 'metadata' parameter.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeMetadataParameterName">
            <summary>JSON Light parameter name for 'odata.metadata' parameter.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeMetadataParameterValueVerbose">
            <summary>Parameter value for 'verbose' JSON.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeMetadataParameterValueFull">
            <summary>JSON Light parameter value 'full'.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeMetadataParameterValueMinimal">
            <summary>JSON Light parameter value 'minimal'.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeMetadataParameterValueNone">
            <summary>JSON Light parameter value 'none'.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeShortStreamingParameterName">
            <summary>JSON Light 4.01 short parameter name for 'streaming' parameter.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeStreamingParameterName">
            <summary>JSON Light Parameter name for 'odata.streaming' parameter.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeIeee754CompatibleParameterName">
            <summary>JSON Light parameter name for 'IEEE754Compatible' parameter.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeParameterValueTrue">
            <summary>JSON Light parameter value 'true'.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeParameterValueFalse">
            <summary>JSON Light parameter value 'false'.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeApplicationXml">
            <summary>Media type for XML bodies.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeApplicationAtomXml">
            <summary>Media type for ATOM payloads.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeApplicationAtomXmlTypeEntry">
            <summary>Media type for links referencing a single resource.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeApplicationAtomXmlTypeFeed">
            <summary>Media type for links referencing a collection of entries.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeApplicationJson">
            <summary>Media type for JSON payloads.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeApplicationOctetStream">
            <summary>Media type for binary raw content.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeApplicationHttp">
            <summary>Media type for batch parts.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeTextXml">
            <summary>Media type for Xml bodies (deprecated).</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeTextPlain">
            <summary>Media type for raw content (except binary).</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.TextJavaScript">
            <summary>Media type for javascript content.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeMultipartMixed">
            <summary>Media type for raw content (except binary).</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.MimeStar">
            <summary>The '*' wildcard usable in type names and subtype names.</summary>
        </member>
        <member name="F:Microsoft.OData.MimeConstants.Separator">
            <summary>Separator between mediat type and subtype.</summary>
        </member>
        <member name="T:Microsoft.OData.MultipartMixed.DependsOnIdsTracker">
            <summary>
            This class is to keep track of dependsOn ids and associated change set state,
            and to return dependsOn ids pertaining to current state of the batch processing.
            </summary>
        </member>
        <member name="F:Microsoft.OData.MultipartMixed.DependsOnIdsTracker.topLevelDependsOnIds">
            <summary>
            List of top-level dependsOn ids seen so far.
            </summary>
        </member>
        <member name="F:Microsoft.OData.MultipartMixed.DependsOnIdsTracker.changeSetDependsOnIds">
            <summary>
            List of depeondsOn ids seen so far in current change set.
            It should be empty if current processing is not within a change set.
            </summary>
        </member>
        <member name="F:Microsoft.OData.MultipartMixed.DependsOnIdsTracker.isInChangeSet">
            <summary>
            Indicates whether current processing is inside a change set.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.DependsOnIdsTracker.#ctor">
            <summary>
            Constructor.
            Initial state is batch start, and within change set.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.DependsOnIdsTracker.ChangeSetStarted">
            <summary>
            Sets up the internal states corresponding to starting of change set.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.DependsOnIdsTracker.ChangeSetEnded">
            <summary>
            Sets up the internal states corresponding to ending of change set.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.DependsOnIdsTracker.AddDependsOnId(System.String)">
            <summary>
            Adds the id into the tracker.
            </summary>
            <param name="id">The operation request id to add.</param>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.DependsOnIdsTracker.GetDependsOnIds">
            <summary>
            Get the list of dependsOn ids for the current state.
            </summary>
            <returns>The read-only list of dependsOn ids for the current batch operation request.</returns>
        </member>
        <member name="T:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchFormat">
            <summary>
            The $batch OData format.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchFormat.ToString">
            <summary>
            The text representation - the name of the format.
            </summary>
            <returns>The name of the format.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchFormat.DetectPayloadKind(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Detects the payload kinds supported by this format for the specified message payload.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="settings">Configuration settings of the OData reader.</param>
            <returns>The set of <see cref="T:Microsoft.OData.ODataPayloadKind"/>s that are supported with the specified payload.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchFormat.CreateInputContext(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Creates an instance of the input context for this format.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageReaderSettings">Configuration settings of the OData reader.</param>
            <returns>The newly created input context.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchFormat.CreateOutputContext(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageWriterSettings)">
            <summary>
            Creates an instance of the output context for this format.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageWriterSettings">Configuration settings of the OData writer.</param>
            <returns>The newly created output context.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchFormat.DetectPayloadKindAsync(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Asynchronously detects the payload kinds supported by this format for the specified message payload.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="settings">Configuration settings of the OData reader.</param>
            <returns>A task that when completed returns the set of <see cref="T:Microsoft.OData.ODataPayloadKind"/>s
            that are supported with the specified payload.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchFormat.CreateInputContextAsync(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Asynchronously creates an instance of the input context for this format.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageReaderSettings">Configuration settings of the OData reader.</param>
            <returns>Task which when completed returned the newly created input context.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchFormat.CreateOutputContextAsync(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageWriterSettings)">
            <summary>
            Creates an instance of the output context for this format.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageWriterSettings">Configuration settings of the OData writer.</param>
            <returns>Task which represents the pending create operation.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchFormat.GetContentType(Microsoft.OData.ODataMediaType,System.Text.Encoding,System.Boolean,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}@)">
            <summary>
            Returns the content type for the MultipartMime Batch format
            </summary>
            <param name="mediaType">The specified media type.</param>
            <param name="encoding">The specified encoding.</param>
            <param name="writingResponse">True if the message writer is being used to write a response.</param>
            <param name="mediaTypeParameters"> The resultant parameters list of the media type.
            For multipart/mixed batch type, boundary parameter will be created as required and be added to parameters list.
            </param>
            <returns>The content-type value for the format.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchFormat.DetectPayloadKindImplementation(Microsoft.OData.ODataMediaType)">
            <summary>
            Detects the payload kind(s) from the message stream.
            </summary>
            <param name="contentType">The content type of the message.</param>
            <returns>An enumerable of zero, one or more payload kinds that were detected from looking at the payload in the message stream.</returns>
        </member>
        <member name="T:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchInputContext">
            <summary>
            MultipartMixed batch format output context.
            </summary>
        </member>
        <member name="F:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchInputContext.batchBoundary">
            <summary>The boundary for writing a batch.</summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchInputContext.#ctor(Microsoft.OData.ODataFormat,Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>Constructor.</summary>
            <param name="format">The format for this input context.</param>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageReaderSettings">Configuration settings of the OData reader.</param>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchInputContext.CreateBatchReader">
            <summary>
            Create a <see cref="T:Microsoft.OData.ODataBatchReader"/>.
            </summary>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataCollectionReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchInputContext.CreateBatchReaderAsync">
            <summary>
            Asynchronously create a <see cref="T:Microsoft.OData.ODataBatchReader"/>.
            </summary>
            <returns>Task which when completed returns the newly created <see cref="T:Microsoft.OData.ODataCollectionReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchInputContext.CreateBatchReaderImplementation(System.Boolean)">
            <summary>
            Create a <see cref="T:Microsoft.OData.ODataBatchReader"/>.
            </summary>
            <param name="synchronous">If the reader should be created for synchronous or asynchronous API.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataCollectionReader"/>.</returns>
        </member>
        <member name="T:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchOutputContext">
            <summary>
            MultipartMixed batch format output context.
            </summary>
        </member>
        <member name="F:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchOutputContext.batchBoundary">
            <summary>The boundary for writing a batch.</summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchOutputContext.#ctor(Microsoft.OData.ODataFormat,Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageWriterSettings)">
            <summary>
            Constructor.
            </summary>
            <param name="format">The format for this output context.</param>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageWriterSettings">Configuration settings of the OData writer.</param>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchOutputContext.CreateODataBatchWriter">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataBatchWriter" /> to write a batch of requests or responses.
            </summary>
            <returns>The created batch writer.</returns>
            <remarks>We don't plan to make this public!</remarks>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchOutputContext.CreateODataBatchWriterAsync">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataBatchWriter" /> to write a batch of requests or responses.
            </summary>
            <returns>A running task for the created batch writer.</returns>
            <remarks>We don't plan to make this public!</remarks>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchOutputContext.CreateODataBatchWriterImplementation">
            <summary>
            Creates a batch writer.
            </summary>
            <returns>The newly created batch writer.</returns>
        </member>
        <member name="F:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReader.batchStream">
            <summary>The batch stream used by the batch reader to divide a batch payload into parts.</summary>
        </member>
        <member name="F:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReader.dependsOnIdsTracker">
            <summary>
            The dependsOnIds tracker for reader processing.
            </summary>
        </member>
        <member name="F:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReader.currentContentId">
            <summary>
            ContentId to apply to the next request. For legacy reasons, this might appear in the mime part headers
            (which is why we have a property to remember it) but it should appear in the headers for the individual request (which will
            be read when the individual request is created).
            </summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReader.#ctor(Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchInputContext,System.String,System.Text.Encoding,System.Boolean)">
            <summary>
            Constructor.
            </summary>
            <param name="inputContext">The input context to read the content from.</param>
            <param name="batchBoundary">The boundary string for the batch structure itself.</param>
            <param name="batchEncoding">The encoding to use to read from the batch stream.</param>
            <param name="synchronous">true if the reader is created for synchronous operation; false for asynchronous.</param>
        </member>
        <member name="P:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReader.MultipartMixedBatchInputContext">
            <summary>
            Gets the reader's input context as the real runtime type.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReader.CreateOperationRequestMessageImplementation">
            <summary>
            Returns the cached <see cref="T:Microsoft.OData.ODataBatchOperationRequestMessage"/> for reading the content of an operation
            in a batch request.
            </summary>
            <returns>The message that can be used to read the content of the batch request operation from.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReader.CreateOperationResponseMessageImplementation">
            <summary>
            Returns the cached <see cref="T:Microsoft.OData.ODataBatchOperationRequestMessage"/> for reading the content of an operation
            in a batch request.
            </summary>
            <returns>The message that can be used to read the content of the batch request operation from.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReader.ReadAtStartImplementation">
            <summary>
            Implementation of the reader logic when in state 'Start'.
            </summary>
            <returns>The batch reader state after the read.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReader.ReadAtOperationImplementation">
            <summary>
            Implementation of the reader logic when in state 'Operation'.
            </summary>
            <returns>The batch reader state after the read.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReader.ReadAtChangesetStartImplementation">
            <summary>
            Implementation of the reader logic when in state 'ChangesetStart'.
            First it validates the reader state is setup properly when reader stream is at the start of changeset.
            </summary>
            <returns>The batch reader state after the read.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReader.ReadAtChangesetEndImplementation">
            <summary>
            Implementation of the reader logic when in state 'ChangesetEnd'.
            </summary>
            <returns>The batch reader state after the read.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReader.GetEndBoundaryState">
            <summary>
            Returns the next state of the batch reader after an end boundary has been found.
            </summary>
            <returns>The next state of the batch reader.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReader.ParseRequestLine(System.String,System.String@,System.Uri@)">
            <summary>
            Parses the request line of a batch operation request.
            </summary>
            <param name="requestLine">The request line as a string.</param>
            <param name="httpMethod">The parsed HTTP method of the request.</param>
            <param name="requestUri">The parsed <see cref="T:System.Uri"/> of the request.</param>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReader.ParseResponseLine(System.String)">
            <summary>
            Parses the response line of a batch operation response.
            </summary>
            <param name="responseLine">The response line as a string.</param>
            <returns>The parsed status code from the response line.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReader.SkipToNextPartAndReadHeaders">
            <summary>
            Skips all data in the stream until the next part is detected; then reads the part's request/response line and headers.
            </summary>
            <returns>The next state of the batch reader after skipping to the next part and reading the part's beginning.</returns>
        </member>
        <member name="T:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream">
            <summary>
            Class used by the <see cref="T:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReader"/> to read the various pieces of a batch payload
            in multipart/mixed format.
            </summary>
            <remarks>
            This stream separates a batch payload into multiple parts by scanning ahead and matching
            a boundary string against the current payload.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.LineBufferLength">
            <summary>
            The default length for the line buffer byte array used to read lines; expecting lines to normally be less than 2000 bytes.
            </summary>
        </member>
        <member name="F:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.lineBuffer">
            <summary>
            The byte array used for reading lines from the stream. We cache the byte array on the stream instance
            rather than allocating a new one for each ReadLine call.
            </summary>
        </member>
        <member name="F:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.batchBoundary">
            <summary>
            The boundary string for the batch structure itself.
            </summary>
        </member>
        <member name="F:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.mediaTypeResolver">
            <summary>The media type resolver to use when interpreting the incoming content type.</summary>
        </member>
        <member name="F:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.batchEncoding">
            <summary>The encoding to use to read from the batch stream.</summary>
        </member>
        <member name="F:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.changesetEncoding">
            <summary>The encoding for a given changeset.</summary>
        </member>
        <member name="F:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.changesetBoundary">
            <summary>
            The boundary string for a changeset (or null if not in a changeset part).
            </summary>
        </member>
        <member name="F:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.multipartMixedBatchInputContext">
            <summary>
            The raw input context used by the reader.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.#ctor(Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchInputContext,System.String,System.Text.Encoding)">
            <summary>
            Constructor.
            </summary>
            <param name="inputContext">The input context to read the content from.</param>
            <param name="batchBoundary">The boundary string for the batch structure itself.</param>
            <param name="batchEncoding">The encoding to use to read from the batch stream.</param>
        </member>
        <member name="P:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.BatchBoundary">
            <summary>
            The boundary string for the batch structure itself.
            </summary>
        </member>
        <member name="P:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.ChangeSetBoundary">
            <summary>
            The boundary string for the current changeset (only set when reading a changeset
            or an operation in a changeset).
            </summary>
            <remarks>When not reading a changeset (or operation in a changeset) this field is null.</remarks>
        </member>
        <member name="P:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.CurrentEncoding">
            <summary>
            The current encoding to use when reading from the stream.
            </summary>
            <remarks>This is the changeset encoding when reading a changeset or the batch encoding otherwise.</remarks>
        </member>
        <member name="P:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.CurrentBoundaries">
            <summary>
            The current boundary string to be used for reading with delimiter.
            </summary>
            <remarks>This is the changeset boundary when reading a changeset or the batch boundary otherwise.</remarks>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.ResetChangeSetBoundary">
            <summary>
            Resets the changeset boundary at the end of the changeset.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.SkipToBoundary(System.Boolean@,System.Boolean@)">
            <summary>
            Skips all the data in the stream until a boundary is found.
            </summary>
            <param name="isEndBoundary">true if the boundary that was found is an end boundary; otherwise false.</param>
            <param name="isParentBoundary">true if the detected boundary is a parent boundary (i.e., the expected boundary is missing).</param>
            <returns>true if a boundary was found; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.ReadWithDelimiter(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads from the batch stream while ensuring that we stop reading at each boundary.
            </summary>
            <param name="userBuffer">The byte array to read bytes into.</param>
            <param name="userBufferOffset">The offset in the buffer where to start reading bytes into.</param>
            <param name="count">The number of bytes to read.</param>
            <returns>The number of bytes actually read.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.ReadWithLength(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads from the batch stream without checking for a boundary delimiter since we
            know the length of the stream.
            </summary>
            <param name="userBuffer">The byte array to read bytes into.</param>
            <param name="userBufferOffset">The offset in the buffer where to start reading bytes into.</param>
            <param name="count">The number of bytes to read.</param>
            <returns>The number of bytes actually read.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.ProcessPartHeader(System.String@)">
            <summary>
            Reads the headers of a part.
            </summary>
            <param name="contentId">Content-ID read from changeset header, null if changeset part detected</param>
            <returns>true if the start of a changeset part was detected; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.ReadHeaders">
            <summary>
            Reads the headers of a batch part or an operation.
            </summary>
            <returns>A dictionary of header names to header values; never null.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.ReadFirstNonEmptyLine">
            <summary>
            Read and return the next line from the batch stream, skipping all empty lines.
            </summary>
            <remarks>This method will throw if end-of-input was reached while looking for the next line.</remarks>
            <returns>The text of the first non-empty line (not including any terminating newline characters).</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.ValidateHeaderLine(System.String,System.String@,System.String@)">
            <summary>
            Parses a header line and validates that it has the correct format.
            </summary>
            <param name="headerLine">The header line to validate.</param>
            <param name="headerName">The name of the header.</param>
            <param name="headerValue">The value of the header.</param>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.ReadLine">
            <summary>
            Reads a line (all bytes until a line resource set) from the underlying stream.
            </summary>
            <returns>Returns the string that was read from the underlying stream (not including a terminating line resource set), or null if the end of input was reached.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.ReadPartHeaders(System.Boolean@)">
            <summary>
            Reads and validates the headers of a batch part.
            </summary>
            <param name="isChangeSetPart">true if the headers indicate a changeset part; otherwise false.</param>
            <returns>A dictionary of header names to header values; never null.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.ValidatePartHeaders(Microsoft.OData.ODataBatchOperationHeaders,System.Boolean@)">
            <summary>
            Validates the headers that have been read for a part.
            </summary>
            <param name="headers">The set of headers to validate.</param>
            <param name="isChangeSetPart">true if the headers indicate a changeset part; otherwise false.</param>
            <returns>The set of validated headers.</returns>
            <remarks>
            An operation part is required to have content type 'application/http' and content transfer
            encoding 'binary'. A changeset is required to have content type 'multipart/mixed'.
            Note that we allow additional headers for batch parts; clients of the library can choose
            to be more strict.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.DetermineChangesetBoundaryAndEncoding(System.String)">
            <summary>
            Parse the content type header value to retrieve the boundary and encoding of a changeset.
            </summary>
            <param name="contentType">The content type to parse.</param>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.EnsureBatchEncoding(System.IO.Stream)">
            <summary>
            Ensure that a batch encoding exists; if not, detect it from the first couple of bytes of the stream.
            </summary>
            <param name="stream">The stream to read.</param>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchReaderStream.DetectEncoding(System.IO.Stream)">
            <summary>Detect the encoding based data from the stream.</summary>
            <param name="stream">The stream to read.</param>
            <returns>The encoding discovered from the bytes in the buffer or the fallback encoding.</returns>
            <remarks>
            We don't have to skip a potential preamble of the encoding since the batch reader
            will skip over everything (incl. the potential preamble) until it finds the first
            boundary.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.batchBoundary">
            <summary>The boundary string for the batch structure itself.</summary>
        </member>
        <member name="F:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.dependsOnIdsTracker">
            <summary>
            The dependsOnIds tracker for writer processing.
            </summary>
        </member>
        <member name="F:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.changeSetBoundary">
            <summary>
            The boundary string for the current changeset (only set when writing a changeset,
            e.g., after WriteStartChangeSet has been called and before WriteEndChangeSet is called).
            </summary>
            <remarks>When not writing a changeset this field is null.</remarks>
        </member>
        <member name="F:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.batchStartBoundaryWritten">
            <summary>
            A flag to indicate whether the batch start boundary has been written or not; important to support writing of empty batches.
            </summary>
        </member>
        <member name="F:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.changesetStartBoundaryWritten">
            <summary>
            A flags to indicate whether the current changeset start boundary has been written or not.
            This is false if a changeset has been started by no changeset boundary was written, and true once the first changeset
            boundary for the current changeset has been written.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.#ctor(Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchOutputContext,System.String)">
            <summary>
            Constructor.
            </summary>
            <param name="rawOutputContext">The output context to write to.</param>
            <param name="batchBoundary">The boundary string for the batch structure itself.</param>
        </member>
        <member name="P:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.RawOutputContext">
            <summary>
            Gets the writer's output context as the real runtime type.
            </summary>
        </member>
        <member name="P:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.CurrentOperationMessage">
            <summary>
            The message for the operation that is currently written; or null if no operation is written right now.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.BatchOperationContentStreamRequested">
            <summary>
            This method is called to notify that the content stream for a batch operation has been requested.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.BatchOperationContentStreamRequestedAsync">
            <summary>
            This method is called to notify that the content stream for a batch operation has been requested.
            </summary>
            <returns>
            A task representing any action that is running as part of the status change of the operation;
            null if no such action exists.
            </returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.BatchOperationContentStreamDisposed">
            <summary>
            This method is called to notify that the content stream of a batch operation has been disposed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.OnInStreamError">
            <summary>
            This method notifies the listener, that an in-stream error is to be written.
            </summary>
            <remarks>
            This listener can choose to fail, if the currently written payload doesn't support in-stream error at this position.
            If the listener returns, the writer should not allow any more writing, since the in-stream error is the last thing in the payload.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.FlushSynchronously">
            <summary>
            Flush the output.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.FlushAsynchronously">
            <summary>
            Flush the output.
            </summary>
            <returns>Task representing the pending flush operation.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.WriteStartChangesetImplementation(System.String)">
            <summary>
            Starts a new changeset - implementation of the actual functionality.
            </summary>
            <param name="changeSetId">The value for changeset boundary for multipart batch.</param>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.GetDependsOnRequestIds(System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Given an enumerable of dependsOnIds, return an enumeration of equivalent request ids.
            </summary>
            <param name="dependsOnIds">The dependsOn ids specifying current request's prerequisites.</param>
            <returns>If <code>dependsOnIds</code> is null, this is the implicit case therefore returns
            an enumerable consists of request id from the <code>dependsOnIdsTracker</code>;
            otherwise, this is explicit case therefore returns value passed in directly.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.CreateOperationRequestMessageImplementation(System.String,System.Uri,System.String,Microsoft.OData.BatchPayloadUriOption,System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataBatchOperationRequestMessage"/> for writing an operation of a batch request
            - implementation of the actual functionality.
            </summary>
            <param name="method">The Http method to be used for this request operation.</param>
            <param name="uri">The Uri to be used for this request operation.</param>
            <param name="contentId">The Content-ID value to write in ChangeSet head.</param>
            <param name="payloadUriOption">
            The format of operation Request-URI, which could be AbsoluteUri, AbsoluteResourcePathAndHost, or RelativeResourcePath.</param>
            <param name="dependsOnIds">The prerequisite request ids of this request. By default its value should be null for Multipart/Mixed
            format and the dependsOnIds implicitly derived per the protocol will be used; Otherwise, non-null will be used as override after
            validation.</param>
            <returns>The message that can be used to write the request operation.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.WriteEndBatchImplementation">
            <summary>
            Ends a batch - implementation of the actual functionality.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.WriteEndChangesetImplementation">
            <summary>
            Ends an active changeset - implementation of the actual functionality.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.CreateOperationResponseMessageImplementation(System.String)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataBatchOperationResponseMessage"/> for writing an operation of a batch response - implementation of the actual functionality.
            </summary>
            <param name="contentId">The Content-ID value to write in ChangeSet head.</param>
            <returns>The message that can be used to write the response operation.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.VerifyNotDisposed">
            <summary>
            Verifies that the writer is not disposed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.WriteStartBatchImplementation">
            <summary>
            Starts a new batch - implementation of the actual functionality.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.StartBatchOperationContent">
            <summary>
            Writes all the pending headers and prepares the writer to write a content of the operation.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.DisposeBatchWriterAndSetContentStreamRequestedState">
            <summary>
            Disposes the batch writer and set the 'OperationStreamRequested' batch writer state;
            called after the flush operation(s) have completed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.WriteStartBoundaryForOperation">
            <summary>
            Writes the start boundary for an operation. This is either the batch or the changeset boundary.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriter.WritePendingMessageData(System.Boolean)">
            <summary>
            Write any pending headers for the current operation message (if any).
            </summary>
            <param name="reportMessageCompleted">
            A flag to control whether after writing the pending data we report writing the message to be completed or not.
            </param>
        </member>
        <member name="T:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriterUtils">
            <summary>
            Helper methods used by the ODataBatchWriter.
            </summary>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriterUtils.CreateBatchBoundary(System.Boolean)">
            <summary>
            Creates a new batch boundary string based on a randomly created GUID.
            </summary>
            <param name="isResponse">A flag indicating whether the boundary should be created for a request or a response.</param>
            <returns>The newly created batch boundary as string.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriterUtils.CreateChangeSetBoundary(System.Boolean,System.String)">
            <summary>
            Creates a new changeset boundary string based on an id.
            </summary>
            <param name="isResponse">A flag indicating whether the boundary should be created for a request or a response.</param>
            <param name="changesetId">The value for construction of changeset boundary for multipart batch.</param>
            <returns>The newly created changeset boundary as string.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriterUtils.CreateMultipartMixedContentType(System.String)">
            <summary>
            Creates the multipart/mixed content type with the specified boundary (if any).
            </summary>
            <param name="boundary">The boundary to be used for this operation or null if no boundary should be included.</param>
            <returns>The multipart/mixed content type with the specified boundary (if any).</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriterUtils.GetBatchBoundaryFromMediaType(Microsoft.OData.ODataMediaType)">
            <summary>
            Gets the boundary from a multipart/mixed batch media type.
            </summary>
            <param name="mediaType">The multipart/mixed batch media type with a boundary type parameter.</param>
            <returns>The boundary for the media type.</returns>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriterUtils.WriteStartBoundary(System.IO.TextWriter,System.String,System.Boolean)">
            <summary>
            Write the start boundary.
            </summary>
            <param name="writer">Writer to which the boundary needs to be written.</param>
            <param name="boundary">Boundary string.</param>
            <param name="firstBoundary">true if this is the first start boundary.</param>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriterUtils.WriteEndBoundary(System.IO.TextWriter,System.String,System.Boolean)">
            <summary>
            Write the end boundary.
            </summary>
            <param name="writer">Writer to which the end boundary needs to be written.</param>
            <param name="boundary">Boundary string.</param>
            <param name="missingStartBoundary">true if there was no start boundary written before this end boundary.</param>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriterUtils.WriteRequestPreamble(System.IO.TextWriter,System.String,System.Uri,System.Uri,System.Boolean,System.String,Microsoft.OData.BatchPayloadUriOption)">
            <summary>
            Writes the headers, (optional) Content-ID and the request line.
            </summary>
            <param name="writer">Writer to write to.</param>
            <param name="httpMethod">The Http method to be used for this request operation.</param>
            <param name="uri">The Uri to be used for this request operation.</param>
            <param name="baseUri">The service root Uri to be used for this request operation.</param>
            <param name="inChangeSetBound">Whether we are in ChangeSetBound.</param>
            <param name="contentId">The Content-ID value to write in ChangeSet head.</param>
            <param name="payloadUriOption">The format of operation Request-URI, which could be AbsoluteUri, AbsoluteResourcePathAndHost, or RelativeResourcePath.</param>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriterUtils.WriteResponsePreamble(System.IO.TextWriter,System.Boolean,System.String)">
            <summary>
            Writes the headers and response line.
            </summary>
            <param name="writer">Writer to write to.</param>
            <param name="inChangeSetBound">Whether we are in ChangeSetBound.</param>
            <param name="contentId">The Content-ID value to write in ChangeSet head.</param>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriterUtils.WriteChangeSetPreamble(System.IO.TextWriter,System.String)">
            <summary>
            Writes the preamble for a change set (e.g., the content-type header).
            </summary>
            <param name="writer">Writer to write to.</param>
            <param name="changeSetBoundary">The boundary string to use for the change set.</param>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriterUtils.WriteHeaders(System.IO.TextWriter,System.Boolean,System.String)">
            <summary>
            Writes the headers.
            </summary>
            <param name="writer">Writer to write headers.</param>
            <param name="inChangeSetBound">Whether we are in ChangeSetBound.</param>
            <param name="contentId">The Content-ID value to write in ChangeSet head.</param>
        </member>
        <member name="M:Microsoft.OData.MultipartMixed.ODataMultipartMixedBatchWriterUtils.WriteRequestUri(System.IO.TextWriter,System.String,System.Uri,System.Uri,Microsoft.OData.BatchPayloadUriOption)">
            <summary>
            Writes the request line.
            </summary>
            <param name="writer">Writer to write request uri.</param>
            <param name="httpMethod">The Http method to be used for this request operation.</param>
            <param name="uri">The Uri to be used for this request operation.</param>
            <param name="baseUri">The service root Uri to be used for this request operation.</param>
            <param name="payloadUriOption">The format of operation Request-URI, which could be AbsoluteUri, AbsoluteResourcePathAndHost, or RelativeResourcePath.</param>
        </member>
        <member name="T:Microsoft.OData.NonDisposingStream">
            <summary>
            Stream wrapper for the message stream to ignore the Stream.Dispose method so that readers/writers on top of
            it can be disposed without affecting it.
            </summary>
        </member>
        <member name="F:Microsoft.OData.NonDisposingStream.innerStream">
            <summary>
            Stream that is being wrapped.
            </summary>
        </member>
        <member name="M:Microsoft.OData.NonDisposingStream.#ctor(System.IO.Stream)">
            <summary>
            Constructs an instance of the stream wrapper class.
            </summary>
            <param name="innerStream">Stream that is being wrapped.</param>
        </member>
        <member name="P:Microsoft.OData.NonDisposingStream.CanRead">
            <summary>
            Determines if the stream can read.
            </summary>
        </member>
        <member name="P:Microsoft.OData.NonDisposingStream.CanSeek">
            <summary>
            Determines if the stream can seek.
            </summary>
        </member>
        <member name="P:Microsoft.OData.NonDisposingStream.CanWrite">
            <summary>
            Determines if the stream can write.
            </summary>
        </member>
        <member name="P:Microsoft.OData.NonDisposingStream.Length">
            <summary>
            Returns the length of the stream.
            </summary>
        </member>
        <member name="P:Microsoft.OData.NonDisposingStream.Position">
            <summary>
            Gets or sets the position in the stream.
            </summary>
        </member>
        <member name="M:Microsoft.OData.NonDisposingStream.Flush">
            <summary>
            Flush the stream to the underlying storage.
            </summary>
        </member>
        <member name="M:Microsoft.OData.NonDisposingStream.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads data from the stream.
            </summary>
            <param name="buffer">The buffer to read the data to.</param>
            <param name="offset">The offset in the buffer to write to.</param>
            <param name="count">The number of bytes to read.</param>
            <returns>The number of bytes actually read.</returns>
        </member>
        <member name="M:Microsoft.OData.NonDisposingStream.ReadAsync(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.OData.NonDisposingStream.Seek(System.Int64,System.IO.SeekOrigin)">
            <summary>
            Seeks the stream.
            </summary>
            <param name="offset">The offset to seek to.</param>
            <param name="origin">The origin of the seek operation.</param>
            <returns>The new position in the stream.</returns>
        </member>
        <member name="M:Microsoft.OData.NonDisposingStream.SetLength(System.Int64)">
            <summary>
            Sets the length of the stream.
            </summary>
            <param name="value">The length in bytes to set.</param>
        </member>
        <member name="M:Microsoft.OData.NonDisposingStream.Write(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Writes to the stream.
            </summary>
            <param name="buffer">The buffer to get data from.</param>
            <param name="offset">The offset in the buffer to start from.</param>
            <param name="count">The number of bytes to write.</param>
        </member>
        <member name="M:Microsoft.OData.NonDisposingStream.WriteAsync(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="T:Microsoft.OData.ODataAction">
            <summary>Represents an OData action.</summary>
        </member>
        <member name="T:Microsoft.OData.ODataAnnotatable">
            <summary>
            Base class for all annotatable types in OData library.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataAnnotatable.instanceAnnotations">
            <summary>
            Collection of custom instance annotations.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataAnnotatable.TypeAnnotation">
            <summary>
            The annotation for storing @odata.type.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataAnnotatable.GetInstanceAnnotations">
            <summary>
            Gets the custom instance annotations.
            </summary>
            <returns>The custom instance annotations.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataAnnotatable.SetInstanceAnnotations(System.Collections.Generic.ICollection{Microsoft.OData.ODataInstanceAnnotation})">
            <summary>
            Sets the custom instance annotations.
            </summary>
            <param name="value">The new value to set.</param>
        </member>
        <member name="T:Microsoft.OData.ODataAsynchronousReader">
            <summary>
            Class for reading OData async messages.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataAsynchronousReader.rawInputContext">
            <summary>
            The input context to read the content from.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataAsynchronousReader.container">
            <summary>
            The optional dependency injection container to get related services for message writing.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousReader.#ctor(Microsoft.OData.ODataRawInputContext,System.Text.Encoding)">
            <summary>
            Constructor.
            </summary>
            <param name="rawInputContext">The input context to read the content from.</param>
            <param name="encoding">The encoding for the underlying stream.</param>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousReader.CreateResponseMessage">
            <summary>
            Returns a message for reading the content of an async response.
            </summary>
            <returns>A response message for reading the content of the async response.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousReader.CreateResponseMessageAsync">
            <summary>
            Asynchronously returns a message for reading the content of an async response.
            </summary>
            <returns>A response message for reading the content of the async response.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousReader.ValidateReaderNotDisposed">
            <summary>
            Validates that the async reader is not disposed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousReader.VerifyCallAllowed(System.Boolean)">
            <summary>
            Verifies that a call is allowed to the reader.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousReader.VerifyCanCreateResponseMessage(System.Boolean)">
            <summary>
            Verifies that calling CreateResponseMessage is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousReader.CreateResponseMessageImplementation">
            <summary>
            Returns an <see cref="T:Microsoft.OData.ODataAsynchronousResponseMessage"/> for reading the content of an async response - implementation of the actual functionality.
            </summary>
            <returns>The message that can be used to read the response.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousReader.ReadInnerEnvelope(System.Int32@,System.Collections.Generic.IDictionary{System.String,System.String}@)">
            <summary>
            Reads the envelope from the inner HTTP message.
            </summary>
            <param name="statusCode">The status code to use for the async response message.</param>
            <param name="headers">The headers to use for the async response message.</param>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousReader.ReadFirstNonEmptyLine">
            <summary>
            Read and return the next line from the stream, skipping all empty lines.
            </summary>
            <returns>The text of the first non-empty line (not including any terminating newline characters).</returns>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousReader.ParseResponseLine(System.String)">
            <summary>
            Parses the response line of an async response.
            </summary>
            <param name="responseLine">The response line as a string.</param>
            <returns>The parsed status code from the response line.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousReader.ReadHeaders">
            <summary>
            Reads the headers of an async response.
            </summary>
            <returns>A dictionary of header names to header values; never null.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousReader.ValidateHeaderLine(System.String,System.String@,System.String@)">
            <summary>
            Parses a header line and validates that it has the correct format.
            </summary>
            <param name="headerLine">The header line to validate.</param>
            <param name="headerName">The name of the header.</param>
            <param name="headerValue">The value of the header.</param>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousReader.ReadLine">
            <summary>
            Reads a line from the underlying stream.
            </summary>
            <returns>The line read from the stream.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousReader.ReadByte">
            <summary>
            Reads a byte from the underlying stream.
            </summary>
            <returns>The byte read from the stream.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataAsynchronousResponseMessage">
            <summary>
            Representing the message of a non-batch async response.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataAsynchronousResponseMessage.writing">
            <summary>True if we are wrting the response; false if we are reading it.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataAsynchronousResponseMessage.stream">
            <summary>The stream of the response message.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataAsynchronousResponseMessage.writeEnvelope">
            <summary>The action to write envelope for the inner message before returning the stream.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataAsynchronousResponseMessage.container">
            <summary>The dependency injection container to get related services.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataAsynchronousResponseMessage.envelopeWritten">
            <summary>Prevent the envelope for the inner message from being written more than one time.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataAsynchronousResponseMessage.statusCode">
            <summary>The result status code of the response message.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataAsynchronousResponseMessage.headers">
            <summary>The set of headers of the response message.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousResponseMessage.#ctor(System.IO.Stream,System.Int32,System.Collections.Generic.IDictionary{System.String,System.String},System.Action{Microsoft.OData.ODataAsynchronousResponseMessage},System.Boolean,System.IServiceProvider)">
            <summary>
            Constructor.
            </summary>
            <param name="stream">The stream underlying the response message.</param>
            <param name="statusCode">The status code to use for the async response message.</param>
            <param name="headers">The headers to use for the async response message.</param>
            <param name="writeEnvelope">The action to write envelope for the inner message before returning the stream.</param>
            <param name="writing">true if the response message is being written; false when it is read.</param>
            <param name="container">The dependency injection container to get related services.</param>
        </member>
        <member name="P:Microsoft.OData.ODataAsynchronousResponseMessage.StatusCode">
            <summary>Gets or sets the result status code of the response message.</summary>
            <returns>The result status code of the response message.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataAsynchronousResponseMessage.Headers">
            <summary>Gets an enumerable over all the headers for this message.</summary>
            <returns>An enumerable over all the headers for this message.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataAsynchronousResponseMessage.Container">
            <summary>
            The dependency injection container to get related services.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousResponseMessage.GetHeader(System.String)">
            <summary>Returns a value of an HTTP header of this operation.</summary>
            <returns>The value of the HTTP header, or null if no such header was present on the message.</returns>
            <param name="headerName">The name of the header to get.</param>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousResponseMessage.SetHeader(System.String,System.String)">
            <summary>Sets the value of an HTTP header of this operation.</summary>
            <param name="headerName">The name of the header to set.</param>
            <param name="headerValue">The value of the HTTP header or null if the header should be removed.</param>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousResponseMessage.GetStream">
            <summary>Gets the stream backing for this message.</summary>
            <returns>The stream backing for this message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousResponseMessage.GetStreamAsync">
            <summary>Asynchronously get the stream backing for this message.</summary>
            <returns>The stream backing for this message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousResponseMessage.CreateMessageForWriting(System.IO.Stream,System.Action{Microsoft.OData.ODataAsynchronousResponseMessage},System.IServiceProvider)">
            <summary>
            Creates an async response message that can be used to write the response content to.
            </summary>
            <param name="outputStream">The output stream underlying the response message.</param>
            <param name="writeEnvelope">The action to write envelope for the inner message before returning the stream.</param>
            <param name="container">The dependency injection container to get related services.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataAsynchronousResponseMessage"/> that can be used to write the response content.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousResponseMessage.CreateMessageForReading(System.IO.Stream,System.Int32,System.Collections.Generic.IDictionary{System.String,System.String},System.IServiceProvider)">
            <summary>
            Creates an async response message that can be used to read the response content from.
            </summary>
            <param name="stream">The input stream underlying the response message.</param>
            <param name="statusCode">The status code to use for the async response message.</param>
            <param name="headers">The headers to use for the async response message.</param>
            <param name="container">The dependency injection container to get related services.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataAsynchronousResponseMessage"/> that can be used to read the response content.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousResponseMessage.VerifyCanSetHeaderAndStatusCode">
            <summary>
            Verifies that setting a header or the status code is allowed
            </summary>
            <remarks>
            We allow modifying the headers and the status code only if we are writing the message.
            </remarks>
        </member>
        <member name="T:Microsoft.OData.ODataAsynchronousWriter">
            <summary>
            Class for writing OData async messages; also verifies the proper count of write calls on the writer.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataAsynchronousWriter.rawOutputContext">
            <summary>
            The output context to write to.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataAsynchronousWriter.container">
            <summary>
            The optional dependency injection container to get related services for message writing.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataAsynchronousWriter.responseMessageCreated">
            <summary>
            Prevent the response message from being created more than one time since an async response message can only contain one inner message.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousWriter.#ctor(Microsoft.OData.ODataRawOutputContext)">
            <summary>
            Constructor.
            </summary>
            <param name="rawOutputContext">The output context to write to.</param>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousWriter.CreateResponseMessage">
            <summary>
            Creates a message for writing an async response.
            </summary>
            <returns>The message that can be used to write the async response.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousWriter.CreateResponseMessageAsync">
            <summary>
            Asynchronously creates a message for writing an async response.
            </summary>
            <returns>The message that can be used to write the async response.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousWriter.Flush">
            <summary>
            Flushes the write buffer to the underlying stream.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousWriter.FlushAsync">
            <summary>
            Asynchronously flushes the write buffer to the underlying stream.
            </summary>
            <returns>A task instance that represents the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousWriter.Microsoft#OData#IODataOutputInStreamErrorListener#OnInStreamError">
            <summary>
            This method notifies the listener, that an in-stream error is to be written.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousWriter.ValidateWriterNotDisposed">
            <summary>
            Validates that the async writer is not disposed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousWriter.VerifyCallAllowed(System.Boolean)">
            <summary>
            Verifies that a call is allowed to the writer.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousWriter.VerifyCanFlush(System.Boolean)">
            <summary>
            Verifies that the writer is in correct state for the Flush operation.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousWriter.VerifyCanCreateResponseMessage(System.Boolean)">
            <summary>
            Verifies that calling CreateResponseMessage is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousWriter.CreateResponseMessageImplementation">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataAsynchronousResponseMessage"/> for writing an operation of an async response - implementation of the actual functionality.
            </summary>
            <returns>The message that can be used to write the response.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataAsynchronousWriter.WriteInnerEnvelope(Microsoft.OData.ODataAsynchronousResponseMessage)">
            <summary>
            Writes the envelope for the inner HTTP message.
            </summary>
            <param name="responseMessage">The response message to write the envelope.</param>
        </member>
        <member name="T:Microsoft.OData.ODataBatchOperationHeaders">
            <summary>
            A dictionary implementation with special key-matching semantics; it accepts case-insensitive matches
            but prefers a case-sensitive one (if present).
            </summary>
            <remarks>As an implementation choice we did not use a second dictionary to maintain a cache of case-insensitive
            keys since we don't want to pay the price of an extra dictionary for cases where the looked up keys
            match case sensitively (as per spec, should be the default case).</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataBatchOperationHeaders.caseSensitiveDictionary">
            <summary>The backing dictionary using case-sensitive key comparison.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationHeaders.#ctor">
            <summary>
            Constructor.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationHeaders.Item(System.String)">
            <summary>
            Gets or sets the element with the specified key.
            </summary>
            <param name="key">The key of the element to get or set.</param>
            <returns>The element with the specified key.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationHeaders.Add(System.String,System.String)">
            <summary>
            Adds an element with the provided key and value to the dictionary.
            </summary>
            <param name="key">The object to use as the key of the element to add.</param>
            <param name="value">The object to use as the value of the element to add.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationHeaders.ContainsKeyOrdinal(System.String)">
            <summary>
            Determines whether the dictionary contains an element with the specified key using case-sensitive comparison.
            </summary>
            <param name="key">The key to locate in the dictionary.</param>
            <returns>true if the dictionary contains an element with the <paramref name="key"/>; otherwise, false.</returns>
            <remarks>This method will only try to match the key using case-sensitive comparison.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationHeaders.Remove(System.String)">
            <summary>
            Removes the resource with the specified <paramref name="key"/> from the headers.
            </summary>
            <param name="key">The key of the item to remove.</param>
            <returns>true if the item with the specified <paramref name="key"/> was removed; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationHeaders.TryGetValue(System.String,System.String@)">
            <summary>
            Gets the value associated with the specified key.
            </summary>
            <param name="key">The key whose value to get.</param>
            <param name="value">When this method returns, the value associated with the specified key, if the key is found;
            otherwise, the default value for the type of the value parameter. This parameter is passed uninitialized.</param>
            <returns>true if the dictionary contains an element with the specified key; otherwise, false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationHeaders.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            <returns>An enumerator that can be used to iterate through the collection.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationHeaders.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            <returns>An enumerator that can be used to iterate through the collection.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationHeaders.FindKeyIgnoreCase(System.String)">
            <summary>
            Finds <paramref name="key"/> in the case sensitive dictionary ignoring the case for comparison.
            </summary>
            <param name="key">The key to find.</param>
            <returns>The key from the case sensitive dictionary that matched the <paramref name="key"/> or null if no match was found.</returns>
            <remarks>This method throws if multiple case insensitive matches for the specified <paramref name="key"/> exist.</remarks>
        </member>
        <member name="T:Microsoft.OData.ODataBatchOperationMessage">
            <summary>
            Implementation class wrapped by the <see cref="T:Microsoft.OData.ODataBatchOperationRequestMessage"/> and
            <see cref="T:Microsoft.OData.ODataBatchOperationResponseMessage"/> implementations.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchOperationMessage.operationListener">
            <summary>Listener interface to be notified of operation changes.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchOperationMessage.payloadUriConverter">
            <summary>The URL converter to perform custom URL conversion for URLs read or written from/to the payload.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchOperationMessage.contentStreamCreatorFunc">
            <summary>A function to retrieve the content stream for this batch operation message.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchOperationMessage.headers">
            <summary>The set of headers for this operation.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationMessage.#ctor(System.Func{System.IO.Stream},Microsoft.OData.ODataBatchOperationHeaders,Microsoft.OData.IODataBatchOperationListener,Microsoft.OData.IODataPayloadUriConverter,System.Boolean)">
            <summary>
            Constructor. Base class constructor to create a message for an operation of a batch request/response.
            </summary>
            <param name="contentStreamCreatorFunc">A function to retrieve the content stream for this batch operation message.</param>
            <param name="headers">The headers of the batch operation message.</param>
            <param name="operationListener">Listener interface to be notified of part changes.</param>
            <param name="payloadUriConverter">The URL resolver to perform custom URL resolution for URLs read or written from/to the payload.</param>
            <param name="writing">true if the request message is being written; false when it is read.</param>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationMessage.Headers">
            <summary>
            Returns an enumerable over all the headers for this message.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationMessage.GetHeader(System.String)">
            <summary>
            Returns a value of an HTTP header of this operation.
            </summary>
            <param name="headerName">The name of the header to get.</param>
            <returns>The value of the HTTP header, or null if no such header was present on the message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationMessage.SetHeader(System.String,System.String)">
            <summary>
            Sets the value of an HTTP header of this operation.
            </summary>
            <param name="headerName">The name of the header to set.</param>
            <param name="headerValue">The value of the HTTP header or 'null' if the header should be removed.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationMessage.GetStream">
            <summary>
            Get the stream backing this message.
            </summary>
            <returns>The stream for this message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationMessage.GetStreamAsync">
            <summary>
            Asynchronously get the stream backing this message.
            </summary>
            <returns>The stream for this message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationMessage.QueryInterface``1">
            <summary>
            Queries the message for the specified interface type.
            </summary>
            <typeparam name="TInterface">The type of the interface to query for.</typeparam>
            <returns>The instance of the interface asked for or null if it was not implemented by the message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationMessage.ResolveUrl(System.Uri,System.Uri)">
            <summary>
            Method to implement a custom URL resolution scheme.
            This method returns null if not custom resolution is desired.
            If the method returns a non-null URL that value will be used without further validation.
            </summary>
            <param name="baseUri">The (optional) base URI to use for the resolution.</param>
            <param name="payloadUri">The URI read from the payload.</param>
            <returns>
            A <see cref="T:System.Uri"/> instance that reflects the custom resolution of the method arguments
            into a URL or null if no custom resolution is desired; in that case the default resolution is used.
            </returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationMessage.PartHeaderProcessingCompleted">
            <summary>
            Indicates that the headers and request/response line have been read or written.
            Can be called only once per batch part and headers cannot be modified
            anymore after this method was called.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationMessage.VerifyNotCompleted">
            <summary>
            Verifies that writing of the message has not been completed; this is called from all methods
            that are only valid to be called before the message content is written or the message
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataBatchOperationReadStream">
            <summary>
            A stream handed to clients from ODataBatchOperationMessage.GetStream or ODataBatchOperationMessage.GetStreamAsync.
            This stream communicates status changes to the owning batch reader (via IODataBatchOperationListener)
            to prevent clients to use the batch reader while a content stream is still in use.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchOperationReadStream.batchReaderStream">
            <summary>
            The batch stream underlying this operation stream.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationReadStream.#ctor(Microsoft.OData.ODataBatchReaderStream,Microsoft.OData.IODataBatchOperationListener)">
            <summary>
            Constructor.
            </summary>
            <param name="batchReaderStream">The underlying stream to read from.</param>
            <param name="listener">Listener interface to be notified of operation changes.</param>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationReadStream.CanRead">
            <summary>
            Determines if the stream can read - this one can
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationReadStream.CanSeek">
            <summary>
            Determines if the stream can seek - this one can't
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationReadStream.CanWrite">
            <summary>
            Determines if the stream can write - this one can't
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationReadStream.Length">
            <summary>
            Returns the length of the stream. Not supported by this stream.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationReadStream.Position">
            <summary>
            Gets or sets the position in the stream. Not supported by this stream.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationReadStream.Flush">
            <summary>
            Flush the stream; not supported for a read stream.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationReadStream.SetLength(System.Int64)">
            <summary>
            Sets the length of the stream.
            </summary>
            <param name="value">The length in bytes to set.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationReadStream.Write(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Writes to the stream.
            </summary>
            <param name="buffer">The buffer to get data from.</param>
            <param name="offset">The offset in the buffer to start from.</param>
            <param name="count">The number of bytes to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationReadStream.Create(Microsoft.OData.ODataBatchReaderStream,Microsoft.OData.IODataBatchOperationListener,System.Int32)">
            <summary>
            Create a batch operation read stream over the specified batch stream with a given content length.
            </summary>
            <param name="batchReaderStream">The batch stream underlying the operation stream to create.</param>
            <param name="listener">The batch operation listener.</param>
            <param name="length">The content length of the operation stream.</param>
            <returns>A <see cref="T:Microsoft.OData.ODataBatchOperationReadStream"/> to read the content of a batch operation from.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationReadStream.Create(Microsoft.OData.ODataBatchReaderStream,Microsoft.OData.IODataBatchOperationListener)">
            <summary>
            Create a batch operation read stream over the specified batch stream using the batch delimiter to detect the end of the stream.
            </summary>
            <param name="batchReaderStream">The batch stream underlying the operation stream to create.</param>
            <param name="listener">The batch operation listener.</param>
            <returns>A <see cref="T:Microsoft.OData.ODataBatchOperationReadStream"/> to read the content of a batch operation from.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataBatchOperationReadStream.ODataBatchOperationReadStreamWithLength">
            <summary>
            A batch operation stream with the content length specified.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchOperationReadStream.ODataBatchOperationReadStreamWithLength.length">
            <summary>The length of the operation content.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationReadStream.ODataBatchOperationReadStreamWithLength.#ctor(Microsoft.OData.ODataBatchReaderStream,Microsoft.OData.IODataBatchOperationListener,System.Int32)">
            <summary>
            Constructor.
            </summary>
            <param name="batchReaderStream">The underlying batch stream to write the message to.</param>
            <param name="listener">Listener interface to be notified of operation changes.</param>
            <param name="length">The total length of the stream.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationReadStream.ODataBatchOperationReadStreamWithLength.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads data from the stream.
            </summary>
            <param name="buffer">The buffer to read the data to.</param>
            <param name="offset">The offset in the buffer to write to.</param>
            <param name="count">The number of bytes to read.</param>
            <returns>The number of bytes actually read.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataBatchOperationReadStream.ODataBatchOperationReadStreamWithDelimiter">
            <summary>
            A batch operation read stream with no content length so we have to check for the boundary.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchOperationReadStream.ODataBatchOperationReadStreamWithDelimiter.exhausted">
            <summary>true if the stream has been exhausted and no further reads can happen; otherwise false.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationReadStream.ODataBatchOperationReadStreamWithDelimiter.#ctor(Microsoft.OData.ODataBatchReaderStream,Microsoft.OData.IODataBatchOperationListener)">
            <summary>
            Constructor.
            </summary>
            <param name="batchReaderStream">The underlying batch stream to write the message to.</param>
            <param name="listener">Listener interface to be notified of operation changes.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationReadStream.ODataBatchOperationReadStreamWithDelimiter.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads data from the stream.
            </summary>
            <param name="buffer">The buffer to read the data to.</param>
            <param name="offset">The offset in the buffer to write to.</param>
            <param name="count">The number of bytes to read.</param>
            <returns>The number of bytes actually read.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataBatchOperationRequestMessage">
            <summary>
            Message representing an operation in a batch request.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchOperationRequestMessage.ContentId">
            <summary>
            The Content-ID for this request message.</summary>
            <returns>The Content-ID for this request message.</returns>
        </member>
        <member name="F:Microsoft.OData.ODataBatchOperationRequestMessage.groupId">
            <summary>
            The Group Id for this request message. Can be null.
            </summary>
            <returns>The Group Id for this request message.</returns>
        </member>
        <member name="F:Microsoft.OData.ODataBatchOperationRequestMessage.message">
            <summary>
            The actual implementation of the message.
            We don't derive from this class since we want the actual implementation to remain internal
            while this class is public.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchOperationRequestMessage.dependsOnIds">
            <summary>
            The list of request prerequisites for execution of current batch operation.
            ODL-caller needs to ensure that all the prerequisites have returned successfully
            before current operation can start.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationRequestMessage.#ctor(System.Func{System.IO.Stream},System.String,System.Uri,Microsoft.OData.ODataBatchOperationHeaders,Microsoft.OData.IODataBatchOperationListener,System.String,Microsoft.OData.IODataPayloadUriConverter,System.Boolean,System.IServiceProvider,System.Collections.Generic.IEnumerable{System.String},System.String)">
            <summary>
            Constructor. Creates a request message for an operation of a batch request.
            </summary>
            <param name="contentStreamCreatorFunc">A function to create the content stream.</param>
            <param name="method">The HTTP method used for this request message.</param>
            <param name="requestUrl">The request Url for this request message.</param>
            <param name="headers">The headers for this request message.</param>
            <param name="operationListener">Listener interface to be notified of operation changes.</param>
            <param name="contentId">The content-ID for the operation request message.</param>
            <param name="payloadUriConverter">The optional URL converter to perform custom URL conversion for URLs written to the payload.</param>
            <param name="writing">true if the request message is being written; false when it is read.</param>
            <param name="container">The dependency injection container to get related services.</param>
            <param name="dependsOnIds">
            Request or group Ids that current request has dependency on. Values are added to a new list.
            Empty list will be created if value is null.
            </param>
            <param name="groupId">Value for the group id that current request belongs to. Can be null.</param>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationRequestMessage.Headers">
            <summary>Gets an enumerable over all the headers for this message.</summary>
            <returns>An enumerable over all the headers for this message.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationRequestMessage.Url">
            <summary>Gets or sets the request URL for this request message.</summary>
            <returns>The request URL for this request message.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationRequestMessage.Method">
            <summary>Gets or Sets the HTTP method used for this request message.</summary>
            <returns>The HTTP method used for this request message.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationRequestMessage.Container">
            <summary>
            The dependency injection container to get related services.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationRequestMessage.GroupId">
            <summary>
            The Group Id for this request message. Can be null.
            </summary>
            <returns>The Group Id for this request message.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationRequestMessage.DependsOnIds">
            <summary>
            Gets the prerequisite request or group ids.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationRequestMessage.OperationMessage">
            <summary>
            Returns the actual operation message which is being wrapped.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationRequestMessage.GetHeader(System.String)">
            <summary>Returns a value of an HTTP header of this operation.</summary>
            <returns>The value of the HTTP header, or null if no such header was present on the message.</returns>
            <param name="headerName">The name of the header to get.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationRequestMessage.SetHeader(System.String,System.String)">
            <summary>Sets the value of an HTTP header of this operation.</summary>
            <param name="headerName">The name of the header to set.</param>
            <param name="headerValue">The value of the HTTP header or 'null' if the header should be removed.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationRequestMessage.GetStream">
            <summary>Gets the stream backing for this message.</summary>
            <returns>The stream backing for this message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationRequestMessage.GetStreamAsync">
            <summary>Asynchronously get the stream backing for this message.</summary>
            <returns>The stream backing for this message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationRequestMessage.Microsoft#OData#IODataPayloadUriConverter#ConvertPayloadUri(System.Uri,System.Uri)">
            <summary>Implements a custom URL resolution scheme.</summary>
            <returns>A <see cref="T:System.Uri"/> instance that reflects the custom resolution of the method arguments into a URL or null if no custom resolution is desired; in that case the default resolution is used.</returns>
            <param name="baseUri">The (optional) base URI to use for the resolution.</param>
            <param name="payloadUri">The URI read from the payload.</param>
        </member>
        <member name="T:Microsoft.OData.ODataBatchOperationResponseMessage">
            <summary>
            Message representing an operation in a batch response.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchOperationResponseMessage.ContentId">
            <summary>The Content-ID for this response message.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchOperationResponseMessage.message">
            <summary>
            The actual implementation of the message.
            We don't derive from this class since we want the actual implementation to remain internal
            while this class is public.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchOperationResponseMessage.statusCode">
            <summary>The result status code of the response message.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationResponseMessage.#ctor(System.Func{System.IO.Stream},Microsoft.OData.ODataBatchOperationHeaders,Microsoft.OData.IODataBatchOperationListener,System.String,Microsoft.OData.IODataPayloadUriConverter,System.Boolean,System.IServiceProvider,System.String)">
            <summary>
            Constructor.
            </summary>
            <param name="contentStreamCreatorFunc">A function to retrieve the content stream for this batch operation message.</param>
            <param name="headers">The headers of the batch operation message.</param>
            <param name="operationListener">Listener interface to be notified of part changes.</param>
            <param name="contentId">The content-ID for the operation response message.</param>
            <param name="payloadUriConverter">The optional URL converter to perform custom URL conversion for URLs written to the payload.</param>
            <param name="writing">true if the request message is being written; false when it is read.</param>
            <param name="container">The dependency injection container to get related services.</param>
            <param name="groupId">Value for the group id that corresponding request belongs to. Can be null.</param>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationResponseMessage.StatusCode">
            <summary>Gets or sets the result status code of the response message.</summary>
            <returns>The result status code of the response message.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationResponseMessage.Headers">
            <summary>Gets an enumerable over all the headers for this message.</summary>
            <returns>An enumerable over all the headers for this message.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationResponseMessage.Container">
            <summary>
            The dependency injection container to get related services.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationResponseMessage.GroupId">
            <summary>
            The id of the group or change set that this response message is part of.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationResponseMessage.OperationMessage">
            <summary>
            Returns the actual operation message which is being wrapped.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationResponseMessage.GetHeader(System.String)">
            <summary>Returns a value of an HTTP header of this operation.</summary>
            <returns>The value of the HTTP header, or null if no such header was present on the message.</returns>
            <param name="headerName">The name of the header to get.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationResponseMessage.SetHeader(System.String,System.String)">
            <summary>Sets the value of an HTTP header of this operation.</summary>
            <param name="headerName">The name of the header to set.</param>
            <param name="headerValue">The value of the HTTP header or null if the header should be removed.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationResponseMessage.GetStream">
            <summary>Gets the stream backing for this message.</summary>
            <returns>The stream backing for this message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationResponseMessage.GetStreamAsync">
            <summary>Asynchronously get the stream backing for this message.</summary>
            <returns>The stream backing for this message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationResponseMessage.Microsoft#OData#IODataPayloadUriConverter#ConvertPayloadUri(System.Uri,System.Uri)">
            <summary> Method to implement a custom URL resolution scheme. This method returns null if not custom resolution is desired. If the method returns a non-null URL that value will be used without further validation. </summary>
            <returns> A <see cref="T:System.Uri" /> instance that reflects the custom resolution of the method arguments into a URL or null if no custom resolution is desired; in that case the default resolution is used. </returns>
            <param name="baseUri">The (optional) base URI to use for the resolution.</param>
            <param name="payloadUri">The URI read from the payload.</param>
        </member>
        <member name="T:Microsoft.OData.ODataBatchOperationStream">
            <summary>
            A stream handed to clients from ODataBatchOperationMessage.GetStream or ODataBatchOperationMessage.GetStreamAsync.
            This stream communicates status changes to an IODataBatchOperationListener instance.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchOperationStream.listener">
            <summary>Listener interface to be notified of operation changes.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationStream.#ctor(Microsoft.OData.IODataBatchOperationListener)">
            <summary>
            Constructor.
            </summary>
            <param name="listener">Listener interface to be notified of operation changes.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationStream.Seek(System.Int64,System.IO.SeekOrigin)">
            <summary>
            Seeks the stream. This operation is not supported by this stream.
            </summary>
            <param name="offset">The offset to seek to.</param>
            <param name="origin">The origin of the seek operation.</param>
            <returns>The new position in the stream.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationStream.Dispose(System.Boolean)">
            <summary>
            Disposes the object.
            </summary>
            <param name="disposing">True if called from Dispose; false if called form the finalizer.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationStream.ValidateNotDisposed">
            <summary>
            Validates that the stream was not already disposed.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataBatchOperationWriteStream">
            <summary>
            A stream handed to clients from ODataBatchOperationMessage.GetStream or ODataBatchOperationMessage.GetStreamAsync.
            This stream communicates status changes to the owning batch writer (via IODataBatchOperationListener)
            to properly flush buffered data and move the batch writer's state machine forward.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchOperationWriteStream.batchStream">
            <summary>The batch stream underlying this operation stream.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationWriteStream.#ctor(System.IO.Stream,Microsoft.OData.IODataBatchOperationListener)">
            <summary>
            Constructor.
            </summary>
            <param name="batchStream">The underlying stream to write the message to.</param>
            <param name="listener">Listener interface to be notified of operation changes.</param>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationWriteStream.CanRead">
            <summary>
            Determines if the stream can read - this one can't
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationWriteStream.CanSeek">
            <summary>
            Determines if the stream can seek - this one can't
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationWriteStream.CanWrite">
            <summary>
            Determines if the stream can write - this one can
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationWriteStream.Length">
            <summary>
            Returns the length of the stream.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchOperationWriteStream.Position">
            <summary>
            Gets or sets the position in the stream. Setting of the position is not supported since the stream doesn't support seeking.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationWriteStream.SetLength(System.Int64)">
            <summary>
            Sets the length of the stream.
            </summary>
            <param name="value">The length in bytes to set.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationWriteStream.Write(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Writes to the stream.
            </summary>
            <param name="buffer">The buffer to get data from.</param>
            <param name="offset">The offset in the buffer to start from.</param>
            <param name="count">The number of bytes to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationWriteStream.WriteAsync(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationWriteStream.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads data from the stream. This operation is not supported by this stream.
            </summary>
            <param name="buffer">The buffer to read the data to.</param>
            <param name="offset">The offset in the buffer to write to.</param>
            <param name="count">The number of bytes to read.</param>
            <returns>The number of bytes actually read.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationWriteStream.Flush">
            <summary>
            Flush the stream to the underlying batch stream.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchOperationWriteStream.Dispose(System.Boolean)">
            <summary>
            Dispose the operation stream.
            </summary>
            <param name="disposing">If 'true' this method is called from user code; if 'false' it is called by the runtime.</param>
        </member>
        <member name="T:Microsoft.OData.ODataBatchPayloadUriConverter">
            <summary>
            Implementation of the batch-specific URL converter that converts cross-referencing URLs properly.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchPayloadUriConverter.batchMessagePayloadUriConverter">
            <summary>The URL converter from the batch message.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchPayloadUriConverter.contentIdCache">
            <summary>A hashset with all content IDs used so far in the batch; this is used for cross-referencing URL conversion.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchPayloadUriConverter.#ctor(Microsoft.OData.IODataPayloadUriConverter)">
            <summary>
            Constructor.
            </summary>
            <param name="batchMessagePayloadUriConverter">The URL converter from the batch message.</param>
        </member>
        <member name="P:Microsoft.OData.ODataBatchPayloadUriConverter.BatchMessagePayloadUriConverter">
            <summary>
            The URL converter from the batch message.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchPayloadUriConverter.ContentIdCache">
            <summary>
            A read-only enumeration of <code>contentIdCache</code>.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchPayloadUriConverter.Microsoft#OData#IODataPayloadUriConverter#ConvertPayloadUri(System.Uri,System.Uri)">
            <summary>
            Method to implement a custom URL conversion scheme.
            This method returns null if not custom conversion is desired.
            If the method returns a non-null URL that value will be used without further validation.
            </summary>
            <param name="baseUri">The (optional) base URI to use for the conversion.</param>
            <param name="payloadUri">The URI read from the payload.</param>
            <returns>
            A <see cref="T:System.Uri"/> instance that reflects the custom conversion of the method arguments
            into a URL or null if no custom conversion is desired; in that case the default conversion is used.
            </returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchPayloadUriConverter.AddContentId(System.String)">
            <summary>
            Add the content ID to the hashset of valid content IDs.
            </summary>
            <param name="contentId">The (non-null) content ID to add.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchPayloadUriConverter.ContainsContentId(System.String)">
            <summary>
            Checks whether a given (non-null) content ID is already in the content ID cache.
            </summary>
            <param name="contentId">The content ID to check for.</param>
            <returns>true if the content ID cache already contains a content ID with value <paramref name="contentId"/>; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchPayloadUriConverter.Reset">
            <summary>
            Resets the cache of content IDs. This is called at the end of each changeset
            since content IDs are only unique within a changeset.
            </summary>
        </member>
        <member name="T:Microsoft.OData.BatchPayloadUriOption">
            <summary>
            Indicates the format of Request-URI in each sub request in the batch operation.
            </summary>
        </member>
        <member name="F:Microsoft.OData.BatchPayloadUriOption.AbsoluteUri">
            <summary>
            Absolute URI with schema, host, port, and absolute resource path.
            </summary>
            Example:
            GET https://host:1234/path/service/People(1) HTTP/1.1
        </member>
        <member name="F:Microsoft.OData.BatchPayloadUriOption.AbsoluteUriUsingHostHeader">
            <summary>
            Absolute resource path and separate Host header.
            </summary>
            Example:
            GET /path/service/People(1) HTTP/1.1
            Host: myserver.mydomain.org:1234
        </member>
        <member name="F:Microsoft.OData.BatchPayloadUriOption.RelativeUri">
            <summary>
            Resource path relative to the batch request URI.
            </summary>
            Example:
            GET People(1) HTTP/1.1
        </member>
        <member name="T:Microsoft.OData.ODataBatchReader">
            <summary>
            Abstract class for reading OData batch messages; also verifies the proper sequence of read calls on the reader.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReader.inputContext">
            <summary>The input context to read the content from.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReader.synchronous">
            <summary>True if the writer was created for synchronous operation; false for asynchronous.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReader.payloadUriConverter">
            <summary>The batch-specific URL converter that stores the content IDs found in a changeset and supports resolving cross-referencing URLs.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReader.container">
            <summary>The dependency injection container to get related services.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReader.batchReaderState">
            <summary>The current state of the batch reader.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReader.currentBatchSize">
            <summary>The current size of the batch message, i.e., how many query operations and changesets have been read.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReader.currentChangeSetSize">
            <summary>The current size of the active changeset, i.e., how many operations have been read for the changeset.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReader.operationState">
            <summary>An enumeration tracking the state of the current batch operation.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReader.isInChangeset">
            <summary>Whether the reader is currently reading within a changeset.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReader.contentIdToAddOnNextRead">
            <summary>
            Content-ID header value for request part with associated entity, which can be referenced by subsequent requests
            in the same changeset or other changesets.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.#ctor(Microsoft.OData.ODataInputContext,System.Boolean)">
            <summary>
            Constructor.
            </summary>
            <param name="inputContext">The input context to read the content from.</param>
            <param name="synchronous">true if the reader is created for synchronous operation; false for asynchronous.</param>
        </member>
        <member name="T:Microsoft.OData.ODataBatchReader.OperationState">
            <summary>
            An enumeration to track the state of a batch operation.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReader.OperationState.None">
            <summary>No action has been performed on the operation.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReader.OperationState.MessageCreated">
            <summary>The batch message for the operation has been created and returned to the caller.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReader.OperationState.StreamRequested">
            <summary>The stream of the batch operation message has been requested.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReader.OperationState.StreamDisposed">
            <summary>The stream of the batch operation message has been disposed.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchReader.State">
            <summary>Gets the current state of the batch reader.</summary>
            <returns>The current state of the batch reader.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataBatchReader.CurrentGroupId">
            <summary>
            Public property for the current group id the reader is processing.
            The primary usage of this to correlate atomic group id in request and
            response operation messages as needed.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchReader.InputContext">
            <summary>
            The input context to read the content from.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchReader.ReaderOperationState">
            <summary>
            The reader's Operation state
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.Read">
            <summary> Reads the next part from the batch message payload. </summary>
            <returns>True if more items were read; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.ReadAsync">
            <summary>Asynchronously reads the next part from the batch message payload.</summary>
            <returns>A task that when completed indicates whether more items were read.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.CreateOperationRequestMessage">
            <summary>Returns an <see cref="T:Microsoft.OData.ODataBatchOperationRequestMessage" /> for reading the content of a batch operation.</summary>
            <returns>A request message for reading the content of a batch operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.CreateOperationRequestMessageAsync">
            <summary>Asynchronously returns an <see cref="T:Microsoft.OData.ODataBatchOperationRequestMessage" /> for reading the content of a batch operation.</summary>
            <returns>A task that when completed returns a request message for reading the content of a batch operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.CreateOperationResponseMessage">
            <summary>Returns an <see cref="T:Microsoft.OData.ODataBatchOperationResponseMessage" /> for reading the content of a batch operation.</summary>
            <returns>A response message for reading the content of a batch operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.CreateOperationResponseMessageAsync">
            <summary>Asynchronously returns an <see cref="T:Microsoft.OData.ODataBatchOperationResponseMessage" /> for reading the content of a batch operation.</summary>
            <returns>A task that when completed returns a response message for reading the content of a batch operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.Microsoft#OData#IODataBatchOperationListener#BatchOperationContentStreamRequested">
            <summary>
            This method is called to notify that the content stream for a batch operation has been requested.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.Microsoft#OData#IODataBatchOperationListener#BatchOperationContentStreamRequestedAsync">
            <summary>
            This method is called to notify that the content stream for a batch operation has been requested.
            </summary>
            <returns>
            A task representing any action that is running as part of the status change of the reader;
            null if no such action exists.
            </returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.Microsoft#OData#IODataBatchOperationListener#BatchOperationContentStreamDisposed">
            <summary>
            This method is called to notify that the content stream of a batch operation has been disposed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.ThrowODataException(System.String)">
            <summary>
            Sets the 'Exception' state and then throws an ODataException with the specified error message.
            </summary>
            <param name="errorMessage">The error message for the exception.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.GetCurrentGroupIdImplementation">
            <summary>
            Gets the group id for the current request.
            Default implementation here is provided returning null.
            </summary>
            <returns>The group id for the current request.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.CreateOperationRequestMessageImplementation">
            <summary>
            Returns the cached <see cref="T:Microsoft.OData.ODataBatchOperationRequestMessage"/> for reading the content of an operation
            in a batch request.
            </summary>
            <returns>The message that can be used to read the content of the batch request operation from.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.CreateOperationResponseMessageImplementation">
            <summary>
            Returns the cached <see cref="T:Microsoft.OData.ODataBatchOperationRequestMessage"/> for reading the content of an operation
            in a batch request.
            </summary>
            <returns>The message that can be used to read the content of the batch request operation from.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.ReadAtStartImplementation">
            <summary>
            Implementation of the reader logic when in state 'Start'.
            </summary>
            <returns>The batch reader state after the read.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.ReadAtOperationImplementation">
            <summary>
            Implementation of the reader logic when in state 'Operation'.
            </summary>
            <returns>The batch reader state after the read.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.ReadAtChangesetStartImplementation">
            <summary>
            Implementation of the reader logic when in state 'ChangesetStart'.
            </summary>
            <returns>The batch reader state after the read.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.ReadAtChangesetEndImplementation">
            <summary>
            Implementation of the reader logic when in state 'ChangesetEnd'.
            </summary>
            <returns>The batch reader state after the read.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.BuildOperationRequestMessage(System.Func{System.IO.Stream},System.String,System.Uri,Microsoft.OData.ODataBatchOperationHeaders,System.String,System.String,System.Collections.Generic.IEnumerable{System.String},System.Boolean)">
            <summary>
            Instantiate an <see cref="T:Microsoft.OData.ODataBatchOperationRequestMessage"/> instance.
            </summary>
            <param name="streamCreatorFunc">The function for stream creation.</param>
            <param name="method">The HTTP method used for this request message.</param>
            <param name="requestUri">The request Url for this request message.</param>
            <param name="headers">The headers for this request message.</param>
            <param name="contentId">The contentId of this request message.</param>
            <param name="groupId">The group id that this request belongs to. Can be null.</param>
            <param name="dependsOnRequestIds">
            The prerequisite request Ids of this request message that could be specified by caller
            explicitly.
            </param>
            <param name="dependsOnIdsValidationRequired">
            Whether the <code>dependsOnIds</code> value needs to be validated.</param>
            <returns>The <see cref="T:Microsoft.OData.ODataBatchOperationRequestMessage"/> instance.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.BuildOperationResponseMessage(System.Func{System.IO.Stream},System.Int32,Microsoft.OData.ODataBatchOperationHeaders,System.String,System.String)">
            <summary>
            Instantiate an <see cref="T:Microsoft.OData.ODataBatchOperationResponseMessage"/> instance and set the status code.
            </summary>
            <param name="streamCreatorFunc">The function for stream creation.</param>
            <param name="statusCode">The status code for the response.</param>
            <param name="headers">The headers for this response message.</param>
            <param name="contentId">The contentId of this request message.</param>
            <param name="groupId">The groupId of this request message.</param>
            <returns>The <see cref="T:Microsoft.OData.ODataBatchOperationResponseMessage"/> instance.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.IncreaseBatchSize">
            <summary>
            Increases the size of the current batch message; throws if the allowed limit is exceeded.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.IncreaseChangesetSize">
            <summary>
            Increases the size of the current change set; throws if the allowed limit is exceeded.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.ResetChangesetSize">
            <summary>
            Resets the size of the current change set to 0.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.ReadSynchronously">
            <summary>
            Reads the next part from the batch message payload.
            </summary>
            <returns>true if more information was read; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.ReadAsynchronously">
            <summary>
            Asynchronously reads the next part from the batch message payload.
            </summary>
            <returns>A task that when completed indicates whether more information was read.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.ReadImplementation">
            <summary>
            Continues reading from the batch message payload.
            </summary>
            <returns>true if more items were read; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.VerifyCanCreateOperationRequestMessage(System.Boolean)">
            <summary>
            Verifies that calling CreateOperationRequestMessage if valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.VerifyCanCreateOperationResponseMessage(System.Boolean)">
            <summary>
            Verifies that calling CreateOperationResponseMessage if valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.VerifyCanRead(System.Boolean)">
            <summary>
            Verifies that calling Read is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.VerifyReaderReady">
            <summary>
            Validates that the batch reader is ready to process a new read or create message request.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.VerifyCallAllowed(System.Boolean)">
            <summary>
            Verifies that a call is allowed to the reader.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReader.InterceptException``1(System.Func{``0})">
            <summary>
            Catch any exception thrown by the action passed in; in the exception case move the writer into
            state Exception and then rethrow the exception.
            </summary>
            <typeparam name="T">The type of the result returned from the <paramref name="action"/>.</typeparam>
            <param name="action">The action to execute.</param>
            <returns>The result of the <paramref name="action"/>.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataBatchReaderState">
            <summary>Enumeration with all the states the batch reader can be in.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReaderState.Initial">
            <summary>The state the batch reader is in after having been created.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReaderState.Operation">
            <summary>The batch reader detected an operation.</summary>
            <remarks>In this state the start boundary, the request/response line
            and the operation headers have already been read.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReaderState.ChangesetStart">
            <summary>The batch reader detected the start of a change set.</summary>
            <remarks>In this state the start boundary and the change set
            headers have already been read.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReaderState.ChangesetEnd">
            <summary>The batch reader completed reading a change set.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReaderState.Completed">
            <summary>The batch reader completed reading the batch payload.</summary>
            <remarks>The batch reader cannot be used in this state anymore.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReaderState.Exception">
            <summary>The batch reader encountered an error reading the batch payload.</summary>
            <remarks>The batch reader cannot be used in this state anymore.</remarks>
        </member>
        <member name="T:Microsoft.OData.ODataBatchReaderStream">
            <summary>
            Class used by the <see cref="T:Microsoft.OData.ODataBatchReader"/> to read the various pieces of a batch payload.
            </summary>
            <remarks>
            This is the base class for format-specific derived classes to process batch requests in different formats,
            such as multipart/mixed format and application/json format.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReaderStream.BatchBuffer">
            <summary>The buffer used by the batch reader stream to scan for boundary strings.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReaderStream.underlyingStreamExhausted">
            <summary>
            true if the underlying stream was exhausted during a read operation; we won't try to read from the
            underlying stream again once it was exhausted.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReaderStream.#ctor">
            <summary>
            Constructor.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReaderStream.ReadWithDelimiter(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads from the batch stream while ensuring that we stop reading at each boundary.
            </summary>
            <param name="userBuffer">The byte array to read bytes into.</param>
            <param name="userBufferOffset">The offset in the buffer where to start reading bytes into.</param>
            <param name="count">The number of bytes to read.</param>
            <returns>The number of bytes actually read.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReaderStream.ReadWithLength(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads from the batch stream without checking for a boundary delimiter since we
            know the length of the stream.
            </summary>
            <param name="userBuffer">The byte array to read bytes into.</param>
            <param name="userBufferOffset">The offset in the buffer where to start reading bytes into.</param>
            <param name="count">The number of bytes to read.</param>
            <returns>The number of bytes actually read.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataBatchReaderStreamBuffer">
            <summary>
            This class represents the internal buffer of the <see cref="T:Microsoft.OData.ODataBatchReaderStream"/>.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReaderStreamBuffer.BufferLength">
            <summary>The size of the look-ahead buffer.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReaderStreamBuffer.MaxLineFeedLength">
            <summary>Length of the longest supported line terminator character sequence; makes the code easier to read.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReaderStreamBuffer.TwoDashesLength">
            <summary>The length of two '-' characters to make the code easier to read.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReaderStreamBuffer.bytes">
            <summary>The byte array storing the actual bytes of the buffer.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReaderStreamBuffer.currentReadPosition">
            <summary>The current position inside the buffer.</summary>
            <remarks>This is the position of the byte that is the next to be read.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReaderStreamBuffer.numberOfBytesInBuffer">
            <summary>The number of (not yet consumed) bytes currently in the buffer.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchReaderStreamBuffer.Bytes">
            <summary>
            The byte array that acts as the actual storage of the buffered data.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchReaderStreamBuffer.CurrentReadPosition">
            <summary>
            The current position inside the buffer.
            </summary>
            <remarks>This is the position of the byte that is the next to be read.</remarks>
        </member>
        <member name="P:Microsoft.OData.ODataBatchReaderStreamBuffer.NumberOfBytesInBuffer">
            <summary>
            The number of (not yet consumed) bytes currently in the buffer.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchReaderStreamBuffer.Item(System.Int32)">
            <summary>
            Indexer into the byte buffer.
            </summary>
            <param name="index">The position in the buffer to get.</param>
            <returns>The byte at position <paramref name="index"/> in the buffer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReaderStreamBuffer.SkipTo(System.Int32)">
            <summary>
            Skip to the specified position in the buffer.
            Adjust the current position and the number of bytes in the buffer.
            </summary>
            <param name="newPosition">The position to skip to.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReaderStreamBuffer.RefillFrom(System.IO.Stream,System.Int32)">
            <summary>
            Refills the buffer from the specified stream.
            </summary>
            <param name="stream">The stream to refill the buffer from.</param>
            <param name="preserveFrom">The index in the current buffer starting from which the
            currently buffered data should be preserved.</param>
            <returns>true if the underlying stream got exhausted while refilling.</returns>
            <remarks>This method will first shift any data that is to be preserved to the beginning
            of the buffer and then refill the rest of the buffer from the <paramref name="stream"/>.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReaderStreamBuffer.ScanForLineEnd(System.Int32@,System.Int32@)">
            <summary>
            Scans the current buffer for a line end.
            </summary>
            <param name="lineEndStartPosition">The start position of the line terminator or -1 if not found.</param>
            <param name="lineEndEndPosition">The end position of the line terminator or -1 if not found.</param>
            <returns>An enumeration value indicating whether the line termintor was found completely, partially or not at all.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReaderStreamBuffer.ScanForBoundary(System.Collections.Generic.IEnumerable{System.String},System.Int32,System.Int32@,System.Int32@,System.Boolean@,System.Boolean@)">
            <summary>
            Scans the current buffer for the specified boundary.
            </summary>
            <param name="boundaries">The boundary strings to search for; this enumerable is sorted from the inner-most boundary
            to the top-most boundary. The boundary strings don't include the leading line terminator or the leading dashes.</param>
            <param name="maxDataBytesToScan">Stop if no boundary (or boundary start) is found after this number of bytes.</param>
            <param name="boundaryStartPosition">The start position of the boundary or -1 if not found.
            Note that the start position is the first byte of the leading line terminator.</param>
            <param name="boundaryEndPosition">The end position of the boundary or -1 if not found.
            Note that the end position is the last byte of the trailing line terminator.</param>
            <param name="isEndBoundary">true if the boundary is an end boundary (followed by two dashes); otherwise false.</param>
            <param name="isParentBoundary">true if the detected boundary is the parent boundary; otherwise false.</param>
            <returns>An enumeration value indicating whether the boundary was completely, partially or not found in the buffer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReaderStreamBuffer.ScanForBoundaryStart(System.Int32,System.Int32,System.Int32@,System.Int32@)">
            <summary>
            Scans the current buffer for a boundary start, which is either a line resource set or two dashes (since we don't require the leading line resource set).
            </summary>
            <param name="scanStartIx">The index at which to start scanning for the boundary start.</param>
            <param name="maxDataBytesToScan">Stop if no boundary start was found after this number of non end-of-line bytes.</param>
            <param name="lineEndStartPosition">The start position of the line end or -1 if not found.</param>
            <param name="boundaryDelimiterStartPosition">The start position of the boundary delimiter or -1 if not found.</param>
            <returns>An enumeration value indicating whether the boundary start was completely, partially or not found in the buffer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReaderStreamBuffer.ScanForLineEnd(System.Int32,System.Int32,System.Boolean,System.Int32@,System.Int32@,System.Boolean@)">
            <summary>
            Scans the current buffer for a line end.
            </summary>
            <param name="scanStartIx">The index at which to start scanning for the line terminator.</param>
            <param name="maxDataBytesToScan">Stop if no line end (or beginning of line end) was found after this number of non end-of-line bytes.</param>
            <param name="allowLeadingWhitespaceOnly">true if only whitespace data bytes are expected before the end-of-line characters; otherwise false.</param>
            <param name="lineEndStartPosition">The start position of the line terminator or -1 if not found.</param>
            <param name="lineEndEndPosition">The end position of the line terminator or -1 if not found.</param>
            <param name="endOfBufferReached">true if the end of the buffer was reached while scanning for the line end; otherwise false.</param>
            <returns>An enumeration value indicating whether the line termintor was found completely, partially or not at all.</returns>
            <remarks>This method only returns <see cref="F:Microsoft.OData.ODataBatchReaderStreamScanResult.PartialMatch"/> if we found the start
            of a line terminator at the last character in the buffer.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReaderStreamBuffer.MatchBoundary(System.Int32,System.Int32,System.String,System.Int32@,System.Int32@,System.Boolean@)">
            <summary>
            Check whether the bytes in the buffer at the specified start index match the expected boundary string.
            </summary>
            <param name="lineEndStartPosition">The start of the line resource set preceding the boundary (if present).</param>
            <param name="boundaryDelimiterStartPosition">The start position of the boundary delimiter.</param>
            <param name="boundary">The boundary string to check for.</param>
            <param name="boundaryStartPosition">If a match is detected, the start of the boundary delimiter,
            i.e., either the start of the leading line resource set or of the leading dashes.</param>
            <param name="boundaryEndPosition">If a match is detected, the position of the boundary end; otherwise -1.</param>
            <param name="isEndBoundary">true if the detected boundary is an end boundary; otherwise false.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataBatchReaderStreamScanResult"/> indicating whether a match, a partial match or no match was found.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReaderStreamBuffer.MatchBoundary(System.String,System.Int32,System.Int32,System.Boolean@)">
            <summary>
            Try to match the specified boundary string starting at the specified position.
            </summary>
            <param name="boundary">The boundary string to search for; this does not include
            the leading line terminator or the leading dashes.</param>
            <param name="startIx">The index at which to start matching the boundary.</param>
            <param name="matchLength">The number of characters to match.</param>
            <param name="isEndBoundary">true if the boundary string is used in an end boundary; otherwise false.</param>
            <returns>true if it was established that the buffer starting at <paramref name="startIx"/>
            matches the <paramref name="boundary"/>; otherwise false.</returns>
            <remarks>This method also returns false if the boundary string was completly matched against the
            buffer but it could not be determined whether it is used in an end boundary or not.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataBatchReaderStreamBuffer.ShiftToBeginning(System.Int32)">
            <summary>
            Shifts all bytes in the buffer after a specified start index to the beginning of the buffer.
            </summary>
            <param name="startIndex">The start index where to start shifting.</param>
        </member>
        <member name="T:Microsoft.OData.ODataBatchReaderStreamScanResult">
            <summary>
            An enumeration representing the result of a scan operation through
            the batch reader stream's buffer.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReaderStreamScanResult.NoMatch">
            <summary>No match with the requested boundary was found (not even a partial one).</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReaderStreamScanResult.PartialMatch">
            <summary>A partial match with the requested boundary was found.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchReaderStreamScanResult.Match">
            <summary>A complete match with the requested boundary was found.</summary>
            <remarks>
            This is only returned if we could also check whether the boundary is an end
            boundary or not; otherwise a partial match is returned.
            </remarks>
        </member>
        <member name="T:Microsoft.OData.ODataBatchUtils">
            <summary>
            Helper methods used by the ODataBatchWriter and ODataBatchReader (and related classes).
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchUtils.CreateOperationRequestUri(System.Uri,System.Uri,Microsoft.OData.IODataPayloadUriConverter)">
            <summary>
            Creates the URI for a batch request operation.
            </summary>
            <param name="uri">The uri to process.</param>
            <param name="baseUri">The base Uri to use.</param>
            <param name="payloadUriConverter">An optional custom URL converter to convert URLs for writing them into the payload.</param>
            <returns>An URI to be used in the request line of a batch request operation. It uses the <paramref name="payloadUriConverter"/>
            first and falls back to the default URI building schema if the no URL resolver is specified or the URL resolver
            returns null. In the default scheme, the method either returns the specified <paramref name="uri"/> if it was absolute,
            or it's combination with the <paramref name="baseUri"/> if it was relative.</returns>
            <remarks>
            This method will fail if no custom resolution is implemented and the specified <paramref name="uri"/> is
            relative and there's no base URI available.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataBatchUtils.CreateBatchOperationReadStream(Microsoft.OData.ODataBatchReaderStream,Microsoft.OData.ODataBatchOperationHeaders,Microsoft.OData.IODataBatchOperationListener)">
            <summary>
            Creates a batch operation stream from the specified batch stream.
            </summary>
            <param name="batchReaderStream">The batch stream to create the operation read stream for.</param>
            <param name="headers">The headers of the current part; based on the header we create different, optimized stream implementations.</param>
            <param name="operationListener">The operation listener to be passed to the newly created read stream.</param>
            <returns>A new <see cref="T:Microsoft.OData.ODataBatchOperationReadStream"/> instance.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchUtils.CreateBatchOperationWriteStream(System.IO.Stream,Microsoft.OData.IODataBatchOperationListener)">
            <summary>
            Creates a batch operation write stream over the specified output stream.
            </summary>
            <param name="outputStream">The output stream to create the operation write stream over.</param>
            <param name="operationListener">The operation listener to be passed to the newly created write stream.</param>
            <returns>A new <see cref="T:Microsoft.OData.ODataBatchOperationWriteStream"/> instance.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchUtils.EnsureArraySize(System.Byte[]@,System.Int32,System.Int32)">
            <summary>
            Grows the specified byte array by the specified amount.
            </summary>
            <param name="buffer">The byte array to grow.</param>
            <param name="numberOfBytesInBuffer">The number of bytes currently in the buffer.</param>
            <param name="requiredByteCount">The number of bytes to be added to the array.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchUtils.ValidateReferenceUri(System.Uri,System.Collections.Generic.IEnumerable{System.String},System.Uri)">
            <summary>
            Validates that the uri's reference of $requestId, if used, is one of the depends-on requests.
            The Uri can be either absolute or relative.
            Exception is thrown if the request Id reference is not found in the list of depends-on requests.
            </summary>
            <param name="uri">The Uri to validate the request Id reference.</param>
            <param name="dependsOnRequestIds">Enumeration of request Ids used to lookup the request Id reference.</param>
            <param name="baseUri">The baseUri used for validation.</param>
        </member>
        <member name="T:Microsoft.OData.ODataBatchWriter">
            <summary>
            Abstract class for writing OData batch messages; also verifies the proper sequence of write calls on the writer.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchWriter.outputContext">
            <summary>The output context to write to.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchWriter.payloadUriConverter">
            <summary>The batch-specific URL converter that stores the content IDs found in a changeset and supports resolving cross-referencing URLs.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchWriter.container">
            <summary>The dependency injection container to get related services.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchWriter.state">
            <summary>The state the writer currently is in.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchWriter.currentOperationRequestMessage">
            <summary>The request message for the operation that is currently written if it's a request;
            or null if no part is written right now or it's a response part.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchWriter.currentOperationResponseMessage">
            <summary>The response message for the operation that is currently written if it's a response;
            or null if no part is written right now or it's a request part.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchWriter.currentOperationContentId">
            <summary>
            The value of the Content-ID header of the current operation (or null if no Content-ID header exists).
            </summary>
            <remarks>
            Note that the current Content-ID header is not included immediately in the content ID cache
            since the current content ID will only be visible to subsequent operations.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataBatchWriter.currentBatchSize">
            <summary>The current size of the batch message, i.e., how many query operations and changesets have been written.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchWriter.currentChangeSetSize">
            <summary>The current size of the active changeset, i.e., how many request have been written for the changeset.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchWriter.isInChangset">
            <summary>
            Whether the writer is currently processing inside a changeset or atomic group.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.#ctor(Microsoft.OData.ODataOutputContext)">
            <summary>
            Constructor.
            </summary>
            <param name="outputContext">The output context to write to.</param>
        </member>
        <member name="T:Microsoft.OData.ODataBatchWriter.BatchWriterState">
            <summary>
            An enumeration representing the current state of the writer.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchWriter.BatchWriterState.Start">
            <summary>The writer is in initial state; nothing has been written yet.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchWriter.BatchWriterState.BatchStarted">
            <summary>WriteStartBatch has been called.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchWriter.BatchWriterState.ChangesetStarted">
            <summary>WriteStartChangeSet has been called.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchWriter.BatchWriterState.OperationCreated">
            <summary>CreateOperationRequestMessage/CreateOperationResponseMessage has been called.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchWriter.BatchWriterState.OperationStreamRequested">
            <summary>
            ODataMessage.GetStreamAsync() has been called on an operation which caused a <see cref="T:Microsoft.OData.ODataBatchOperationStream"/> to be created;
            the batch writer is unusable while an operation is being written.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchWriter.BatchWriterState.OperationStreamDisposed">
            <summary>The stream for writing the content of an operation has been disposed. The batch writer can now be used again.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchWriter.BatchWriterState.ChangesetCompleted">
            <summary>WriteEndChangeSet has been called.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchWriter.BatchWriterState.BatchCompleted">
            <summary>WriteEndBatch has been called.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataBatchWriter.BatchWriterState.Error">
            <summary>The writer is in error state; nothing can be written anymore except the error payload.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchWriter.CurrentOperationRequestMessage">
            <summary>The request message for the operation that is currently written if it's a request; or null if no operation is written right now or it's a response operation.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchWriter.CurrentOperationResponseMessage">
            <summary>The response message for the operation that is currently written if it's a response;
            or null if no operation is written right now or it's a request operation.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataBatchWriter.OutputContext">
            <summary>
            The output context to write to.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.WriteStartBatch">
            <summary>Starts a new batch; can be only called once and as first call.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.WriteStartBatchAsync">
            <summary>Asynchronously starts a new batch; can be only called once and as first call.</summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.WriteEndBatch">
            <summary>Ends a batch; can only be called after WriteStartBatch has been called and if no other active changeset or operation exist.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.WriteEndBatchAsync">
            <summary>Asynchronously ends a batch; can only be called after WriteStartBatch has been called and if no other active change set or operation exist.</summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.WriteStartChangeset">
            <summary>
            Starts a new changeset without specifying group id.
            This can only be called after WriteStartBatch and if no other active operation or changeset exists.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.WriteStartChangeset(System.String)">
            <summary>
            Starts a new atomic group or changeset with the specified group id or changeset GUID corresponding to change set boundary.
            This can only be called after WriteStartBatch and if no other active operation or changeset exists.</summary>
            <param name="changesetId"> The change set Id of the batch request. Cannot be null.</param>
            <exception cref="T:Microsoft.OData.ODataException">Thrown if the <paramref name="changesetId"/> is null.</exception>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.WriteStartChangesetAsync">
            <summary>Asynchronously starts a new change set without specifying group id;
            This can only be called after WriteStartBatch and if no other active operation or change set exists.</summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.WriteStartChangesetAsync(System.String)">
            <summary>
            Asynchronously starts a new change set; can only be called after WriteStartBatch and if no other active operation or change set exists.
            </summary>
            <param name="changesetId"> The change set Id of the batch request. Cannot be null.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
            <exception cref="T:Microsoft.OData.ODataException">Thrown if the <paramref name="changesetId"/> is null.</exception>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.WriteEndChangeset">
            <summary>Ends an active changeset; this can only be called after WriteStartChangeset and only once for each changeset.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.WriteEndChangesetAsync">
            <summary>Asynchronously ends an active change set; this can only be called after WriteStartChangeset and only once for each change set.</summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.CreateOperationRequestMessage(System.String,System.Uri,System.String)">
            <summary>Creates an <see cref="T:Microsoft.OData.ODataBatchOperationRequestMessage" /> for writing an operation of a batch request.</summary>
            <param name="method">The Http method to be used for this request operation.</param>
            <param name="uri">The Uri to be used for this request operation.</param>
            <param name="contentId">The Content-ID value to write in ChangeSet header, would be ignored if <paramref name="method"/> is "GET".</param>
            <returns>The message that can be used to write the request operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.CreateOperationRequestMessage(System.String,System.Uri,System.String,Microsoft.OData.BatchPayloadUriOption)">
            <summary>Creates an <see cref="T:Microsoft.OData.ODataBatchOperationRequestMessage" /> for writing an operation of a batch request.</summary>
            <param name="method">The Http method to be used for this request operation.</param>
            <param name="uri">The Uri to be used for this request operation.</param>
            <param name="contentId">The Content-ID value to write in ChangeSet header, would be ignored if <paramref name="method"/> is "GET".</param>
            <param name="payloadUriOption">
            The format of operation Request-URI, which could be AbsoluteUri, AbsoluteResourcePathAndHost, or RelativeResourcePath.</param>
            <returns>The message that can be used to write the request operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.CreateOperationRequestMessage(System.String,System.Uri,System.String,Microsoft.OData.BatchPayloadUriOption,System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataBatchOperationRequestMessage" /> for writing an operation of a batch request.
            </summary>
            <param name="method">The Http method to be used for this request operation.</param>
            <param name="uri">The Uri to be used for this request operation.</param>
            <param name="contentId">
            The Content-ID value to write in ChangeSet header, would be ignored if <paramref name="method"/> is "GET".</param>
            <param name="payloadUriOption">
            The format of operation Request-URI, which could be AbsoluteUri, AbsoluteResourcePathAndHost, or RelativeResourcePath.</param>
            <param name="dependsOnIds">The prerequisite request ids of this request.</param>
            <returns>The message that can be used to write the request operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.CreateOperationRequestMessageAsync(System.String,System.Uri,System.String)">
            <summary>Creates a message for asynchronously writing an operation of a batch request.</summary>
            <returns>The message that can be used to asynchronously write the request operation.</returns>
            <param name="method">The HTTP method to be used for this request operation.</param>
            <param name="uri">The URI to be used for this request operation.</param>
            <param name="contentId">
            The Content-ID value to write in ChangeSet header, would be ignored if <paramref name="method"/> is "GET".</param>
            <returns>A task that when completed returns the newly created operation request message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.CreateOperationRequestMessageAsync(System.String,System.Uri,System.String,Microsoft.OData.BatchPayloadUriOption)">
            <summary>Creates a message for asynchronously writing an operation of a batch request.</summary>
            <returns>The message that can be used to asynchronously write the request operation.</returns>
            <param name="method">The HTTP method to be used for this request operation.</param>
            <param name="uri">The URI to be used for this request operation.</param>
            <param name="contentId">
            The Content-ID value to write in ChangeSet header, would be ignored if <paramref name="method"/> is "GET".</param>
            <param name="payloadUriOption">
            The format of operation Request-URI, which could be AbsoluteUri, AbsoluteResourcePathAndHost, or RelativeResourcePath.</param>
            <returns>A task that when completed returns the newly created operation request message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.CreateOperationRequestMessageAsync(System.String,System.Uri,System.String,Microsoft.OData.BatchPayloadUriOption,System.Collections.Generic.IList{System.String})">
            <summary>
            Creates a message for asynchronously writing an operation of a batch request.</summary>
            <returns>The message that can be used to asynchronously write the request operation.</returns>
            <param name="method">The HTTP method to be used for this request operation.</param>
            <param name="uri">The URI to be used for this request operation.</param>
            <param name="contentId">
            The Content-ID value to write in ChangeSet header, would be ignored if <paramref name="method"/> is "GET".</param>
            <param name="payloadUriOption">
            The format of operation Request-URI, which could be AbsoluteUri, AbsoluteResourcePathAndHost, or RelativeResourcePath.</param>
            <param name="dependsOnIds">The prerequisite request ids of this request.</param>
            <returns>A task that when completed returns the newly created operation request message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.CreateOperationResponseMessage(System.String)">
            <summary>Creates a message for writing an operation of a batch response.</summary>
            <param name="contentId">The Content-ID value to write in ChangeSet head.</param>
            <returns>The message that can be used to write the response operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.CreateOperationResponseMessageAsync(System.String)">
            <summary>Asynchronously creates an <see cref="T:Microsoft.OData.ODataBatchOperationResponseMessage" /> for writing an operation of a batch response.</summary>
            <param name="contentId">The Content-ID value to write in ChangeSet head.</param>
            <returns>A task that when completed returns the newly created operation response message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.Flush">
            <summary>Flushes the write buffer to the underlying stream.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.FlushAsync">
            <summary>Flushes the write buffer to the underlying stream asynchronously.</summary>
            <returns>A task instance that represents the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.BatchOperationContentStreamRequested">
            <summary>
            This method is called to notify that the content stream for a batch operation has been requested.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.BatchOperationContentStreamRequestedAsync">
            <summary>
            This method is called to notify that the content stream for a batch operation has been requested.
            </summary>
            <returns>
            A task representing any action that is running as part of the status change of the operation;
            null if no such action exists.
            </returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.BatchOperationContentStreamDisposed">
            <summary>
            This method is called to notify that the content stream of a batch operation has been disposed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.OnInStreamError">
            <summary>
            This method notifies the listener, that an in-stream error is to be written.
            </summary>
            <remarks>
            This listener can choose to fail, if the currently written payload doesn't support in-stream error at this position.
            If the listener returns, the writer should not allow any more writing, since the in-stream error is the last thing in the payload.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.FlushSynchronously">
            <summary>
            Flush the output.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.FlushAsynchronously">
            <summary>
            Flush the output.
            </summary>
            <returns>Task representing the pending flush operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.WriteEndBatchImplementation">
            <summary>
            Ends a batch.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.WriteStartChangesetImplementation(System.String)">
            <summary>
            Starts a new changeset.
            </summary>
            <param name="groupOrChangesetId">
            The atomic group id, aka changeset GUID of the batch request.
            </param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.WriteEndChangesetImplementation">
            <summary>
            Ends an active changeset.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.CreateOperationResponseMessageImplementation(System.String)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataBatchOperationResponseMessage"/> for writing an operation of a batch response.
            </summary>
            <param name="contentId">The Content-ID value to write in ChangeSet head.</param>
            <returns>The message that can be used to write the response operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.CreateOperationRequestMessageImplementation(System.String,System.Uri,System.String,Microsoft.OData.BatchPayloadUriOption,System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataBatchOperationRequestMessage"/> for writing an operation of a batch request.
            </summary>
            <param name="method">The Http method to be used for this request operation.</param>
            <param name="uri">The Uri to be used for this request operation.</param>
            <param name="contentId">The Content-ID value to write in ChangeSet head.</param>
            <param name="payloadUriOption">
            The format of operation Request-URI, which could be AbsoluteUri, AbsoluteResourcePathAndHost, or RelativeResourcePath.</param>
            <param name="dependsOnIds">The prerequisite request ids of this request.</param>
            <returns>The message that can be used to write the request operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.SetState(Microsoft.OData.ODataBatchWriter.BatchWriterState)">
            <summary>
            Sets a new writer state; verifies that the transition from the current state into new state is valid.
            </summary>
            <param name="newState">The writer state to transition into.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.VerifyNotDisposed">
            <summary>
            Verifies that the writer is not disposed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.WriteStartBatchImplementation">
            <summary>
            Starts a new batch.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.GetDependsOnRequestIds(System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Given an enumerable of dependsOn ids containing request ids and group ids, return an enumeration
            of equivalent request ids.
            </summary>
            <param name="dependsOnIds">The dependsOn ids specifying current request's prerequisites.</param>
            <returns>An enumerable consists of request ids.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.BuildOperationRequestMessage(System.IO.Stream,System.String,System.Uri,System.String,System.String,System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Wrapper method to create an operation request message that can be used to write the operation content to, utilizing
            private members <see cref="T:Microsoft.OData.ODataBatchPayloadUriConverter"/> and <see cref="T:System.IServiceProvider"/>.
            </summary>
            <param name="outputStream">The output stream underlying the operation message.</param>
            <param name="method">The HTTP method to use for the message to create.</param>
            <param name="uri">The request URL for the message to create.</param>
            <param name="contentId">The contentId of this request message.</param>
            <param name="groupId">The group id that this request belongs to. Can be null.</param>
            <param name="dependsOnIds">The prerequisite request ids of this request.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataBatchOperationRequestMessage"/> to write the request content to.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.BuildOperationResponseMessage(System.IO.Stream,System.String,System.String)">
            <summary>
            Wrapper method to create an operation response message that can be used to write the operation content to, utilizing
            private members <see cref="T:Microsoft.OData.ODataBatchPayloadUriConverter"/> and <see cref="T:System.IServiceProvider"/>.
            </summary>
            <param name="outputStream">The output stream underlying the operation message.</param>
            <param name="contentId">The contentId of this response message.</param>
            <param name="groupId">The group id of the response message, should be the same as the group id
            in the corresponding request message.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataBatchOperationResponseMessage"/> that can be used to write the operation content.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.InterceptException(System.Action)">
            <summary>
            Catch any exception thrown by the action passed in; in the exception case move the writer into
            state ExceptionThrown and then re-throw the exception.
            </summary>
            <param name="action">The action to execute.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.ThrowODataException(System.String)">
            <summary>
            Sets the 'Error' state and then throws an ODataException with the specified error message.
            </summary>
            <param name="errorMessage">The error message for the exception.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.CreateOperationRequestMessageInternal(System.String,System.Uri,System.String,Microsoft.OData.BatchPayloadUriOption,System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Internal method to create an <see cref="T:Microsoft.OData.ODataBatchOperationRequestMessage" /> for writing
            an operation of a batch request.
            </summary>
            <param name="method">The Http method to be used for this request operation.</param>
            <param name="uri">The Uri to be used for this request operation.</param>
            <param name="contentId">
            For batch in multipart format, the Content-ID value to write in ChangeSet header, would be ignored if
            <paramref name="method"/> is "GET".
            For batch in Json format, if the value passed in is null, an GUID will be generated and used as the request id.
            </param>
            <param name="payloadUriOption">
            The format of operation Request-URI, which could be AbsoluteUri, AbsoluteResourcePathAndHost, or RelativeResourcePath.</param>
            <param name="dependsOnIds">The prerequisite request ids of this request.</param>
            <returns>The message that can be used to write the request operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.FinishWriteStartChangeset">
            <summary>
            Perform updates after changeset is started.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.FinishWriteEndChangeset">
            <summary>
            Perform updates after changeset is ended.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.RememberContentIdHeader(System.String)">
            <summary>
            Remember a non-null Content-ID header for change set request operations.
            If a non-null content ID header is specified for a change set request operation, record it in the URL resolver.
            </summary>
            <param name="contentId">The Content-ID header value read from the message.</param>
            <remarks>
            Note that the content ID of this operation will only
            become visible once this operation has been written
            and OperationCompleted has been called on the URL resolver.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.IncreaseBatchSize">
            <summary>
            Increases the size of the current batch message; throws if the allowed limit is exceeded.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.IncreaseChangeSetSize">
            <summary>
            Increases the size of the current change set; throws if the allowed limit is exceeded.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.ResetChangeSetSize">
            <summary>
            Resets the size of the current change set to 0.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.VerifyCallAllowed(System.Boolean)">
            <summary>
            Verifies that a call is allowed to the writer.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.VerifyCanCreateOperationRequestMessage(System.Boolean,System.String,System.Uri,System.String)">
            <summary>
            Verifies that calling CreateOperationRequestMessage is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
            <param name="method">The Http method to be used for this request operation.</param>
            <param name="uri">The Uri to be used for this request operation.</param>
            <param name="contentId">The Content-ID value to write in ChangeSet head.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.VerifyCanFlush(System.Boolean)">
            <summary>
            Verifies that the writer is in correct state for the Flush operation.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.ValidateWriterReady">
            <summary>
            Validates that the batch writer is ready to process a new write request.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.IsErrorState(Microsoft.OData.ODataBatchWriter.BatchWriterState)">
            <summary>
            Determines whether a given writer state is considered an error state.
            </summary>
            <param name="state">The writer state to check.</param>
            <returns>True if the writer state is an error state; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.VerifyCanWriteStartBatch(System.Boolean)">
            <summary>
            Verifies that calling WriteStartBatch is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.VerifyCanWriteEndBatch(System.Boolean)">
            <summary>
            Verifies that calling WriteEndBatch is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.VerifyCanWriteStartChangeset(System.Boolean)">
            <summary>
            Verifies that calling WriteStartChangeset is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.VerifyCanWriteEndChangeset(System.Boolean)">
            <summary>
            Verifies that calling WriteEndChangeset is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.VerifyCanCreateOperationResponseMessage(System.Boolean)">
            <summary>
            Verifies that calling CreateOperationResponseMessage is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataBatchWriter.ValidateTransition(Microsoft.OData.ODataBatchWriter.BatchWriterState)">
            <summary>
            Verifies that the transition from the current state into new state is valid .
            </summary>
            <param name="newState">The new writer state to transition into.</param>
        </member>
        <member name="T:Microsoft.OData.ODataCollectionReader">
            <summary>
            Base class for OData collection readers.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataCollectionReader.State">
            <summary>Gets the current state of the reader.</summary>
            <returns>The current state of the reader.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataCollectionReader.Item">
            <summary>Gets the most recent item that has been read.</summary>
            <returns>The most recent item that has been read.</returns>
            <remarks>
            This property returns an <see cref="T:Microsoft.OData.ODataCollectionStart"/> when in state ODataCollectionReaderState.CollectionStart
            or ODataCollectionReaderState.CollectionEnd. It returns either a primitive value or 'null' when
            in state ODataCollectionReaderState.Value and 'null' in all other states.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReader.Read">
            <summary>Reads the next item from the message payload. </summary>
            <returns>True if more items were read; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReader.ReadAsync">
            <summary>Asynchronously reads the next item from the message payload.</summary>
            <returns>A task that when completed indicates whether more items were read.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataCollectionReaderCore">
            <summary>
            Base class for OData collection readers that verifies a proper sequence of read calls on the reader.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionReaderCore.inputContext">
            <summary>The input context to read from.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionReaderCore.scopes">
            <summary>Stack of reader scopes to keep track of the current context of the reader.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionReaderCore.listener">
            <summary>If not null, the reader will notify the implementer of the interface of relevant state changes in the reader.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionReaderCore.collectionValidator">
            <summary>The collection validator instance if no expected item type has been specified; otherwise null.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionReaderCore.expectedItemTypeReference">
            <summary>The expected item type reference for the items in the collection.</summary>
            <remarks>If an expected type is specified the collection has to be homogeneous.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCore.#ctor(Microsoft.OData.ODataInputContext,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.IODataReaderWriterListener)">
            <summary>
            Constructor.
            </summary>
            <param name="inputContext">The input to read from.</param>
            <param name="expectedItemTypeReference">The expected type reference for the items in the collection.</param>
            <param name="listener">If not null, the reader will notify the implementer of the interface of relevant state changes in the reader.</param>
        </member>
        <member name="P:Microsoft.OData.ODataCollectionReaderCore.State">
            <summary>
            The current state of the reader.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataCollectionReaderCore.Item">
            <summary>
            The most recent item that has been read.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataCollectionReaderCore.ExpectedItemTypeReference">
            <summary>
            The expected item type for the items in the collection.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataCollectionReaderCore.CollectionValidator">
            <summary>
            The collection validator instance if no expected item type has been specified; otherwise null.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataCollectionReaderCore.IsReadingNestedPayload">
            <summary>
            Returns true if we are reading a nested payload, e.g. a resource, a resource set or a collection within a parameters payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCore.Read">
            <summary>
            Reads the next item from the message payload.
            </summary>
            <returns>true if more items were read; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCore.ReadAsync">
            <summary>
            Asynchronously reads the next item from the message payload.
            </summary>
            <returns>A task that when completed indicates whether more items were read.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCore.ReadImplementation">
            <summary>
            Reads the next <see cref="T:Microsoft.OData.ODataItem"/> from the message payload.
            </summary>
            <returns>true if more items were read; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCore.ReadAtStartImplementation">
            <summary>
            Implementation of the collection reader logic when in state 'Start'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCore.ReadAtCollectionStartImplementation">
            <summary>
            Implementation of the reader logic when in state 'CollectionStart'.
            </summary>
            <returns>true if more nodes can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCore.ReadAtValueImplementation">
            <summary>
            Implementation of the reader logic when in state 'Value'.
            </summary>
            <returns>true if more nodes can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCore.ReadAtCollectionEndImplementation">
            <summary>
            Implementation of the reader logic when in state 'CollectionEnd'.
            </summary>
            <returns>Should be false since no more nodes can be read from the reader after the collection ends.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCore.ReadSynchronously">
            <summary>
            Reads the next <see cref="T:Microsoft.OData.ODataItem"/> from the message payload.
            </summary>
            <returns>true if more items were read; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCore.ReadAsynchronously">
            <summary>
            Asynchronously reads the next <see cref="T:Microsoft.OData.ODataItem"/> from the message payload.
            </summary>
            <returns>A task that when completed indicates whether more items were read.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCore.EnterScope(Microsoft.OData.ODataCollectionReaderState,System.Object)">
            <summary>
            Creates a new <see cref="T:Microsoft.OData.ODataCollectionReaderCore.Scope"/> for the specified <paramref name="state"/> and
            with the provided <paramref name="item"/> and pushes it on the stack of scopes.
            </summary>
            <param name="state">The <see cref="T:Microsoft.OData.ODataCollectionReaderState"/> to use for the new scope.</param>
            <param name="item">The item to attach with the state in the new scope.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCore.EnterScope(Microsoft.OData.ODataCollectionReaderState,System.Object,System.Boolean)">
            <summary>
            Creates a new <see cref="T:Microsoft.OData.ODataCollectionReaderCore.Scope"/> for the specified <paramref name="state"/> and
            with the provided <paramref name="item"/> and pushes it on the stack of scopes.
            </summary>
            <param name="state">The <see cref="T:Microsoft.OData.ODataCollectionReaderState"/> to use for the new scope.</param>
            <param name="item">The item to attach with the state in the new scope.</param>
            <param name="isCollectionElementEmpty">The state of the collection element - empty or not-empty.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCore.ReplaceScope(Microsoft.OData.ODataCollectionReaderState,System.Object)">
            <summary>
            Replaces the current scope with a new <see cref="T:Microsoft.OData.ODataCollectionReaderCore.Scope"/> with the specified <paramref name="state"/> and
            the item of the current scope.
            </summary>
            <param name="state">The <see cref="T:Microsoft.OData.ODataCollectionReaderState"/> to use for the new scope.</param>
            <param name="item">The item associated with the replacement state.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCore.PopScope(Microsoft.OData.ODataCollectionReaderState)">
            <summary>
            Removes the current scope from the stack of all scopes.
            </summary>
            <param name="state">The expected state of the current scope (to be popped).</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCore.InterceptException``1(System.Func{``0})">
            <summary>
            Catch any exception thrown by the action passed in; in the exception case move the reader into
            state ExceptionThrown and then rethrow the exception.
            </summary>
            <typeparam name="T">The type returned from the <paramref name="action"/> to execute.</typeparam>
            <param name="action">The action to execute.</param>
            <returns>The result of executing the <paramref name="action"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCore.VerifyCanRead(System.Boolean)">
            <summary>
            Verifies that calling Read is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCore.VerifyCallAllowed(System.Boolean)">
            <summary>
            Verifies that a call is allowed to the reader.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCore.VerifySynchronousCallAllowed">
            <summary>
            Verifies that a synchronous operation is allowed on this reader.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCore.VerifyAsynchronousCallAllowed">
            <summary>
            Verifies that an asynchronous operation is allowed on this reader.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataCollectionReaderCore.Scope">
            <summary>
            A collection reader scope; keeping track of the current reader state and an item associated with this state.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionReaderCore.Scope.state">
            <summary>The reader state of this scope.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionReaderCore.Scope.item">
            <summary>The item attached to this scope.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionReaderCore.Scope.isCollectionElementEmpty">
            <summary>True, if the collection element attached to this scope is empty. False otherwise.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCore.Scope.#ctor(Microsoft.OData.ODataCollectionReaderState,System.Object)">
            <summary>
            Constructor creating a new reader scope.
            </summary>
            <param name="state">The reader state of this scope.</param>
            <param name="item">The item attached to this scope.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCore.Scope.#ctor(Microsoft.OData.ODataCollectionReaderState,System.Object,System.Boolean)">
            <summary>
            Constructor creating a new reader scope.
            </summary>
            <param name="state">The reader state of this scope.</param>
            <param name="item">The item attached to this scope.</param>
            <param name="isCollectionElementEmpty">The state of the collection element - empty or not-empty</param>
        </member>
        <member name="P:Microsoft.OData.ODataCollectionReaderCore.Scope.State">
            <summary>
            The reader state of this scope.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataCollectionReaderCore.Scope.Item">
            <summary>
            The item attached to this scope.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataCollectionReaderCoreAsync">
            <summary>
            Base class for OData collection readers that verifies a proper sequence of read calls on the reader and which support true async operations.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCoreAsync.#ctor(Microsoft.OData.ODataInputContext,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.IODataReaderWriterListener)">
            <summary>
            Constructor.
            </summary>
            <param name="inputContext">The input to read from.</param>
            <param name="expectedItemTypeReference">The expected type reference for the items in the collection.</param>
            <param name="listener">If not null, the reader will notify the implementer of the interface of relevant state changes in the reader.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCoreAsync.ReadAtStartImplementationAsync">
            <summary>
            Implementation of the collection reader logic when in state 'Start'.
            </summary>
            <returns>Task which returns true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCoreAsync.ReadAtCollectionStartImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'CollectionStart'.
            </summary>
            <returns>Task which returns true if more nodes can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCoreAsync.ReadAtValueImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'Value'.
            </summary>
            <returns>Task which returns true if more nodes can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCoreAsync.ReadAtCollectionEndImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'CollectionEnd'.
            </summary>
            <returns>Task which should return false since no more nodes can be read from the reader after the collection ends.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionReaderCoreAsync.ReadAsynchronously">
            <summary>
            Asynchronously reads the next <see cref="T:Microsoft.OData.ODataItem"/> from the message payload.
            </summary>
            <returns>A task that when completed indicates whether more items were read.</returns>
            <remarks>The base class already implements this but only for fully synchronous readers, the implementation here
            allows fully asynchronous readers.</remarks>
        </member>
        <member name="T:Microsoft.OData.ODataCollectionReaderState">
            <summary>
            Enumeration of all possible states of an <see cref="T:Microsoft.OData.ODataCollectionReader" />.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionReaderState.Start">
            <summary>The reader is at the start; nothing has been read yet.</summary>
            <remarks>In this state, the Item property of the <see cref="T:Microsoft.OData.ODataCollectionReader"/> returns null.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionReaderState.CollectionStart">
            <summary>
            The reader has started reading and is reading the start element of the collection wrapper (if any).
            No items have been read.
            </summary>
            <remarks>
            In this state, the Item property of the <see cref="T:Microsoft.OData.ODataCollectionReader"/> returns
            an instance of <see cref="T:Microsoft.OData.ODataCollectionStart"/>.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionReaderState.Value">
            <summary>
            The reader read an item from the collection.
            </summary>
            <remarks>In this state, the Item property of the <see cref="T:Microsoft.OData.ODataCollectionReader"/> returns the read item (a primitive value or null).</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionReaderState.CollectionEnd">
            <summary>
            The reader has finished reading and is reading the end element of the collection wrapper (if any).
            All items have been read.
            </summary>
            <remarks>
            In this state, the Item property of the <see cref="T:Microsoft.OData.ODataCollectionReader"/> returns the same
            instance of <see cref="T:Microsoft.OData.ODataCollectionStart"/> as in state CollectionStart.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionReaderState.Exception">
            <summary>The reader has thrown an exception; nothing can be read from the reader anymore.</summary>
            <remarks>
            In this state, the Item property of the <see cref="T:Microsoft.OData.ODataCollectionReader"/> returns null.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionReaderState.Completed">
            <summary>The reader has completed; nothing can be read anymore.</summary>
            <remarks>
            In this state, the Item property of the <see cref="T:Microsoft.OData.ODataCollectionReader"/> returns null.
            </remarks>
        </member>
        <member name="T:Microsoft.OData.ODataCollectionStart">
            <summary>
            OData representation of a top-level collection.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionStart.serializationInfo">
            <summary>
            Provides additional serialization information to the <see cref="T:Microsoft.OData.ODataCollectionWriter"/> for this <see cref="T:Microsoft.OData.ODataCollectionStart"/>.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataCollectionStart.Name">
            <summary>Gets or sets the name of the collection (ATOM only).</summary>
            <returns>The name of the collection.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataCollectionStart.Count">
            <summary>Gets the number of items in the collection.</summary>
            <returns>The number of items in the collection.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataCollectionStart.NextPageLink">
            <summary>Gets the URI representing the next page link.</summary>
            <returns>The URI representing the next page link.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataCollectionStart.SerializationInfo">
            <summary>
            Provides additional serialization information to the <see cref="T:Microsoft.OData.ODataCollectionWriter"/> for this <see cref="T:Microsoft.OData.ODataCollectionStart"/>.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataCollectionStartSerializationInfo">
            <summary>
            Class to provide additional serialization information to the <see cref="T:Microsoft.OData.ODataCollectionWriter"/> for an <see cref="T:Microsoft.OData.ODataCollectionStart"/>.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionStartSerializationInfo.collectionTypeName">
            <summary>
            The fully qualified type name of the collection to be written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataCollectionStartSerializationInfo.CollectionTypeName">
            <summary>
            The fully qualified type name of the collection to be written.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionStartSerializationInfo.Validate(Microsoft.OData.ODataCollectionStartSerializationInfo)">
            <summary>
            Validates the <paramref name="serializationInfo"/> instance.
            </summary>
            <param name="serializationInfo">The serialization info instance to validate.</param>
            <returns>The <paramref name="serializationInfo"/> instance.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataCollectionValue">
            <summary>
            OData representation of a Collection.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataCollectionValue.TypeName">
            <summary>Gets or sets the type of the collection value.</summary>
            <returns>The type of the collection value.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataCollectionValue.Items">
            <summary>Gets or sets the items in the bag value.</summary>
            <returns>The items in the bag value.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataCollectionWriter">
            <summary>
            Base class for OData collection writers.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriter.WriteStart(Microsoft.OData.ODataCollectionStart)">
            <summary>Start writing a collection.</summary>
            <param name="collectionStart">The <see cref="T:Microsoft.OData.ODataCollectionStart" /> representing the collection.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriter.WriteStartAsync(Microsoft.OData.ODataCollectionStart)">
            <summary>Asynchronously start writing a collection.</summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
            <param name="collectionStart">The <see cref="T:Microsoft.OData.ODataCollectionStart" /> representing the collection.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriter.WriteItem(System.Object)">
            <summary>Write a collection item.</summary>
            <param name="item">The collection item to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriter.WriteItemAsync(System.Object)">
            <summary>Asynchronously write a collection item.</summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
            <param name="item">The collection item to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriter.WriteEnd">
            <summary>Finishes writing a collection.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriter.WriteEndAsync">
            <summary>Asynchronously finish writing a collection.</summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriter.Flush">
            <summary>Flushes the write buffer to the underlying stream.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriter.FlushAsync">
            <summary>Flushes the write buffer to the underlying stream asynchronously.</summary>
            <returns>A task instance that represents the asynchronous operation.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataCollectionWriterCore">
            <summary>
            Base class for OData collection writers that verifies a proper sequence of write calls on the writer.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionWriterCore.outputContext">
            <summary>The output context to write to.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionWriterCore.listener">
            <summary>If not null, the writer will notify the implementer of the interface of relevant state changes in the writer.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionWriterCore.scopes">
            <summary>Stack of writer scopes to keep track of the current context of the writer.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionWriterCore.expectedItemType">
            <summary>The expected type of the items in the collection or null if no expected item type exists.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionWriterCore.duplicatePropertyNameChecker">
            <summary>Checker to detect duplicate property names on complex collection items.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionWriterCore.collectionValidator">
            <summary>The collection validator instance if no expected item type has been specified; otherwise null.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.#ctor(Microsoft.OData.ODataOutputContext,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Constructor.
            </summary>
            <param name="outputContext">The output context to write to.</param>
            <param name="itemTypeReference">The item type of the collection being written or null if no metadata is available.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.#ctor(Microsoft.OData.ODataOutputContext,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.IODataReaderWriterListener)">
            <summary>
            Constructor.
            </summary>
            <param name="outputContext">The output context to write to.</param>
            <param name="expectedItemType">The type reference of the expected item type or null if no expected item type exists.</param>
            <param name="listener">If not null, the writer will notify the implementer of the interface of relevant state changes in the writer.</param>
        </member>
        <member name="T:Microsoft.OData.ODataCollectionWriterCore.CollectionWriterState">
            <summary>
            An enumeration representing the current state of the writer.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionWriterCore.CollectionWriterState.Start">
            <summary>The writer is at the start; nothing has been written yet.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionWriterCore.CollectionWriterState.Collection">
            <summary>
            The writer has started writing and is writing the wrapper elements for the
            collection items (if any). No or all items have been written.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionWriterCore.CollectionWriterState.Item">
            <summary>The writer is in a state where collection items can be written.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionWriterCore.CollectionWriterState.Completed">
            <summary>The writer has completed; nothing can be written anymore.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionWriterCore.CollectionWriterState.Error">
            <summary>Writer has written an error; nothing can be written anymore.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataCollectionWriterCore.State">
            <summary>
            The current state of the writer.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataCollectionWriterCore.DuplicatePropertyNameChecker">
            <summary>Checker to detect duplicate property names on complex collection items.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataCollectionWriterCore.CollectionValidator">
            <summary>
            The collection validator instance.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataCollectionWriterCore.ItemTypeReference">
            <summary>
            The item type of the collection being written or null if no metadata is available.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.Flush">
            <summary>
            Flushes the write buffer to the underlying stream.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.FlushAsync">
            <summary>
            Asynchronously flushes the write buffer to the underlying stream.
            </summary>
            <returns>A task instance that represents the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.WriteStart(Microsoft.OData.ODataCollectionStart)">
            <summary>
            Start writing a collection.
            </summary>
            <param name="collectionStart">The <see cref="T:Microsoft.OData.ODataCollectionStart"/> representing the collection.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.WriteStartAsync(Microsoft.OData.ODataCollectionStart)">
            <summary>
            Asynchronously start writing a collection.
            </summary>
            <param name="collection">The <see cref="T:Microsoft.OData.ODataCollectionStart"/> representing the collection.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.WriteItem(System.Object)">
            <summary>
            Write a collection item.
            </summary>
            <param name="item">The collection item to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.WriteItemAsync(System.Object)">
            <summary>
            Asynchronously start writing a collection item.
            </summary>
            <param name="item">The collection item to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.WriteEnd">
            <summary>
            Finish writing a collection.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.WriteEndAsync">
            <summary>
            Asynchronously finish writing a collection.
            </summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.Microsoft#OData#IODataOutputInStreamErrorListener#OnInStreamError">
            <summary>
            This method notifies the listener, that an in-stream error is to be written.
            </summary>
            <remarks>
            This listener can choose to fail, if the currently written payload doesn't support in-stream error at this position.
            If the listener returns, the writer should not allow any more writing, since the in-stream error is the last thing in the payload.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.IsErrorState(Microsoft.OData.ODataCollectionWriterCore.CollectionWriterState)">
            <summary>
            Determines whether a given writer state is considered an error state.
            </summary>
            <param name="state">The writer state to check.</param>
            <returns>True if the writer state is an error state; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.VerifyNotDisposed">
            <summary>
            Check if the object has been disposed; called from all public API methods. Throws an ObjectDisposedException if the object
            has already been disposed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.FlushSynchronously">
            <summary>
            Flush the output.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.FlushAsynchronously">
            <summary>
            Flush the output.
            </summary>
            <returns>Task representing the pending flush operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.StartPayload">
            <summary>
            Start writing an OData payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.EndPayload">
            <summary>
            Finish writing an OData payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.StartCollection(Microsoft.OData.ODataCollectionStart)">
            <summary>
            Start writing a collection.
            </summary>
            <param name="collectionStart">The <see cref="T:Microsoft.OData.ODataCollectionStart"/> representing the collection.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.EndCollection">
            <summary>
            Finish writing a collection.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.WriteCollectionItem(System.Object,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Writes a collection item (either primitive or complex)
            </summary>
            <param name="item">The collection item to write.</param>
            <param name="expectedItemTypeReference">The expected type of the collection item or null if no expected item type exists.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.VerifyCanWriteStart(System.Boolean,Microsoft.OData.ODataCollectionStart)">
            <summary>
            Verifies that calling WriteStart is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
            <param name="collectionStart">The <see cref="T:Microsoft.OData.ODataCollectionStart"/> representing the collection.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.WriteStartImplementation(Microsoft.OData.ODataCollectionStart)">
            <summary>
            Start writing a collection - implementation of the actual functionality.
            </summary>
            <param name="collectionStart">The <see cref="T:Microsoft.OData.ODataCollectionStart"/> representing the collection.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.VerifyCanWriteItem(System.Boolean)">
            <summary>
            Verify that calling WriteItem is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.WriteItemImplementation(System.Object)">
            <summary>
            Write a collection item - implementation of the actual functionality.
            </summary>
            <param name="item">The collection item to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.VerifyCanWriteEnd(System.Boolean)">
            <summary>
            Verifies that calling WriteEnd is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.WriteEndImplementation">
            <summary>
            Finish writing a collection - implementation of the actual functionality.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.VerifyCanFlush(System.Boolean)">
            <summary>
            Verifies that calling Flush is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.VerifyCallAllowed(System.Boolean)">
            <summary>
            Verifies that a call is allowed to the writer.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.StartPayloadInStartState">
            <summary>
            Checks whether we are currently writing the first top-level element; if so call StartPayload
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.InterceptException(System.Action)">
            <summary>
            Catch any exception thrown by the action passed in; in the exception case move the writer into
            state ExceptionThrown and then rethrow the exception.
            </summary>
            <param name="action">The action to execute.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.NotifyListener(Microsoft.OData.ODataCollectionWriterCore.CollectionWriterState)">
            <summary>
            Notifies the implementer of the <see cref="T:Microsoft.OData.IODataReaderWriterListener"/> interface of relevant state changes in the writer.
            </summary>
            <param name="newState">The new writer state.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.EnterScope(Microsoft.OData.ODataCollectionWriterCore.CollectionWriterState,System.Object)">
            <summary>
            Enter a new writer scope; verifies that the transition from the current state into new state is valid
            and attaches the item to the new scope.
            </summary>
            <param name="newState">The writer state to transition into.</param>
            <param name="item">The item to associate with the new scope.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.LeaveScope">
            <summary>
            Leave the current writer scope and return to the previous scope.
            When reaching the top-level replace the 'Started' scope with a 'Completed' scope.
            </summary>
            <remarks>Note that this method is never called once an error has been written or a fatal exception has been thrown.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.ReplaceScope(Microsoft.OData.ODataCollectionWriterCore.CollectionWriterState,Microsoft.OData.ODataItem)">
            <summary>
            Replaces the current scope with a new scope; checks that the transition is valid.
            </summary>
            <param name="newState">The new state to transition into.</param>
            <param name="item">The item associated with the new state.</param>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.ValidateTransition(Microsoft.OData.ODataCollectionWriterCore.CollectionWriterState)">
            <summary>
            Verify that the transition from the current state into new state is valid .
            </summary>
            <param name="newState">The new writer state to transition into.</param>
        </member>
        <member name="T:Microsoft.OData.ODataCollectionWriterCore.Scope">
            <summary>
            A writer scope; keeping track of the current writer state and an item associated with this state.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionWriterCore.Scope.state">
            <summary>The writer state of this scope.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataCollectionWriterCore.Scope.item">
            <summary>The item attached to this scope.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataCollectionWriterCore.Scope.#ctor(Microsoft.OData.ODataCollectionWriterCore.CollectionWriterState,System.Object)">
            <summary>
            Constructor creating a new writer scope.
            </summary>
            <param name="state">The writer state of this scope.</param>
            <param name="item">The item attached to this scope.</param>
        </member>
        <member name="P:Microsoft.OData.ODataCollectionWriterCore.Scope.State">
            <summary>
            The writer state of this scope.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataCollectionWriterCore.Scope.Item">
            <summary>
            The item attached to this scope.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataConstants">
            <summary>
            Constant values used by the OData or HTTP protocol or OData library.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.MethodGet">
            <summary>
            HTTP method name for GET requests.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.MethodPost">
            <summary>
            HTTP method name for POST requests.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.MethodPut">
            <summary>
            HTTP method name for PUT requests.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.MethodDelete">
            <summary>
            HTTP method name for DELETE requests.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.MethodPatch">
            <summary>
            HTTP method name for PATCH requests.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.ContentTypeHeader">
            <summary>
            Name of the HTTP content type header.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.ODataVersionHeader">
            <summary>
            Name of the OData 'OData-Version' HTTP header.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.ContentIdHeader">
            <summary>
            Name of the HTTP content-ID header.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.ContentLengthHeader">
            <summary>
            Name of the Content-Length HTTP header.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.HttpQValueParameter">
            <summary>
            'q' - HTTP q-value parameter name.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.HttpVersionInBatching">
            <summary>Http Version in batching requests and response.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.HttpVersionInAsync">
            <summary>Http Version in async responses.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.Charset">
            <summary>'charset' - HTTP parameter name.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.HttpMultipartBoundary">
            <summary>multi-part keyword in content-type to identify batch separator</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.ContentTransferEncoding">
            <summary>Name of the HTTP content transfer encoding header.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.BatchContentTransferEncoding">
            <summary>Content-Transfer-Encoding value for batch payloads.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.ODataDefaultProtocolVersion">
            <summary>The default protocol version to use in ODataLib if none is specified.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.BatchRequestBoundaryTemplate">
            <summary>The template used when computing a batch request boundary.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.BatchResponseBoundaryTemplate">
            <summary>The template used when computing a batch response boundary.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.RequestChangeSetBoundaryTemplate">
            <summary>The template used when computing a request changeset boundary.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.ResponseChangeSetBoundaryTemplate">
            <summary>The template used when computing a response changeset boundary.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.HttpWeakETagPrefix">
            <summary>Weak etags in HTTP must start with W/.
            Look in http://www.ietf.org/rfc/rfc2616.txt?number=2616 section 14.19 for more information.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.HttpWeakETagSuffix">
            <summary>Weak etags in HTTP must end with ".
            Look in http://www.ietf.org/rfc/rfc2616.txt?number=2616 section 14.19 for more information.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.DefaultMaxRecursionDepth">
            <summary>The default maximum allowed recursion depth for recursive payload definitions, such as complex values inside complex values.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.DefaultMaxReadMessageSize">
            <summary>The default maximum number of bytes that should be read from a message.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.DefaultMaxPartsPerBatch">
            <summary>The default maximum number of top-level operations and changesets per batch payload.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.DefaultMaxOperationsPerChangeset">
            <summary>The default maximum number of operations per changeset.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.UriSegmentSeparator">
            <summary>The '/' (forward slash) which is the URI segment separator.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.UriSegmentSeparatorChar">
            <summary>The '/' (forward slash) which is the URI segment separator.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.EntityReferenceSegmentName">
            <summary>The '$ref' segment name for constructing association links.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.CollectionPrefix">
            <summary>The 'Collection' segment name for constructing collection of association links.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.DefaultStreamSegmentName">
            <summary>The '$value' segment name for the default stream value.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.TypeNamePrefix">
            <summary>The prefix of type name.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.UriMetadataSegment">
            <summary>A segment name in a URI that indicates metadata is being requested.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.ODataPrefix">
            <summary>The OData prefix</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.CollectionOfEntityReferencesContextUrlSegment">
            <summary>
            Constant "#Collection($ref)" used to represent collection of entity references in Context URL
            Note that if a response is a collection of entity references, the context URL does not contain the type of the referenced entities
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.SingleEntityReferencesContextUrlSegment">
            <summary>
            Constant "#$ref"used to represent single entity reference in Context URL
            Note that if a response is a collection of entity references, the context URL does not contain the type of the referenced entities
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.ContextUriFragmentIndicator">
            <summary>The hash sign acting as fragment indicator in a context URI.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.ContextUriFragmentItemSelector">
            <summary>The $entity token that indicates that the payload is a single item from a set.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.ContextUriProjectionStart">
            <summary>The '(' used to mark the start of Select and Expand clauses in the fragment of a context URI.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.ContextUriProjectionEnd">
            <summary>The ')' used to mark the end of Select and Expand clauses in the fragment of a context URI.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.ContextUriProjectionPropertySeparator">
            <summary>The "," used to split properties of Select and Expand fragment a context URI.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.ContextUriFragmentNull">
            <summary>The token that indicates the payload is a property with null value.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.ContextUriFragmentUntyped">
            <summary>The token that indicates the payload is a property with an untyped value.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.DeltaResourceSet">
            <summary>The $delta token indicates delta resource set.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.ContextUriDeltaResourceSet">
            <summary>The $delta token indicates delta resource set.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.DeletedEntry">
            <summary>The $deletedEntity token indicates deleted resource.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.ContextUriDeletedEntry">
            <summary>The $deletedEntity token indicates deleted resource.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.DeltaLink">
            <summary>The $link token indicates delta link.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.ContextUriDeltaLink">
            <summary>The $link token indicates delta link.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.DeletedLink">
            <summary>The $deletedLink token indicates delta deleted link.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataConstants.ContextUriDeletedLink">
            <summary>The $deletedLink token indicates delta deleted link.</summary>
        </member>
        <member name="T:Microsoft.OData.ODataContentTypeException">
            <summary>Exception type representing exception when Content-Type of a message is not supported.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataContentTypeException.#ctor">
            <summary>Creates a new instance of the <see cref="T:Microsoft.OData.ODataContentTypeException" /> class.</summary>
            <remarks>
            The Message property is initialized to a system-supplied message
            that describes the error. This message takes into account the
            current system culture.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataContentTypeException.#ctor(System.String)">
            <summary>Creates a new instance of the <see cref="T:Microsoft.OData.ODataContentTypeException" /> class.</summary>
            <param name="message">Plain text error message for this exception.</param>
        </member>
        <member name="M:Microsoft.OData.ODataContentTypeException.#ctor(System.String,System.Exception)">
            <summary>Creates a new instance of the <see cref="T:Microsoft.OData.ODataContentTypeException" /> class.</summary>
            <param name="message">Plain text error message for this exception.</param>
            <param name="innerException">Exception that caused this exception to be thrown.</param>
        </member>
        <member name="T:Microsoft.OData.ODataContextUriBuilder">
            <summary>
            Builder class to construct the context url for the various payload kinds.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataContextUriBuilder.baseContextUrl">
            <summary>
            The base context Url
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataContextUriBuilder.throwIfMissingInfo">
            <summary>
            Whether to throw exception when error(missing fields) occurs.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataContextUriBuilder.ValidationDictionary">
            <summary>
            Stores the validation method mapping for supported payload kind.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataContextUriBuilder.#ctor(System.Uri,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.OData.ODataContextUriBuilder"/> class.
            </summary>
            <param name="baseContextUrl">Base context URI.</param>
            <param name="throwIfMissingInfo">Indicates whether to throw exception when error(e.g. required fields missing) occurs.</param>
        </member>
        <member name="M:Microsoft.OData.ODataContextUriBuilder.Create(System.Uri,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.OData.ODataContextUriBuilder"/> class.
            </summary>
            <param name="baseContextUrl">Base context URI.</param>
            <param name="throwIfMissingInfo">Indicates whether to throw exception when error(e.g. required fields missing) occurs.</param>
            <returns>The context uri builder for use.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataContextUriBuilder.BuildContextUri(Microsoft.OData.ODataPayloadKind,Microsoft.OData.ODataContextUrlInfo)">
            <summary>
            Create context URL from ODataPayloadKind and ODataContextUrlInfo.
            should make the context uri correct for null primitive / null enum value / normal enum value
            ODataEnumValue is allowed to have null or arbitrary TypeName, but the output ContextUri must have correct type name.
            </summary>
            <param name="payloadKind">The ODataPayloadKind for the context URI.</param>
            <param name="contextInfo">The ODataContextUrlInfo to be used.</param>
            <returns>The generated context url.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataContextUriBuilder.CreateFromContextUrlInfo(Microsoft.OData.ODataContextUrlInfo)">
            <summary>
            Create context URL from ODataContextUrlInfo.
            </summary>
            <param name="info">The ODataContextUrlInfo to be used.</param>
            <returns>The generated context url.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataContextUriBuilder.AppendTypeCastAndQueryClause(System.Text.StringBuilder,Microsoft.OData.ODataContextUrlInfo)">
            <summary>
            Append type cast and query clause info to string builder if any.
            </summary>
            <param name="builder">The string builder to append info.</param>
            <param name="info">The ODataContextUrlInfo includes type cast and query clause info.</param>
        </member>
        <member name="M:Microsoft.OData.ODataContextUriBuilder.ValidateType(Microsoft.OData.ODataContextUrlInfo)">
            <summary>
            Validate TypeName for given ODataContextUrlInfo for property.
            </summary>
            <param name="contextUrlInfo">The ODataContextUrlInfo to evaluate on.</param>
        </member>
        <member name="M:Microsoft.OData.ODataContextUriBuilder.ValidateCollectionType(Microsoft.OData.ODataContextUrlInfo)">
            <summary>
            Validate TypeName for given ODataContextUrlInfo for collection.
            </summary>
            <param name="contextUrlInfo">The ODataContextUrlInfo to evaluate on.</param>
        </member>
        <member name="M:Microsoft.OData.ODataContextUriBuilder.ValidateNavigationSource(Microsoft.OData.ODataContextUrlInfo)">
            <summary>
            Validate NavigationSource for given ODataContextUrlInfo for resource or resource set.
            </summary>
            <param name="contextUrlInfo">The ODataContextUrlInfo to evaluate on.</param>
        </member>
        <member name="M:Microsoft.OData.ODataContextUriBuilder.ValidateResourcePath(Microsoft.OData.ODataContextUrlInfo)">
            <summary>
            Validate ResourcePath for given ODataContextUrlInfo for individual property.
            </summary>
            <param name="contextUrlInfo">The ODataContextUrlInfo to evaluate on.</param>
        </member>
        <member name="M:Microsoft.OData.ODataContextUriBuilder.ValidateDelta(Microsoft.OData.ODataContextUrlInfo)">
            <summary>
            Validate the given ODataContextUrlInfo for delta
            </summary>
            <param name="contextUrlInfo">The ODataContextUrlInfo to evaluate on.</param>
        </member>
        <member name="T:Microsoft.OData.ODataContextUrlInfo">
            <summary>
            Class representing required information for context URL.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataContextUrlInfo.#ctor">
            <summary>
            Default constructor for <see cref="T:Microsoft.OData.ODataContextUrlInfo"/>
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataContextUrlInfo.DeltaKind">
            <summary>The delta kind used for building context Url</summary>
        </member>
        <member name="P:Microsoft.OData.ODataContextUrlInfo.IsUnknownEntitySet">
            <summary>Whether target is unknown entity set</summary>
        </member>
        <member name="P:Microsoft.OData.ODataContextUrlInfo.HasNavigationSourceInfo">
            <summary>
            Whether the current target has a navigation source or has a meanful the navigation source kind
            e.g. When writing a Resource or Resource Set for Complex type.
                 EdmNavigationSourceKind.None means the target doesn't have a navigation source
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataContextUrlInfo.NavigationPath">
            <summary>Name of navigation path used for building context Url</summary>
        </member>
        <member name="P:Microsoft.OData.ODataContextUrlInfo.NavigationSource">
            <summary>Name of the navigation source used for building context Url</summary>
        </member>
        <member name="P:Microsoft.OData.ODataContextUrlInfo.ResourcePath">
            <summary>ResourcePath used for building context Url</summary>
        </member>
        <member name="P:Microsoft.OData.ODataContextUrlInfo.IsUndeclared">
            <summary>if the context url represents an undeclared property</summary>
        </member>
        <member name="P:Microsoft.OData.ODataContextUrlInfo.QueryClause">
            <summary>Query clause used for building context Url</summary>
        </member>
        <member name="P:Microsoft.OData.ODataContextUrlInfo.TypeName">
            <summary>Entity type name used for building context Url</summary>
        </member>
        <member name="P:Microsoft.OData.ODataContextUrlInfo.TypeCast">
            <summary>TypeCast segment used for building context Url</summary>
        </member>
        <member name="P:Microsoft.OData.ODataContextUrlInfo.IncludeFragmentItemSelector">
            <summary>Whether context Url is for single item used for building context Url</summary>
        </member>
        <member name="M:Microsoft.OData.ODataContextUrlInfo.Create(Microsoft.OData.ODataValue,Microsoft.OData.ODataVersion,Microsoft.OData.ODataUri,Microsoft.OData.Edm.IEdmModel)">
            <summary>
            Create ODataContextUrlInfo for OdataValue.
            </summary>
            <param name="value">The ODataValue to be used.</param>
            <param name="version">OData Version.</param>
            <param name="odataUri">The odata uri info for current query.</param>
            <param name="model">The model used to handle unsigned int conversions.</param>
            <returns>The generated ODataContextUrlInfo.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataContextUrlInfo.Create(Microsoft.OData.ODataCollectionStartSerializationInfo,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Create ODataContextUrlInfo from ODataCollectionStartSerializationInfo
            </summary>
            <param name="info">The ODataCollectionStartSerializationInfo to be used.</param>
            <param name="itemTypeReference">ItemTypeReference specifying element type.</param>
            <returns>The generated ODataContextUrlInfo.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataContextUrlInfo.Create(Microsoft.OData.Edm.IEdmNavigationSource,System.String,System.Boolean,Microsoft.OData.ODataUri,Microsoft.OData.ODataVersion)">
            <summary>
            Create ODataContextUrlInfo from basic information
            </summary>
            <param name="navigationSource">Navigation source for current element.</param>\
            <param name="expectedEntityTypeName">The expectedEntity for current element.</param>
            <param name="isSingle">Whether target is single item.</param>
            <param name="odataUri">The odata uri info for current query.</param>
            <param name="version">The OData Version of the response.</param>
            <returns>The generated ODataContextUrlInfo.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataContextUrlInfo.Create(Microsoft.OData.ODataResourceTypeContext,Microsoft.OData.ODataVersion,System.Boolean,Microsoft.OData.ODataUri)">
            <summary>
            Create ODataContextUrlInfo from ODataResourceTypeContext
            </summary>
            <param name="typeContext">The ODataResourceTypeContext to be used.</param>
            <param name="version">The OData Version of the response</param>
            <param name="isSingle">Whether target is single item.</param>
            <param name="odataUri">The odata uri info for current query.</param>
            <returns>The generated ODataContextUrlInfo.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataContextUrlInfo.Create(Microsoft.OData.ODataResourceTypeContext,Microsoft.OData.ODataVersion,Microsoft.OData.ODataDeltaKind,Microsoft.OData.ODataUri)">
            <summary>
            Create contextUrlInfo for delta
            </summary>
            <param name="typeContext">The ODataResourceTypeContext to be used.</param>
            <param name="version">The OData version of the response.</param>
            <param name="kind">The delta kind.</param>
            <param name="odataUri">The odata uri info for current query.</param>
            <returns>The generated ODataContextUrlInfo.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataContextUrlInfo.IsHiddenBy(Microsoft.OData.ODataContextUrlInfo)">
            <summary>
            Determine whether current contextUrlInfo could be determined from parent contextUrlInfo.
            </summary>
            <param name="parentContextUrlInfo">The parent contextUrlInfo.</param>
            <returns>Whether current contextUrlInfo could be determined from parent contextUrlInfo.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataContextUrlInfo.GetTypeNameForValue(Microsoft.OData.ODataValue,Microsoft.OData.Edm.IEdmModel)">
            <summary>
            Gets the type name based on the given odata value.
            </summary>
            <param name="value">The value.</param>
            <param name="model">The model used to handle unsigned int conversions.</param>
            <returns>The type name for the context URI.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataContextUrlInfo.CreateSelectExpandContextUriSegment(Microsoft.OData.UriParser.SelectExpandClause,Microsoft.OData.ODataVersion)">
            <summary>
            Build the expand clause for a given level in the selectExpandClause
            </summary>
            <param name="selectExpandClause">the current level select expand clause</param>
            <param name="version">OData Version of the response</param>
            <returns>the select and expand segment for context url in this level.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataContextUrlInfo.ProcessSubExpand(System.String,System.String,Microsoft.OData.ODataVersion)">
            <summary>Process sub expand node, contact with subexpand result</summary>
            <param name="expandNode">The current expanded node.</param>
            <param name="subExpand">Generated sub expand node.</param>
            <param name="version">OData Version of the generated response.</param>
            <returns>The generated expand string.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataContextUrlInfo.CombineSelectAndExpandResult(System.Collections.Generic.IList{System.String},System.Collections.Generic.IList{System.String})">
            <summary>Create combined result string using selected items list and expand items list.</summary>
            <param name="selectList">A list of selected item names.</param>
            <param name="expandList">A list of sub expanded item names.</param>
            <returns>The generated expand string.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataContextUrlLevel">
            <summary>
            Enumeration representing the different levels of context URL.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataContextUrlLevel.None">
            <summary>
            No context URL
            Used for json with odata.metadata=none
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataContextUrlLevel.OnDemand">
            <summary>
            Show root context URL of the payload and the context URL for any deleted entries or added or deleted links in a delta response,
            or for entities or entity collections whose set cannot be determined from the root context URL
            Used for atom and json with odata.metadata=minimal
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataContextUrlLevel.Full">
            <summary>
            Show context URL for a collection, entity, primitive value, or service document.
            Used for json with odata.metadata=full
            </summary>
        </member>
        <member name="T:Microsoft.OData.DeltaDeletedEntryReason">
            <summary>
            The reason of deleted resource in delta response.
            </summary>
        </member>
        <member name="F:Microsoft.OData.DeltaDeletedEntryReason.Deleted">
            <summary>
            Entity is deleted (destroyed).
            </summary>
        </member>
        <member name="F:Microsoft.OData.DeltaDeletedEntryReason.Changed">
            <summary>
            Entity is removed from membership in the result(i.e., due to a data change).
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataDeletedResource">
            <summary>
            Represents a deleted entity in delta response.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataDeletedResource.#ctor">
            <summary>
            Initializes a new <see cref="T:Microsoft.OData.ODataDeletedResource"/>.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataDeletedResource.#ctor(System.Uri,Microsoft.OData.DeltaDeletedEntryReason)">
            <summary>
            Initializes a new <see cref="T:Microsoft.OData.ODataDeletedResource"/>.
            </summary>
            <param name="id">The id of the deleted entity, which may be absolute or relative.</param>
            <param name="reason">The reason of deleted resource.</param>
        </member>
        <member name="P:Microsoft.OData.ODataDeletedResource.Reason">
            <summary>
            Optional. Either deleted, if the entity was deleted (destroyed), or changed if the entity was removed from membership in the result (i.e., due to a data change).
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataDeltaDeletedEntry">
            <summary>
            Represents a deleted entity in delta response.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaDeletedEntry.serializationInfo">
            <summary>
            Provides additional serialization information to the <see cref="T:Microsoft.OData.ODataDeltaWriter"/> for this <see cref="T:Microsoft.OData.ODataDeltaDeletedEntry"/>.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaDeletedEntry.#ctor(System.String,Microsoft.OData.DeltaDeletedEntryReason)">
            <summary>
            Initializes a new <see cref="T:Microsoft.OData.ODataDeltaDeletedEntry"/>.
            </summary>
            <param name="id">The id of the deleted entity, which may be absolute or relative.</param>
            <param name="reason">The reason of deleted resource.</param>
        </member>
        <member name="P:Microsoft.OData.ODataDeltaDeletedEntry.Id">
            <summary>
            The id of the deleted entity (same as the odata.id returned or computed when calling GET on resource), which may be absolute or relative.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataDeltaDeletedEntry.Reason">
            <summary>
            Optional. Either deleted, if the entity was deleted (destroyed), or changed if the entity was removed from membership in the result (i.e., due to a data change).
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataDeltaDeletedEntry.SerializationInfo">
            <summary>
            Provides additional serialization information to the <see cref="T:Microsoft.OData.ODataDeltaWriter"/> for this <see cref="T:Microsoft.OData.ODataDeltaDeletedEntry"/>.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaDeletedEntry.GetDeltaDeletedEntry(Microsoft.OData.ODataDeletedResource)">
            <summary>Gets an ODataDeltaDeletedEntry representation of the ODataDeletedResource</summary>
            <param name="entry">The ODataDeletedResource.</param>
            <returns>A returned ODataDeltaDeletedEntry to write.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaDeletedEntry.GetDeletedResource(Microsoft.OData.ODataDeltaDeletedEntry)">
            <summary>Gets an ODataDeletedResource representation of the ODataDeltaDeletedEntry</summary>
            <param name="entry">The ODataDeltaDeletedEntry.</param>
            <returns>A returned ODataDeletedResource to write.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataDeltaDeletedLink">
            <summary>
            Represents a deleted link in delta response.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaDeletedLink.#ctor(System.Uri,System.Uri,System.String)">
            <summary>
            Initializes a new <see cref="T:Microsoft.OData.ODataDeltaLink"/>.
            </summary>
            <param name="source">The id of the entity from which the relationship is defined, which may be absolute or relative.</param>
            <param name="target">The id of the related entity, which may be absolute or relative.</param>
            <param name="relationship">The name of the relationship property on the parent object.</param>
        </member>
        <member name="T:Microsoft.OData.ODataDeltaKind">
            <summary>
            Delta kinds
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaKind.None">
            <summary>None delta</summary>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaKind.ResourceSet">
            <summary>Delta resource set</summary>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaKind.Resource">
            <summary>Delta resource</summary>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaKind.DeletedEntry">
            <summary>Delta deleted resource</summary>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaKind.Link">
            <summary>Delta link</summary>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaKind.DeletedLink">
            <summary>Delta deleted link</summary>
        </member>
        <member name="T:Microsoft.OData.ODataDeltaLink">
            <summary>
            Represents an added link in delta response.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaLink.#ctor(System.Uri,System.Uri,System.String)">
            <summary>
            Initializes a new <see cref="T:Microsoft.OData.ODataDeltaLink"/>.
            </summary>
            <param name="source">The id of the entity from which the relationship is defined, which may be absolute or relative.</param>
            <param name="target">The id of the related entity, which may be absolute or relative.</param>
            <param name="relationship">The name of the relationship property on the parent object.</param>
        </member>
        <member name="T:Microsoft.OData.ODataDeltaLinkBase">
            <summary>
            Represents either an added link or a deleted link in delta response.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaLinkBase.serializationInfo">
            <summary>
            Provides additional serialization information to the <see cref="T:Microsoft.OData.ODataDeltaWriter"/> for this <see cref="T:Microsoft.OData.ODataDeltaLinkBase"/>.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaLinkBase.#ctor(System.Uri,System.Uri,System.String)">
            <summary>
            Initializes a new <see cref="T:Microsoft.OData.ODataDeltaLinkBase"/>.
            </summary>
            <param name="source">The id of the entity from which the relationship is defined, which may be absolute or relative.</param>
            <param name="target">The id of the related entity, which may be absolute or relative.</param>
            <param name="relationship">The name of the relationship property on the parent object.</param>
        </member>
        <member name="P:Microsoft.OData.ODataDeltaLinkBase.Source">
            <summary>
            The id of the entity from which the relationship is defined, which may be absolute or relative.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataDeltaLinkBase.Target">
            <summary>
            The id of the related entity, which may be absolute or relative.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataDeltaLinkBase.Relationship">
            <summary>
            The name of the relationship property on the parent object.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataDeltaLinkBase.SerializationInfo">
            <summary>
            Provides additional serialization information to the <see cref="T:Microsoft.OData.ODataDeltaWriter"/> for this <see cref="T:Microsoft.OData.ODataDeltaLinkBase"/>.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataDeltaReader">
            <summary>
            Base class for OData delta readers.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataDeltaReader.State">
            <summary>Gets the current state of the reader. </summary>
            <returns>The current state of the reader.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataDeltaReader.SubState">
            <summary>Gets the current sub state of the reader. </summary>
            <returns>The current sub state of the reader.</returns>
            <remarks>
            The sub state is a complement to the current state if the current state itself is not enough to determine
            the real state of the reader. The sub state is only meaningful in ExpandedNavigationProperty state.
            </remarks>
        </member>
        <member name="P:Microsoft.OData.ODataDeltaReader.Item">
            <summary>Gets the most recent <see cref="T:Microsoft.OData.ODataItem" /> that has been read. </summary>
            <returns>The most recent <see cref="T:Microsoft.OData.ODataItem" /> that has been read.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaReader.Read">
            <summary> Reads the next <see cref="T:Microsoft.OData.ODataItem" /> from the message payload. </summary>
            <returns>true if more items were read; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaReader.ReadAsync">
            <summary> Asynchronously reads the next <see cref="T:Microsoft.OData.ODataItem" /> from the message payload. </summary>
            <returns>A task that when completed indicates whether more items were read.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataDeltaReaderState">
            <summary>
            Enumeration of all possible states of an <see cref="T:Microsoft.OData.ODataDeltaReader" />.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaReaderState.Start">
            <summary>The reader is at the start; nothing has been read yet.</summary>
            <remarks>In this state, the Item property of the <see cref="T:Microsoft.OData.ODataDeltaReader"/> returns null.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaReaderState.DeltaResourceSetStart">
            <summary>The start of a delta resource set has been read.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataDeltaReader"/> returns
            an <see cref="T:Microsoft.OData.ODataDeltaResourceSet"/> but no properties may be filled in until the DeltaResourceSetEnd state is reached.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaReaderState.DeltaResourceSetEnd">
            <summary>The end of a delta resource set has been read.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataDeltaReader"/> returns
            an <see cref="T:Microsoft.OData.ODataDeltaResourceSet"/> with all properties filled in.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaReaderState.DeltaResourceStart">
            <summary>The start of a delta resource has been read.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataDeltaReader"/> returns
            an <see cref="T:Microsoft.OData.ODataResource"/> but no properties may be filled in until the EntryEnd state is reached.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaReaderState.DeltaResourceEnd">
            <summary>The end of a delta resource has been read.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataDeltaReader"/> returns
            an <see cref="T:Microsoft.OData.ODataResource"/> with all properties filled in.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaReaderState.DeltaDeletedEntry">
            <summary>An delta deleted resource was read.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataDeltaReader"/> returns
            an <see cref="T:Microsoft.OData.ODataDeltaDeletedEntry"/> which is fully populated.
            Note that there's no End state for this item.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaReaderState.DeltaLink">
            <summary>An delta link was read.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataDeltaReader"/> returns
            an <see cref="T:Microsoft.OData.ODataDeltaLink"/> which is fully populated.
            Note that there's no End state for this item.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaReaderState.DeltaDeletedLink">
            <summary>An delta deleted link was read.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataDeltaReader"/> returns
            an <see cref="T:Microsoft.OData.ODataDeltaDeletedLink"/> which is fully populated.
            Note that there's no End state for this item.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaReaderState.Exception">
            <summary>The reader has thrown an exception; nothing can be read from the reader anymore.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataDeltaReader"/> returns null.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaReaderState.Completed">
            <summary>The reader has completed; nothing can be read anymore.</summary>
            <remarks>
            In this state, the Item property of the <see cref="T:Microsoft.OData.ODataDeltaReader"/> returns null.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaReaderState.NestedResource">
            <summary>A nested resource info was read.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataDeltaReader"/> returns
            the current item of the underlying nested resource reader.
            </remarks>
        </member>
        <member name="T:Microsoft.OData.ODataDeltaResourceSet">
            <summary>
            Describes a set of delta changes.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataDeltaResourceSetSerializationInfo">
            <summary>
            Class to provide additional serialization information to the <see cref="T:Microsoft.OData.ODataDeltaWriter"/> for an <see cref="T:Microsoft.OData.ODataDeltaResourceSet"/>.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaResourceSetSerializationInfo.entitySetName">
            <summary>
            The entity set name of the resource/source resource to be written. Should be fully qualified if the entity set is not in the default container.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaResourceSetSerializationInfo.entityTypeName">
            <summary>
            The namespace qualified entity type name of the entity set.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaResourceSetSerializationInfo.expectedEntityTypeName">
            <summary>
            The namespace qualified type name of the expected entity type.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataDeltaResourceSetSerializationInfo.EntitySetName">
            <summary>
            The entity set name of the resource/source resource to be written. Should be fully qualified if the entity set is not in the default container.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataDeltaResourceSetSerializationInfo.EntityTypeName">
            <summary>
            The namespace qualified element type name of the entity set.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataDeltaResourceSetSerializationInfo.ExpectedTypeName">
            <summary>
            The namespace qualified type name of the expected entity type.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaResourceSetSerializationInfo.Validate(Microsoft.OData.ODataDeltaResourceSetSerializationInfo)">
            <summary>
            Validates the <paramref name="serializationInfo"/> instance.
            </summary>
            <param name="serializationInfo">The serialization info instance to validate.</param>
            <returns>The <paramref name="serializationInfo"/> instance.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataDeltaSerializationInfo">
            <summary>
            Class to provide additional serialization information to the <see cref="T:Microsoft.OData.ODataDeltaWriter"/>.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataDeltaSerializationInfo.navigationSourceName">
            <summary>
            The navigation source name of the resource/source resource to be written. Should be fully qualified if the navigatio nsource is not in the default container.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataDeltaSerializationInfo.NavigationSourceName">
            <summary>
            The navigation source name of the resource/source resource to be written. Should be fully qualified if the navigation source is not in the default container.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaSerializationInfo.Validate(Microsoft.OData.ODataDeltaSerializationInfo)">
            <summary>
            Validates the <paramref name="serializationInfo"/> instance.
            </summary>
            <param name="serializationInfo">The serialization info instance to validate.</param>
            <returns>The <paramref name="serializationInfo"/> instance.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataDeltaWriter">
            <summary>
            Base class for OData delta writer.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaWriter.WriteStart(Microsoft.OData.ODataDeltaResourceSet)">
            <summary>
            Start writing a delta resource set.
            </summary>
            <param name="deltaResourceSet">Delta resource set/collection to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaWriter.WriteStartAsync(Microsoft.OData.ODataDeltaResourceSet)">
            <summary>
            Asynchronously start writing a delta resource set.
            </summary>
            <param name="deltaResourceSet">Delta resource set/collection to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaWriter.WriteEnd">
            <summary>
            Finish writing a delta resource set.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaWriter.WriteEndAsync">
            <summary>
            Asynchronously finish writing a delta resource set.
            </summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaWriter.WriteStart(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            Start writing a nested resource info.
            </summary>
            <param name="nestedResourceInfo">The nested resource info to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaWriter.WriteStartAsync(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            Asynchronously start writing a nested resource info.
            </summary>
            <param name="nestedResourceInfo">The nested resource info to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaWriter.WriteStart(Microsoft.OData.ODataResourceSet)">
            <summary>
            Start writing an expanded resource set.
            </summary>
            <param name="expandedResourceSet">The expanded resource set to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaWriter.WriteStartAsync(Microsoft.OData.ODataResourceSet)">
            <summary>
            Asynchronously start writing an expanded resource set.
            </summary>
            <param name="expandedResourceSet">The expanded resource set to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaWriter.WriteStart(Microsoft.OData.ODataResource)">
            <summary>
            Start writing a delta resource.
            </summary>
            <param name="deltaResource">The delta resource to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaWriter.WriteStartAsync(Microsoft.OData.ODataResource)">
            <summary>
            Asynchronously start writing a delta resource.
            </summary>
            <param name="deltaResource">The delta resource to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaWriter.WriteDeltaDeletedEntry(Microsoft.OData.ODataDeltaDeletedEntry)">
            <summary>
            Writing a delta deleted resource.
            </summary>
            <param name="deltaDeletedEntry">The delta deleted resource to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaWriter.WriteDeltaDeletedEntryAsync(Microsoft.OData.ODataDeltaDeletedEntry)">
            <summary>
            Asynchronously writing a delta deleted resource.
            </summary>
            <param name="deltaDeletedEntry">The delta deleted resource to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaWriter.WriteDeltaLink(Microsoft.OData.ODataDeltaLink)">
            <summary>
            Writing a delta link.
            </summary>
            <param name="deltaLink">The delta link to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaWriter.WriteDeltaLinkAsync(Microsoft.OData.ODataDeltaLink)">
            <summary>
            Asynchronously writing a delta link.
            </summary>
            <param name="deltaLink">The delta link to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaWriter.WriteDeltaDeletedLink(Microsoft.OData.ODataDeltaDeletedLink)">
            <summary>
            Writing a delta deleted link.
            </summary>
            <param name="deltaDeletedLink">The delta deleted link to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaWriter.WriteDeltaDeletedLinkAsync(Microsoft.OData.ODataDeltaDeletedLink)">
            <summary>
            Asynchronously writing a delta deleted link.
            </summary>
            <param name="deltaDeletedLink">The delta deleted link to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaWriter.Flush">
            <summary>
            Flushes the write buffer to the underlying stream.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataDeltaWriter.FlushAsync">
            <summary>
            Asynchronously flushes the write buffer to the underlying stream.
            </summary>
            <returns>A task instance that represents the asynchronous operation.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataDeserializer">
            <summary>
            Base class for all OData deserializers.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataDeserializer.ReaderValidator">
            <summary>The reader validator to use for reading.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataDeserializer.inputContext">
            <summary>The input context to use for reading.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataDeserializer.#ctor(Microsoft.OData.ODataInputContext)">
            <summary>
            Constructor.
            </summary>
            <param name="inputContext">The input context to read from.</param>
        </member>
        <member name="P:Microsoft.OData.ODataDeserializer.MessageReaderSettings">
            <summary>
            The message reader settings.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataDeserializer.ReadingResponse">
            <summary>
            true if the input is a response payload; false if it's a request payload.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataDeserializer.Model">
            <summary>
            The model to use.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataDeserializer.CreatePropertyAndAnnotationCollector">
            <summary>
            Creates a new instance of a duplicate property names checker.
            </summary>
            <returns>The newly created instance of duplicate property names checker.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataEdmPropertyAnnotation">
            <summary>Represents an annotation to hold information for a particular property.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataEdmPropertyAnnotation.NullValueReadBehaviorKind">
            <summary> Gets the behavior for readers when reading property with null value. </summary>
            <returns>The behavior for readers when reading property with null value.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataEntityReferenceLink">
            <summary>
            Represents an entity reference link (the result of a $link query).
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataEntityReferenceLink.Url">
            <summary>Gets or sets the URI representing the URL of the referenced entity.</summary>
            <returns>The URI representing the URL of the referenced entity.</returns>
            <remarks>This URL should be usable to retrieve or modify the referenced entity.</remarks>
        </member>
        <member name="P:Microsoft.OData.ODataEntityReferenceLink.InstanceAnnotations">
            <summary>
            Collection of custom instance annotations.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataEntityReferenceLinks">
            <summary>
            Represents a collection of entity reference links (the result of a $ref query).
            Might include an inline count and a next link.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataEntityReferenceLinks.Count">
            <summary>Gets or sets the optional inline count of the $ref collection.</summary>
            <returns>The optional inline count of the $ref collection.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataEntityReferenceLinks.NextPageLink">
            <summary>Gets or sets the optional next link of the $ref collection.</summary>
            <returns>The optional next link of the $ref collection.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataEntityReferenceLinks.Links">
            <summary>Gets or sets the enumerable of <see cref="T:Microsoft.OData.ODataEntityReferenceLink" /> instances representing the links of the referenced entities.</summary>
            <returns>The enumerable of <see cref="T:Microsoft.OData.ODataEntityReferenceLink" /> instances.</returns>
            <remarks>These links should be usable to retrieve or modify the referenced entities.</remarks>
        </member>
        <member name="P:Microsoft.OData.ODataEntityReferenceLinks.InstanceAnnotations">
            <summary>
            Collection of custom instance annotations.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataEntitySetInfo">
            <summary>
            Class representing a entity set in a service document.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataEnumValue">
            <summary>
            OData enum value
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataEnumValue.#ctor(System.String)">
            <summary>Constructor</summary>
            <param name="value">The backing type, can be "3" or "White" or "Black,Yellow,Cyan".</param>
        </member>
        <member name="M:Microsoft.OData.ODataEnumValue.#ctor(System.String,System.String)">
            <summary>Constructor</summary>
            <param name="value">The backing type, can be "3" or "White" or "Black,Yellow,Cyan".</param>
            <param name="typeName">The type name in edm model.</param>
        </member>
        <member name="P:Microsoft.OData.ODataEnumValue.Value">
            <summary>Get backing type value, can be "3" or "White" or "Black,Yellow,Cyan".</summary>
        </member>
        <member name="P:Microsoft.OData.ODataEnumValue.TypeName">
            <summary>Get the type name in edm model.</summary>
        </member>
        <member name="T:Microsoft.OData.ODataError">
            <summary>
            Class representing an error payload.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataError.ErrorCode">
            <summary>Gets or sets the error code to be used in payloads.</summary>
            <returns>The error code to be used in payloads.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataError.Message">
            <summary>Gets or sets the error message.</summary>
            <returns>The error message.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataError.Target">
            <summary>Gets or sets the target of the particular error.</summary>
            <returns>For example, the name of the property in error</returns>
        </member>
        <member name="P:Microsoft.OData.ODataError.Details">
            <summary>
            A collection of JSON objects that MUST contain name/value pairs for code and message, and MAY contain
            a name/value pair for target, as described above.
            </summary>
            <returns>The error details.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataError.InnerError">
            <summary>Gets or sets the implementation specific debugging information to help determine the cause of the error.</summary>
            <returns>The implementation specific debugging information.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataError.InstanceAnnotations">
            <summary>
            Collection of custom instance annotations.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataError.ToString">
            <summary>
            Serialization to Json format string representing the error object.
            </summary>
            <returns>The string in Json format.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataError.GetJsonStringForDetails">
            <summary>
            Convert the Details property to Json format string.
            </summary>
            <returns>Json format string representing collection.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataErrorDetail">
            <summary>
            Class representing an error detail.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataErrorDetail.ErrorCode">
            <summary>Gets or sets the error code to be used in payloads.</summary>
            <returns>The error code to be used in payloads.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataErrorDetail.Message">
            <summary>Gets or sets the error message.</summary>
            <returns>The error message.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataErrorDetail.Target">
            <summary>Gets or sets the target of the particular error.</summary>
            <returns>For example, the name of the property in error</returns>
        </member>
        <member name="M:Microsoft.OData.ODataErrorDetail.ToJson">
            <summary>
            Serialization to Json format string.
            </summary>
            <returns>The string in Json format</returns>
        </member>
        <member name="T:Microsoft.OData.ODataErrorException">
            <summary>
            Exception type representing an in-stream error parsed when reading a payload.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataErrorException.state">
            <summary>The <see cref="T:Microsoft.OData.ODataErrorException.ODataErrorExceptionSafeSerializationState"/> value containing <see cref="T:Microsoft.OData.ODataError"/> instance representing the error
            read from the payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataErrorException.#ctor">
            <summary>Creates a new instance of the <see cref="T:Microsoft.OData.ODataErrorException" /> class with default values.</summary>
            <remarks>
            The Message property is initialized to a system-supplied message
            that describes the error. This message takes into account the
            current system culture. The Error property will be initialized with an empty <see cref="T:Microsoft.OData.ODataError"/> instance.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataErrorException.#ctor(System.String)">
            <summary>Creates a new instance of the <see cref="T:Microsoft.OData.ODataErrorException" /> class with an error message.</summary>
            <param name="message">The plain text error message for this exception.</param>
            <remarks>
            The Error property will be initialized with an empty <see cref="T:Microsoft.OData.ODataError"/> instance.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataErrorException.#ctor(System.String,System.Exception)">
            <summary>Creates a new instance of the <see cref="T:Microsoft.OData.ODataErrorException" /> class with an error message and an inner exception.</summary>
            <param name="message">The plain text error message for this exception.</param>
            <param name="innerException">The inner exception that is the cause of this exception to be thrown.</param>
            <remarks>
            The Error property will be initialized with an empty <see cref="T:Microsoft.OData.ODataError"/> instance.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataErrorException.#ctor(Microsoft.OData.ODataError)">
            <summary>Creates a new instance of the <see cref="T:Microsoft.OData.ODataErrorException" /> class with an <see cref="T:Microsoft.OData.ODataError" /> object.</summary>
            <param name="error">The <see cref="T:Microsoft.OData.ODataError" /> instance representing the error read from the payload.</param>
            <remarks>
            The Message property is initialized to a system-supplied message
            that describes the error. This message takes into account the
            current system culture.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataErrorException.#ctor(System.String,Microsoft.OData.ODataError)">
            <summary>Creates a new instance of the <see cref="T:Microsoft.OData.ODataErrorException" /> class with an error message and an <see cref="T:Microsoft.OData.ODataError" /> object.</summary>
            <param name="message">The plain text error message for this exception.</param>
            <param name="error">The <see cref="T:Microsoft.OData.ODataError" /> instance representing the error read from the payload.</param>
        </member>
        <member name="M:Microsoft.OData.ODataErrorException.#ctor(System.String,System.Exception,Microsoft.OData.ODataError)">
            <summary>Creates a new instance of the <see cref="T:Microsoft.OData.ODataErrorException" /> class with an error message, an inner exception, and an <see cref="T:Microsoft.OData.ODataError" /> object.</summary>
            <param name="message">The plain text error message for this exception.</param>
            <param name="innerException">The inner exception that is the cause of this exception to be thrown.</param>
            <param name="error">The <see cref="T:Microsoft.OData.ODataError" /> instance representing the error read from the payload.</param>
        </member>
        <member name="P:Microsoft.OData.ODataErrorException.Error">
            <summary>Gets the <see cref="T:Microsoft.OData.ODataError" /> instance representing the error read from the payload.</summary>
            <returns>The <see cref="T:Microsoft.OData.ODataError" /> instance representing the error read from the payload.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataErrorException.ODataErrorExceptionSafeSerializationState">
            <summary>
            Implement the ISafeSerializationData interface to contain custom exception data in a partially trusted assembly.
            Use this interface in post-ORCAS to replace the Exception.GetObjectData method, which is marked with the SecurityCriticalAttribute.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataErrorException.ODataErrorExceptionSafeSerializationState.ODataError">
            <summary>
            Gets or sets the <see cref="P:Microsoft.OData.ODataErrorException.ODataErrorExceptionSafeSerializationState.ODataError"/> object.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataException">
            <summary>
            Exception type representing exceptions in the OData library.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataException.#ctor">
            <summary>Creates a new instance of the <see cref="T:Microsoft.OData.ODataException" /> class with default values.</summary>
            <remarks>
            The Message property is initialized to a system-supplied message
            that describes the error. This message takes into account the
            current system culture.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataException.#ctor(System.String)">
            <summary>Creates a new instance of the <see cref="T:Microsoft.OData.ODataException" /> class with an error message.</summary>
            <param name="message">The plain text error message for this exception.</param>
        </member>
        <member name="M:Microsoft.OData.ODataException.#ctor(System.String,System.Exception)">
            <summary>Creates a new instance of the <see cref="T:Microsoft.OData.ODataException" /> class with an error message and an inner exception.</summary>
            <param name="message">The plain text error message for this exception.</param>
            <param name="innerException">The inner exception that is the cause of this exception to be thrown.</param>
        </member>
        <member name="T:Microsoft.OData.ODataFormat">
            <summary>
            Representation of an OData format.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataFormat.JsonFormat">
            <summary>The JSON Light format instance.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataFormat.rawValueFormat">
            <summary>The RAW format instance.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataFormat.batchFormat">
            <summary>The batch format instance.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataFormat.metadataFormat">
            <summary>The metadata format instance.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataFormat.Json">
            <summary>Specifies the JSON format.</summary>
            <returns>The JSON format.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataFormat.RawValue">
            <summary>Specifies the RAW format; used for raw values.</summary>
            <returns>The RAW format.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataFormat.Batch">
            <summary>Gets the batch format instance.</summary>
            <returns>The batch format instance.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataFormat.Metadata">
            <summary>Gets the metadata format instance.</summary>
            <returns>The metadata format instance.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataFormat.DetectPayloadKind(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Detects the payload kinds supported by this format for the specified message payload.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="settings">Configuration settings of the OData reader.</param>
            <returns>The set of <see cref="T:Microsoft.OData.ODataPayloadKind"/>s that are supported with the specified payload.</returns>
            <remarks>
            The stream returned by GetMessageStream of <paramref name="messageInfo"/> could be used for reading for
            payload kind detection. Reading this stream won't affect later reading operations of payload processing.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataFormat.CreateInputContext(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Creates an instance of the input context for this format.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageReaderSettings">Configuration settings of the OData reader.</param>
            <returns>The newly created input context.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataFormat.CreateOutputContext(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageWriterSettings)">
            <summary>
            Creates an instance of the output context for this format.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageWriterSettings">Configuration settings of the OData writer.</param>
            <returns>The newly created output context.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataFormat.DetectPayloadKindAsync(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Asynchronously detects the payload kinds supported by this format for the specified message payload.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="settings">Configuration settings of the OData reader.</param>
            <returns>A task that when completed returns the set of <see cref="T:Microsoft.OData.ODataPayloadKind"/>s
            that are supported with the specified payload.</returns>
            <remarks>
            The stream returned by GetMessageStream of <paramref name="messageInfo"/> could be used for reading for
            payload kind detection. Reading this stream won't affect later reading operations of payload processing.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataFormat.CreateInputContextAsync(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Asynchronously creates an instance of the input context for this format.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageReaderSettings">Configuration settings of the OData reader.</param>
            <returns>Task which when completed returned the newly created input context.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataFormat.CreateOutputContextAsync(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageWriterSettings)">
            <summary>
            Creates an instance of the output context for this format.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageWriterSettings">Configuration settings of the OData writer.</param>
            <returns>Task which represents the pending create operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataFormat.GetContentType(Microsoft.OData.ODataMediaType,System.Text.Encoding,System.Boolean,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}}@)">
            <summary>
            Returns the appropriate content-type for this format.
            </summary>
            <param name="mediaType">The specified media type.</param>
            <param name="encoding">The specified encoding.</param>
            <param name="writingResponse">True if the message writer is being used to write a response.</param>
            <param name="mediaTypeParameters"> The resultant parameters list of the media type. Parameters list could be updated
            when getting content type and should be returned if that is the case.
            </param>
            <returns>The content-type value for the format.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataFunction">
            <summary>Represents an OData function.</summary>
        </member>
        <member name="T:Microsoft.OData.ODataFunctionImportInfo">
            <summary>
            Class representing a function Import in a service document.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataInnerError">
            <summary>
            Class representing implementation specific debugging information to help determine the cause of the error.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataInnerError.#ctor">
            <summary>Initializes a new instance of the <see cref="T:Microsoft.OData.ODataInnerError" /> class with default values.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataInnerError.#ctor(System.Exception)">
            <summary>Initializes a new instance of the <see cref="T:Microsoft.OData.ODataInnerError" /> class with exception object.</summary>
            <param name="exception">The <see cref="T:System.Exception" /> used to create the inner error.</param>
        </member>
        <member name="P:Microsoft.OData.ODataInnerError.Message">
            <summary>Gets or sets the error message.</summary>
            <returns>The error message.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataInnerError.TypeName">
            <summary>Gets or sets the type name of this error, for example, the type name of an exception.</summary>
            <returns>The type name of this error.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataInnerError.StackTrace">
            <summary>Gets or sets the stack trace for this error.</summary>
            <returns>The stack trace for this error.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataInnerError.InnerError">
            <summary>Gets or sets the nested implementation specific debugging information. </summary>
            <returns>The nested implementation specific debugging information.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInnerError.ToJson">
            <summary>
            Serialization to Json format string.
            </summary>
            <returns>The string in Json format</returns>
        </member>
        <member name="T:Microsoft.OData.ODataInputContext">
            <summary>
            Base class for all input contexts, defines the interface
            to be implemented by the specific formats.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataInputContext.format">
            <summary>The format for this input context.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataInputContext.messageReaderSettings">
            <summary>The message reader settings to be used for reading.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataInputContext.readingResponse">
            <summary>Set to true if this context is reading a response payload.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataInputContext.synchronous">
            <summary>true if the input should be read synchronously; false if it should be read asynchronously.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataInputContext.payloadUriConverter">
            <summary>The optional URL resolver to perform custom URL resolution for URLs read from the payload.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataInputContext.container">
            <summary>The optional dependency injection container to get related services for message reading.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataInputContext.model">
            <summary>The model to use.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataInputContext.edmTypeResolver">
            <summary>The type resolver to use.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataInputContext.payloadValueConverter">
            <summary>The payload value converter to use.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataInputContext.odataSimplifiedOptions">
            <summary>
            The ODataSimplifiedOptions used in reader.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataInputContext.disposed">
            <summary>Set to true if the input was disposed.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.#ctor(Microsoft.OData.ODataFormat,Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Constructor.
            </summary>
            <param name="format">The format for this input context.</param>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageReaderSettings">Configuration settings of the OData reader.</param>
        </member>
        <member name="P:Microsoft.OData.ODataInputContext.MessageReaderSettings">
            <summary>
            The message reader settings to be used for reading.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataInputContext.ReadingResponse">
            <summary>
            Set to true if a response is being read.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataInputContext.Synchronous">
            <summary>
            true if the input should be read synchronously; false if it should be read asynchronously.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataInputContext.Model">
            <summary>
            The model to use or null if no metadata is available.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataInputContext.PayloadUriConverter">
            <summary>
            The optional URL converter to perform custom URL conversion for URLs read from the payload.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataInputContext.Container">
            <summary>
            The optional dependency injection container to get related services for message reading.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataInputContext.EdmTypeResolver">
            <summary>
            The type resolver to use.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataInputContext.PayloadValueConverter">
            <summary>
            The payload value converter to use.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataInputContext.ODataSimplifiedOptions">
            <summary>
            The ODataSimplifiedOptions used in reader.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.Dispose">
            <summary>
            IDisposable.Dispose() implementation to cleanup unmanaged resources of the context.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.CreateResourceSetReader(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource set.
            </summary>
            <param name="entitySet">The entity set we are going to read resources for.</param>
            <param name="expectedResourceType">The expected structured type for the items in the resource set.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.CreateResourceSetReaderAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource set.
            </summary>
            <param name="entitySet">The entity set we are going to read resources for.</param>
            <param name="expectedResourceType">The expected structured type for the items in the resource set.</param>
            <returns>Task which when completed returns the newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.CreateDeltaResourceSetReader(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a delta resource set.
            </summary>
            <param name="entitySet">The entity set we are going to read resources for.</param>
            <param name="expectedResourceType">The expected structured type for the items in the resource set.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.CreateDeltaResourceSetReaderAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a delta resource set.
            </summary>
            <param name="entitySet">The entity set we are going to read resources for.</param>
            <param name="expectedResourceType">The expected structured type for the items in the resource set.</param>
            <returns>Task which when completed returns the newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.CreateResourceReader(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource.
            </summary>
            <param name="navigationSource">The navigation source we are going to read resources for.</param>
            <param name="expectedResourceType">The expected structured type for the resource to be read.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.CreateResourceReaderAsync(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource.
            </summary>
            <param name="navigationSource">The navigation source we are going to read resources for.</param>
            <param name="expectedResourceType">The expected structured type for the resource to be read.</param>
            <returns>Task which when completed returns the newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.CreateCollectionReader(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Create a <see cref="T:Microsoft.OData.ODataCollectionReader"/>.
            </summary>
            <param name="expectedItemTypeReference">The expected type reference for the items in the collection.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataCollectionReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.CreateCollectionReaderAsync(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Asynchronously create a <see cref="T:Microsoft.OData.ODataCollectionReader"/>.
            </summary>
            <param name="expectedItemTypeReference">The expected type reference for the items in the collection.</param>
            <returns>Task which when completed returns the newly created <see cref="T:Microsoft.OData.ODataCollectionReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.ReadProperty(Microsoft.OData.Edm.IEdmStructuralProperty,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Read the EDM structural property from the input and
            return an <see cref="T:Microsoft.OData.ODataProperty"/> representing the read property.
            </summary>
            <param name="edmStructuralProperty">The <see cref="T:Microsoft.OData.Edm.IEdmProperty"/> producing the property to be read.</param>
            <param name="expectedPropertyTypeReference">The expected type reference of the property to read.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataProperty"/> representing the read property.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.ReadPropertyAsync(Microsoft.OData.Edm.IEdmStructuralProperty,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Asynchronously read the EDM structural property from the input and
            return an <see cref="T:Microsoft.OData.ODataProperty"/> representing the read property.
            </summary>
            <param name="edmStructuralProperty">The <see cref="T:Microsoft.OData.Edm.IEdmProperty"/> producing the property to be read.</param>
            <param name="expectedPropertyTypeReference">The expected type reference of the property to read.</param>
            <returns>Task which when completed returns an <see cref="T:Microsoft.OData.ODataProperty"/> representing the read property.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.ReadError">
            <summary>
            Read a top-level error.
            </summary>
            <returns>An <see cref="T:Microsoft.OData.ODataError"/> representing the read error.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.ReadErrorAsync">
            <summary>
            Asynchronously read a top-level error.
            </summary>
            <returns>Task which when completed returns an <see cref="T:Microsoft.OData.ODataError"/> representing the read error.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.CreateUriParameterResourceReader(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource in a Uri operation parameter.
            </summary>
            <param name="navigationSource">The navigation source we are going to read resources for.</param>
            <param name="expectedResourceType">The expected resource type for the resource to be read.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.CreateUriParameterResourceReaderAsync(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource in a Uri operation parameter.
            </summary>
            <param name="navigationSource">The navigation source we are going to read resources for.</param>
            <param name="expectedResourceType">The expected structured type for the resource to be read.</param>
            <returns>Task which when completed returns the newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.CreateUriParameterResourceSetReader(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource set in a Uri operation parameter.
            </summary>
            <param name="entitySet">The entity set we are going to read resources for.</param>
            <param name="expectedResourceType">The expected structured type for the items in the resource set.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.CreateUriParameterResourceSetReaderAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource set in a Uri operation parameter.
            </summary>
            <param name="entitySet">The entity set we are going to read resources for.</param>
            <param name="expectedResourceType">The expected structured type for the items in the resource set.</param>
            <returns>Task which when completed returns the newly created <see cref="T:Microsoft.OData.ODataReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.CreateParameterReader(Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Create a <see cref="T:Microsoft.OData.ODataParameterReader"/>.
            </summary>
            <param name="operation">The operation whose parameters are being read.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataParameterReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.CreateParameterReaderAsync(Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Asynchronously create a <see cref="T:Microsoft.OData.ODataParameterReader"/>.
            </summary>
            <param name="operation">The operation whose parameters are being read.</param>
            <returns>Task which when completed returns the newly created <see cref="T:Microsoft.OData.ODataParameterReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.CreateAsynchronousReader">
            <summary>
            Create an <see cref="T:Microsoft.OData.ODataAsynchronousReader"/>.
            </summary>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataAsynchronousReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.CreateAsynchronousReaderAsync">
            <summary>
            Asynchronously create an <see cref="T:Microsoft.OData.ODataAsynchronousReader"/>.
            </summary>
            <returns>Task which when completed returns the newly created <see cref="T:Microsoft.OData.ODataAsynchronousReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.CreateDeltaReader(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataDeltaReader" /> to read a resource set.
            </summary>
            <param name="entitySet">The entity set we are going to read entities for.</param>
            <param name="expectedBaseEntityType">The expected base entity type for the entries in the delta response.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataDeltaReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.CreateDeltaReaderAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataDeltaReader" /> to read a resource set.
            </summary>
            <param name="entitySet">The entity set we are going to read entities for.</param>
            <param name="expectedBaseEntityType">The expected base entity type for the entries in the delta response.</param>
            <returns>Task which when completed returns the newly created <see cref="T:Microsoft.OData.ODataDeltaReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.CreateBatchReader">
            <summary>
            Create a <see cref="T:Microsoft.OData.ODataBatchReader"/>.
            </summary>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataBatchReader"/>.</returns>
            <remarks>
            Since we don't want to support batch format extensibility (at least not yet) this method should remain internal.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.CreateBatchReaderAsync">
            <summary>
            Asynchronously create a <see cref="T:Microsoft.OData.ODataBatchReader"/>.
            </summary>
            <returns>Task which when completed returns the newly created <see cref="T:Microsoft.OData.ODataBatchReader"/>.</returns>
            <remarks>
            Since we don't want to support batch format extensibility (at least not yet) this method should remain internal.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.ReadServiceDocument">
            <summary>
            Read a service document.
            This method reads the service document from the input and returns
            an <see cref="T:Microsoft.OData.ODataServiceDocument"/> that represents the read service document.
            </summary>
            <returns>An <see cref="T:Microsoft.OData.ODataServiceDocument"/> representing the read service document.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.ReadServiceDocumentAsync">
            <summary>
            Asynchronously read a service document.
            This method reads the service document from the input and returns
            an <see cref="T:Microsoft.OData.ODataServiceDocument"/> that represents the read service document.
            </summary>
            <returns>Task which when completed returns an <see cref="T:Microsoft.OData.ODataServiceDocument"/> representing the read service document.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.ReadMetadataDocument(System.Func{System.Uri,System.Xml.XmlReader})">
            <summary>
            Read a metadata document.
            This method reads the metadata document from the input and returns
            an <see cref="T:Microsoft.OData.Edm.IEdmModel"/> that represents the read metadata document.
            </summary>
            <param name="getReferencedModelReaderFunc">The function to load referenced model xml. If null, will stop loading the referenced models. Normally it should throw no exception.</param>
            <returns>An <see cref="T:Microsoft.OData.Edm.IEdmModel"/> representing the read metadata document.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.ReadEntityReferenceLinks">
            <summary>
            Read a set of top-level entity reference links.
            </summary>
            <returns>An <see cref="T:Microsoft.OData.ODataEntityReferenceLinks"/> representing the read links.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.ReadEntityReferenceLinksAsync">
            <summary>
            Asynchronously read a set of top-level entity reference links.
            </summary>
            <returns>Task which when completed returns an <see cref="T:Microsoft.OData.ODataEntityReferenceLinks"/> representing the read links.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.ReadEntityReferenceLink">
            <summary>
            Read a top-level entity reference link.
            </summary>
            <returns>An <see cref="T:Microsoft.OData.ODataEntityReferenceLink"/> representing the read entity reference link.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.ReadEntityReferenceLinkAsync">
            <summary>
            Asynchronously read a top-level entity reference link.
            </summary>
            <returns>Task which when completed returns an <see cref="T:Microsoft.OData.ODataEntityReferenceLink"/> representing the read entity reference link.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.ReadValue(Microsoft.OData.Edm.IEdmPrimitiveTypeReference)">
            <summary>
            Read a top-level value.
            </summary>
            <param name="expectedPrimitiveTypeReference">The expected type reference for the value to be read; null if no expected type is available.</param>
            <returns>An <see cref="T:System.Object"/> representing the read value.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.ReadValueAsync(Microsoft.OData.Edm.IEdmPrimitiveTypeReference)">
            <summary>
            Asynchronously read a top-level value.
            </summary>
            <param name="expectedPrimitiveTypeReference">The expected type reference for the value to be read; null if no expected type is available.</param>
            <returns>Task which when completed returns an <see cref="T:System.Object"/> representing the read value.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.VerifyNotDisposed">
            <summary>
            Check if the object has been disposed.
            </summary>
            <exception cref="T:System.ObjectDisposedException">If the object has already been disposed.</exception>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.AssertSynchronous">
            <summary>
            Asserts that the input context was created for synchronous operation.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.AssertAsynchronous">
            <summary>
            Asserts that the input context was created for asynchronous operation.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.CreatePropertyAndAnnotationCollector">
            <summary>
            Creates a new instance of a duplicate property names checker.
            </summary>
            <returns>The newly created instance of duplicate property names checker.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.ResolveUri(System.Uri,System.Uri)">
            <summary>
            Method to use the custom URL resolver to resolve a base URI and a payload URI.
            This method returns null if not custom resolution is desired.
            If the method returns a non-null URL that value will be used without further validation.
            </summary>
            <param name="baseUri">The (optional) base URI to use for the resolution.</param>
            <param name="payloadUri">The URI read from the payload.</param>
            <returns>
            A <see cref="T:System.Uri"/> instance that reflects the custom resolution of the method arguments
            into a URL or null if no custom resolution is desired; in that case the default resolution is used.
            </returns>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.Dispose(System.Boolean)">
            <summary>
            Perform the actual cleanup work.
            </summary>
            <param name="disposing">If 'true' this method is called from user code; if 'false' it is called by the runtime.</param>
        </member>
        <member name="M:Microsoft.OData.ODataInputContext.CreatePayloadKindNotSupportedException(Microsoft.OData.ODataPayloadKind)">
            <summary>
            Creates an exception which reports that the specified payload kind if not support by this format.
            </summary>
            <param name="payloadKind">The payload kind which is not supported.</param>
            <returns>An exception to throw.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataInstanceAnnotation">
            <summary>
            Represents an instance annotation.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataInstanceAnnotation.#ctor(System.String,Microsoft.OData.ODataValue)">
            <summary>
            Constructs a new <see cref="T:Microsoft.OData.ODataInstanceAnnotation"/> instance.
            </summary>
            <param name="name">The name of the instance annotation.</param>
            <param name="value">The value of the instance annotation.</param>
        </member>
        <member name="M:Microsoft.OData.ODataInstanceAnnotation.#ctor(System.String,Microsoft.OData.ODataValue,System.Boolean)">
            <summary>
            Constructs a new <see cref="T:Microsoft.OData.ODataInstanceAnnotation"/> instance.
            </summary>
            <param name="annotationName">The name of the instance annotation.</param>
            <param name="annotationValue">The value of the instance annotation.</param>
            <param name="isCustomAnnotation">If the name is not for built-in OData annotation.</param>
        </member>
        <member name="P:Microsoft.OData.ODataInstanceAnnotation.Name">
            <summary>
            Instance annotation name.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataInstanceAnnotation.Value">
            <summary>
            Instance annotation value.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataInstanceAnnotation.ValidateName(System.String)">
            <summary>
            Validates that the given <paramref name="name"/> is a valid instance annotation name.
            </summary>
            <param name="name">Name to validate.</param>
        </member>
        <member name="M:Microsoft.OData.ODataInstanceAnnotation.ValidateValue(Microsoft.OData.ODataValue)">
            <summary>
            Validates the given <paramref name="value"/> is a valid instance annotation value.
            </summary>
            <param name="value">Value to validate.</param>
        </member>
        <member name="T:Microsoft.OData.ODataItem">
            <summary>
            Base class for Resource Set and Resource.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataJsonDateTimeFormat">
            <summary>
            Enumeration describing the various serialization formats for dates in JSON
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataJsonDateTimeFormat.ODataDateTime">
            <summary>
            Represents a DateTime value in the OData format of \/Date(ticksrepresentingdatetime)\/
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataJsonDateTimeFormat.ISO8601DateTime">
            <summary>
            Represents a DateTime value in the ISO 8601 format of YYYY-MM-DDThh:mm:ss.sTZD eg 1997-07-16T19:20:30.45+01:00
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataLibraryCompatibility">
            <summary>
            Library compatibility levels.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataLibraryCompatibility.Version6">
            <summary>
            Version 6.x
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataLibraryCompatibility.Version7">
            <summary>
            Version 7.x
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataLibraryCompatibility.Latest">
            <summary>
            The latest version of the library.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataMediaType">
            <summary>
            Class representing a media type definition.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataMediaType.parameters">
            <summary>Parameters specified on the media type.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMediaType.subType">
            <summary>Sub-type specification (for example, 'plain').</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMediaType.type">
            <summary>Type specification (for example, 'text').</summary>
        </member>
        <member name="M:Microsoft.OData.ODataMediaType.#ctor(System.String,System.String)">
            <summary>
            Initializes a new <see cref="T:Microsoft.OData.ODataMediaType"/> read-only instance.
            </summary>
            <param name="type">Type specification (for example, 'text').</param>
            <param name="subType">Sub-type specification (for example, 'plain').</param>
        </member>
        <member name="M:Microsoft.OData.ODataMediaType.#ctor(System.String,System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}})">
            <summary>
            Initializes a new <see cref="T:Microsoft.OData.ODataMediaType"/> read-only instance.
            </summary>
            <param name="type">Type specification (for example, 'text').</param>
            <param name="subType">Sub-type specification (for example, 'plain').</param>
            <param name="parameters">Parameters specified on the media type.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMediaType.#ctor(System.String,System.String,System.Collections.Generic.KeyValuePair{System.String,System.String})">
            <summary>
            Initializes a new <see cref="T:Microsoft.OData.ODataMediaType"/> read-only instance.
            </summary>
            <param name="type">Type specification (for example, 'text').</param>
            <param name="subType">Sub-type specification (for example, 'plain').</param>
            <param name="parameter">The parameter specified on the media type.</param>
        </member>
        <member name="P:Microsoft.OData.ODataMediaType.SubType">
            <summary>Returns the subtype part of the media type.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataMediaType.Type">
            <summary>Returns the type part of the media type.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataMediaType.Parameters">
            <summary>media type parameters</summary>
        </member>
        <member name="P:Microsoft.OData.ODataMediaType.FullTypeName">
            <summary>Returns the full media type in standard type/subtype form, without parameters.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataMediaType.SelectEncoding">
            <summary>
            Selects the encoding appropriate for this media type specification
            (possibly null).
            </summary>
            <returns>
            The encoding explicitly defined on the media type specification, or
            the default encoding for well-known media types.
            </returns>
            <remarks>
            As per http://tools.ietf.org/html/rfc2616#section-3.7, the type,
            subtype and parameter name attributes are case-insensitive.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataMediaType.ToText">
            <summary>
            Converts the current <see cref="T:Microsoft.OData.ODataMediaType"/> to a string representation suitable for use in a content-type header.
            </summary>
            <returns>The string representation of media type.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMediaType.ToText(System.Text.Encoding)">
            <summary>
            Converts the current <see cref="T:Microsoft.OData.ODataMediaType"/> to a string representation suitable for use in a content-type header.
            </summary>
            <param name="encoding">The encoding to use when converting the media type into text.</param>
            <returns>The string representation of the current media type.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMediaType.EncodingFromName(System.String)">
            <summary>Gets the named encoding if specified.</summary>
            <param name="name">Name (possibly null or empty).</param>
            <returns>
            The named encoding if specified; the encoding for HTTP missing
            charset specification otherwise.
            </returns>
            <remarks>
            See http://tools.ietf.org/html/rfc2616#section-3.4.1 for details.
            </remarks>
        </member>
        <member name="T:Microsoft.OData.ODataMediaTypeFormat">
            <summary>
            A helper class to associate a <see cref="T:Microsoft.OData.ODataFormat"/> with a media type.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMediaTypeFormat.#ctor(Microsoft.OData.ODataMediaType,Microsoft.OData.ODataFormat)">
            <summary>
            Constructor for<see cref="T:Microsoft.OData.ODataMediaTypeFormat"/>
            </summary>
            <param name="mediaType">MediaType to be used.</param>
            <param name="format">Associated format.</param>
        </member>
        <member name="P:Microsoft.OData.ODataMediaTypeFormat.MediaType">
            <summary>The media type.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataMediaTypeFormat.Format">
            <summary>
            The <see cref="T:Microsoft.OData.ODataFormat"/> for this media type.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataMediaTypeResolver">
            <summary>
            Class with the responsibility of resolving media types (MIME types) into formats and payload kinds.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataMediaTypeResolver.ApplicationXmlMediaType">
            <summary>application/xml media type</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMediaTypeResolver.ApplicationJsonMediaType">
            <summary>application/json media type</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMediaTypeResolver.defaultMediaTypes">
            <summary>
            An array that maps stores the supported media types for all <see cref="T:Microsoft.OData.ODataPayloadKind"/>, ATOM excluded
            </summary>
            <remarks>
            The set of supported media types is ordered (desc) by their precedence/priority with respect to (1) format and (2) media type.
            As a result the default media type for a given payloadKind is the first resource in the MediaTypeWithFormat array.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataMediaTypeResolver.mediaTypesForPayloadKind">
            <summary>
            Array of supported media types and formats for each payload kind.
            The index into the array matches the order of the ODataPayloadKind enum.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataMediaTypeResolver.JsonPayloadKinds">
            <summary>
            The set of payload kinds which are supported for the JSON formats.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataMediaTypeResolver.MediaTypeResolver">
            <summary>
            MediaTypeResolver without atom support
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMediaTypeResolver.#ctor">
            <summary>
            Creates a new media type resolver with the mappings.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMediaTypeResolver.GetMediaTypeFormats(Microsoft.OData.ODataPayloadKind)">
            <summary>
            Gets the supported media types and formats for the given payload kind.
            </summary>
            <param name="payloadKind">The payload kind to get media types for.</param>
            <returns>Media type-format pairs, sorted by priority.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMediaTypeResolver.CloneDefaultMediaTypes">
            <summary>
            Clones the default media types.
            </summary>
            <returns>The cloned media type table.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMediaTypeResolver.AddJsonLightMediaTypes">
            <summary>
            Configure the media type tables so that Json Light is the first JSON format in the table, except for the
            case of Batch payload kind, where the JsonLight media types is added to the back of the list to preserve
            original behavior of default MIME media type.
            </summary>
            <remarks>
            This is only used in V4 and beyond.
            </remarks>
        </member>
        <member name="T:Microsoft.OData.ODataMessage">
            <summary>
            Base class for the internal wrappers around IODataRequestMessageAsync and IODataResponseMessageAsync.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessage.writing">
            <summary>true if the message is being written; false when it is read.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessage.enableMessageStreamDisposal">
            <summary>true if the stream returned should be disposed calls.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessage.maxMessageSize">
            <summary>The maximum size of the message in bytes (or null if no maximum applies).</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessage.useBufferingReadStream">
            <summary>true to use a buffering read stream wrapper around the actual message stream; otherwise false.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessage.bufferingReadStream">
            <summary>The buffering read stream used for payload kind detection; only non-null inside of payload kind detection.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessage.#ctor(System.Boolean,System.Boolean,System.Int64)">
            <summary>
            Constructs a new ODataMessage.
            </summary>
            <param name="writing">true if the message is being written; false when it is read.</param>
            <param name="enableMessageStreamDisposal">true if the stream returned should be disposed calls.</param>
            <param name="maxMessageSize">The maximum size of the message in bytes (or a negative value if no maximum applies).</param>
        </member>
        <member name="P:Microsoft.OData.ODataMessage.Headers">
            <summary>
            Returns an enumerable over all the headers for this message.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessage.BufferingReadStream">
            <summary>
            true to use a buffering read stream wrapper around the actual message stream; otherwise false.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessage.UseBufferingReadStream">
            <summary>
            true to use a buffering read stream wrapper around the actual message stream; otherwise false.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessage.GetHeader(System.String)">
            <summary>
            Returns a value of an HTTP header.
            </summary>
            <param name="headerName">The name of the header to get.</param>
            <returns>The value of the HTTP header, or null if no such header was present on the message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessage.SetHeader(System.String,System.String)">
            <summary>
            Sets the value of an HTTP header.
            </summary>
            <param name="headerName">The name of the header to set.</param>
            <param name="headerValue">The value for the header with name <paramref name="headerName"/>.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessage.GetStream">
            <summary>
            Get the stream backing this message.
            </summary>
            <returns>The stream for this message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessage.GetStreamAsync">
            <summary>
            Asynchronously get the stream backing this message.
            </summary>
            <returns>The stream for this message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessage.QueryInterface``1">
            <summary>
            Queries the message for the specified interface type.
            </summary>
            <typeparam name="TInterface">The type of the interface to query for.</typeparam>
            <returns>The instance of the interface asked for or null if it was not implemented by the message.</returns>
            <remarks>We need this method since the input contexts don't get access to the actual instance of the message given to us by the user
            instead they get this class, and thus they can't just cast to get to the interface they want.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataMessage.GetStream(System.Func{System.IO.Stream},System.Boolean)">
            <summary>
            Synchronously get the stream backing this message.
            </summary>
            <param name="messageStreamFunc">A function that returns the stream backing the message.</param>
            <param name="isRequest">true if the message is a request message; false for a response message.</param>
            <returns>The <see cref="T:System.IO.Stream"/> backing the message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessage.GetStreamAsync(System.Func{System.Threading.Tasks.Task{System.IO.Stream}},System.Boolean)">
            <summary>
            Asynchronously get the stream backing this message.
            </summary>
            <param name="streamFuncAsync">A function that returns a task for the stream backing the message.</param>
            <param name="isRequest">true if the message is a request message; false for a response message.</param>
            <returns>A task that when completed returns the stream backing the message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessage.VerifyCanSetHeader">
            <summary>
            Verifies that setting a header is allowed
            </summary>
            <remarks>
            We allow modifying the headers only if we are writing the message and we are not
            detecting the payload kind.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataMessage.ValidateMessageStream(System.IO.Stream,System.Boolean)">
            <summary>
            Validates that a given message stream can be used.
            </summary>
            <param name="stream">The stream to validate.</param>
            <param name="isRequest">true if the message is a request message; false for a response message.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessage.ValidateMessageStreamTask(System.Threading.Tasks.Task{System.IO.Stream},System.Boolean)">
            <summary>
            Validates that a given task providing the message stream can be used.
            </summary>
            <param name="streamTask">The task to validate.</param>
            <param name="isRequest">true if the message is a request message; false for a response message.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessage.TryGetBufferingReadStream">
            <summary>
            Gets the buffering read stream if one is available; otherwise returns null.
            </summary>
            <returns>The <see cref="P:Microsoft.OData.ODataMessage.BufferingReadStream"/> currently being used or null if no buffering stream is currently being used.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataMessageExtensions">
            <summary>
            Extension methods to IODataRequestMessage and IODataResponseMessage.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageExtensions.GetODataVersion(Microsoft.OData.IODataResponseMessage,Microsoft.OData.ODataVersion)">
            <summary>
            Reads the OData-Version header from the <paramref name="message"/> and parses it.
            If no OData-Version header is found it sets the default version to be used for reading.
            </summary>
            <param name="message">The message to get the OData-Version header from.</param>
            <param name="defaultVersion">The default version to use if the header was not specified.</param>
            <returns>
            The <see cref="T:Microsoft.OData.ODataVersion"/> retrieved from the OData-Version header of the message.
            The default version if none is specified in the header.
            </returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageExtensions.GetODataVersion(Microsoft.OData.IODataRequestMessage,Microsoft.OData.ODataVersion)">
            <summary>
            Reads the OData-Version header from the <paramref name="message"/> and parses it.
            If no OData-Version header is found it sets the default version to be used for reading.
            </summary>
            <param name="message">The message to get the OData-Version version header from.</param>
            <param name="defaultVersion">The default version to use if the header was not specified.</param>
            <returns>
            The <see cref="T:Microsoft.OData.ODataVersion"/> retrieved from the OData-Version header of the message.
            The default version if none is specified in the header.
            </returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageExtensions.PreferHeader(Microsoft.OData.IODataRequestMessage)">
            <summary>
            Gets the <see cref="T:Microsoft.OData.ODataPreferenceHeader"/> instance to get or set preferences on the "Prefer" header of the <paramref name="requestMessage"/>.
            </summary>
            <param name="requestMessage">The request message to get or set the "Prefer" header.</param>
            <returns>Returns the <see cref="T:Microsoft.OData.ODataPreferenceHeader"/> instance to get or set preferences on the "Prefer" header of the <paramref name="requestMessage"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageExtensions.PreferenceAppliedHeader(Microsoft.OData.IODataResponseMessage)">
            <summary>
            Gets the <see cref="T:Microsoft.OData.ODataPreferenceHeader"/> instance to get or set preferences on the "Preference-Applied" header of the <paramref name="responseMessage"/>.
            </summary>
            <param name="responseMessage">The response message to get or set the "Preference-Applied" header.</param>
            <returns>Returns the <see cref="T:Microsoft.OData.ODataPreferenceHeader"/> instance to get or set preferences on the "Preference-Applied" header of the <paramref name="responseMessage"/>.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataMessageInfo">
            <summary>
            Class provides context informatation of certain <see cref="T:Microsoft.OData.IODataRequestMessage"/>
            or <see cref="T:Microsoft.OData.IODataResponseMessage"/>
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageInfo.MediaType">
            <summary>The parsed content type as <see cref="T:Microsoft.OData.ODataMediaType"/>.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageInfo.Encoding">
            <summary>The encoding specified in the charset parameter of contentType or the default encoding from MediaType.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageInfo.Model">
            <summary>The <see cref="T:Microsoft.OData.Edm.IEdmModel"/> for the payload.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageInfo.IsResponse">
            <summary>
            Whether is dealing with response.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageInfo.PayloadUriConverter">
            <summary>
            The optional URL converter to perform custom URL conversion for URLs read from the payload.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageInfo.Container">
            <summary>
            The optional dependency injection container to get related services for message writing.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageInfo.IsAsync">
            <summary>
            Whether the message should be read or written asynchronously.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageInfo.MessageStream">
            <summary>
            The message stream created by GetMessageStream or GetMessageAsync.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageInfo.PayloadKind">
            <summary>
            The payload kind for the message, currently used by <see cref="T:Microsoft.OData.ODataRawInputContext"/> only.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataMessageQuotas">
            <summary>Quotas to use for limiting resource consumption when reading or writing OData messages.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageQuotas.maxPartsPerBatch">
            <summary>The maximum number of top level query operations and changesets allowed in a single batch.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageQuotas.maxOperationsPerChangeset">
            <summary>The maximum number of operations allowed in a single changeset.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageQuotas.maxNestingDepth">
            <summary>The maximum depth of nesting allowed when reading or writing recursive payloads.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageQuotas.maxReceivedMessageSize">
            <summary>The maximum number of bytes that should be read from the message.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageQuotas.#ctor">
            <summary>Initializes a new instance of the <see cref="T:Microsoft.OData.ODataMessageQuotas" /> class.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageQuotas.#ctor(Microsoft.OData.ODataMessageQuotas)">
            <summary>Initializes a new instance of the <see cref="T:Microsoft.OData.ODataMessageQuotas" /> class.</summary>
            <param name="other">The instance to copy.</param>
        </member>
        <member name="P:Microsoft.OData.ODataMessageQuotas.MaxPartsPerBatch">
            <summary>Gets or sets the maximum number of top level query operations and changesets allowed in a single batch.</summary>
            <returns>The maximum number of top level query operations and changesets allowed in a single batch.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataMessageQuotas.MaxOperationsPerChangeset">
            <summary>Gets or sets the maximum number of operations allowed in a single changeset.</summary>
            <returns>The maximum number of operations allowed in a single changeset.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataMessageQuotas.MaxNestingDepth">
            <summary>Gets or sets the maximum depth of nesting allowed when reading or writing recursive payloads.</summary>
            <returns>The maximum depth of nesting allowed when reading or writing recursive payloads.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataMessageQuotas.MaxReceivedMessageSize">
            <summary>Gets or sets the maximum number of bytes that should be read from the message.</summary>
            <returns>The maximum number of bytes that should be read from the message.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataMessageReader">
            <summary>
            Reader class used to read all OData payloads (resources, resource sets, metadata documents, service documents, etc.).
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageReader.message">
            <summary>The message for which the message reader was created.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageReader.readingResponse">
            <summary>A flag indicating whether we are reading a request or a response message.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageReader.settings">
            <summary>The message reader settings to use when reading the message payload.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageReader.model">
            <summary>The model. Non-null if we do have metadata available.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageReader.payloadUriConverter">
            <summary>The optional URL converter to perform custom URL conversion for URLs read from the payload.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageReader.container">
            <summary>The optional dependency injection container to get related services for message reading.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageReader.edmTypeResolver">
            <summary>The resolver to use when determining an entity set's element type.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageReader.mediaTypeResolver">
            <summary>The media type resolver to use when interpreting the incoming content type.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageReader.readMethodCalled">
            <summary>Flag to ensure that only a single read method is called on the message reader.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageReader.isDisposed">
            <summary>true if Dispose() has been called on this message reader, false otherwise.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageReader.inputContext">
            <summary>The input context used to read the message content.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageReader.readerPayloadKind">
            <summary>The payload kind of the payload to be read with this reader.</summary>
            <remarks>This field is set implicitly when one of the read (or reader creation) methods is called.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataMessageReader.format">
            <summary>The <see cref="T:Microsoft.OData.ODataFormat"/> of the payload to be read with this reader.</summary>
            <remarks>This field is set implicitly when one of the read (or reader creation) methods is called.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataMessageReader.contentType">
            <summary>The <see cref="T:Microsoft.OData.ODataMediaType"/> parsed from the content type header.</summary>
            <remarks>This field is set implicitly when one of the read (or reader creation) methods is called.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataMessageReader.encoding">
            <summary>The <see cref="T:System.Text.Encoding"/> of the payload to be read with this reader.</summary>
            <remarks>This field is set implicitly when one of the read (or reader creation) methods is called.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataMessageReader.messageInfo">
            <summary>The context information for the message.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.#ctor(Microsoft.OData.IODataRequestMessage)">
            <summary>Creates a new <see cref="T:Microsoft.OData.ODataMessageReader" /> for the given request message.</summary>
            <param name="requestMessage">The request message for which to create the reader.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.#ctor(Microsoft.OData.IODataRequestMessage,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>Creates a new <see cref="T:Microsoft.OData.ODataMessageReader" /> for the given request message and message reader settings.</summary>
            <param name="requestMessage">The request message for which to create the reader.</param>
            <param name="settings">The message reader settings to use for reading the message payload.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.#ctor(Microsoft.OData.IODataRequestMessage,Microsoft.OData.ODataMessageReaderSettings,Microsoft.OData.Edm.IEdmModel)">
            <summary>
            Creates a new ODataMessageReader for the given request message and message reader settings.
            </summary>
            <param name="requestMessage">The request message for which to create the reader.</param>
            <param name="settings">The message reader settings to use for reading the message payload.</param>
            <param name="model">The model to use.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.#ctor(Microsoft.OData.IODataResponseMessage)">
            <summary>Creates a new <see cref="T:System.Data.OData.ODataMessageReader" /> for the given response message.</summary>
            <param name="responseMessage">The response message for which to create the reader.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.#ctor(Microsoft.OData.IODataResponseMessage,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>Creates a new <see cref="T:Microsoft.OData.ODataMessageReader" /> for the given response message and message reader settings.</summary>
            <param name="responseMessage">The response message for which to create the reader.</param>
            <param name="settings">The message reader settings to use for reading the message payload.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.#ctor(Microsoft.OData.IODataResponseMessage,Microsoft.OData.ODataMessageReaderSettings,Microsoft.OData.Edm.IEdmModel)">
            <summary>
            Creates a new ODataMessageReader for the given response message and message reader settings.
            </summary>
            <param name="responseMessage">The response message for which to create the reader.</param>
            <param name="settings">The message reader settings to use for reading the message payload.</param>
            <param name="model">The model to use.</param>
        </member>
        <member name="P:Microsoft.OData.ODataMessageReader.Settings">
            <summary>
            The message reader settings to use when reading the message payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.DetectPayloadKind">
            <summary>Determines the potential payload kinds and formats of the payload being read and returns it.</summary>
            <returns>The set of potential payload kinds and formats for the payload being read by this reader.</returns>
            <remarks>When this method is called it first analyzes the content type and determines whether there
            are multiple matching payload kinds registered for the message's content type. If there are, it then
            runs the payload kind detection on all formats that have a matching payload kind registered.
            Note that this method can return multiple results if a payload is valid for multiple payload kinds but
            will always at most return a single result per payload kind.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.DetectPayloadKindAsync">
            <summary>Determines the potential payload kinds and formats of the payload being read and returns it.</summary>
            <returns>The set of potential payload kinds and formats for the payload being read by this reader.</returns>
            <remarks>When this method is called it first analyzes the content type and determines whether there
            are multiple matching payload kinds registered for the message's content type. If there are, it then
            runs the payload kind detection on all formats that have a matching payload kind registered.
            Note that this method can return multiple results if a payload is valid for multiple payload kinds but
            will always at most return a single result per payload kind.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataAsynchronousReader">
            <summary>Creates an <see cref="T:Microsoft.OData.ODataAsyncReader" /> to read an async response.</summary>
            <returns>The created async reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataAsynchronousReaderAsync">
            <summary>Asynchronously creates an <see cref="T:Microsoft.OData.ODataAsyncReader" /> to read an async response.</summary>
            <returns>A running task for the created async reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataResourceSetReader">
            <summary>Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource set.</summary>
            <returns>The created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataResourceSetReader(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource set.
            </summary>
            <param name="expectedResourceType">The expected type for the resources in the resource set.</param>
            <returns>The created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataResourceSetReader(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource set.
            </summary>
            <param name="entitySet">The entity set we are going to read resources for.</param>
            <param name="expectedResourceType">The expected type for the items in the resource set.</param>
            <returns>The created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataResourceSetReaderAsync">
            <summary>Asynchronously creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource set.</summary>
            <returns>A running task for the created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataResourceSetReaderAsync(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource set.
            </summary>
            <param name="expectedResourceType">The expected type for the items in the resource set.</param>
            <returns>A running task for the created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataResourceSetReaderAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource set.
            </summary>
            <param name="entitySet">The entity set we are going to read entities for.</param>
            <param name="expectedResourceType">The expected type for the items in the resource set.</param>
            <returns>A running task for the created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataDeltaResourceSetReader">
            <summary>Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a delta resource set.</summary>
            <returns>The created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataDeltaResourceSetReader(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a delta resource set.
            </summary>
            <param name="expectedResourceType">The expected type for the resources in the resource set.</param>
            <returns>The created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataDeltaResourceSetReader(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a delta resource set.
            </summary>
            <param name="entitySet">The entity set we are going to read resources for.</param>
            <param name="expectedResourceType">The expected type for the items in the resource set.</param>
            <returns>The created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataDeltaResourceSetReaderAsync">
            <summary>Asynchronously creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a delta resource set.</summary>
            <returns>A running task for the created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataDeltaResourceSetReaderAsync(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a delta resource set.
            </summary>
            <param name="expectedResourceType">The expected type for the items in the resource set.</param>
            <returns>A running task for the created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataDeltaResourceSetReaderAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a delta resource set.
            </summary>
            <param name="entitySet">The entity set we are going to read entities for.</param>
            <param name="expectedResourceType">The expected type for the items in the resource set.</param>
            <returns>A running task for the created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataDeltaReader(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataDeltaReader" /> to read a resource set.
            </summary>
            <param name="entitySet">The entity set we are going to read entities for.</param>
            <param name="expectedBaseEntityType">The expected base type for the entities in the delta response.</param>
            <returns>The created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataDeltaReaderAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataDeltaReader" /> to read a resource set.
            </summary>
            <param name="entitySet">The entity set we are going to read entities for.</param>
            <param name="expectedBaseEntityType">The expected base type for the entities in the delta response.</param>
            <returns>A running task for the created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataResourceReader">
            <summary>Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource.</summary>
            <returns>The created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataResourceReader(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource.
            </summary>
            <param name="resourceType">The expected resource type for the resource to be read.</param>
            <returns>The created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataResourceReader(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource.
            </summary>
            <param name="navigationSource">The navigation source we are going to read resources for.</param>
            <param name="resourceType">The expected resource type for the resource to be read.</param>
            <returns>The created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataResourceReaderAsync">
            <summary>Asynchronously creates an <see cref="T:System.Data.OData.ODataReader" /> to read a resource.</summary>
            <returns>A running task for the created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataResourceReaderAsync(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource.
            </summary>
            <param name="resourceType">The expected structured type for the resource to be read.</param>
            <returns>A running task for the created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataResourceReaderAsync(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource.
            </summary>
            <param name="navigationSource">The navigation source we are going to read resources for.</param>
            <param name="resourceType">The expected structured type for the resource to be read.</param>
            <returns>A running task for the created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataCollectionReader">
            <summary>Creates an <see cref="T:Microsoft.OData.ODataCollectionReader" /> to read a collection of primitive or complex values (as result of a service operation invocation).</summary>
            <returns>The created collection reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataCollectionReader(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataCollectionReader" /> to read a collection of primitive or complex values (as result of a service operation invocation).
            </summary>
            <param name="expectedItemTypeReference">The expected type reference for the items in the collection.</param>
            <returns>The created collection reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataCollectionReaderAsync">
            <summary>Asynchronously creates an <see cref="T:Microsoft.OData.ODataCollectionReader" /> to read a collection of primitive or complex values (as result of a service operation invocation).</summary>
            <returns>A running task for the created collection reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataCollectionReaderAsync(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataCollectionReader" /> to read a collection of primitive or complex values (as result of a service operation invocation).
            </summary>
            <param name="expectedItemTypeReference">The expected type reference for the items in the collection.</param>
            <returns>A running task for the created collection reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataBatchReader">
            <summary>Creates an <see cref="T:Microsoft.OData.ODataBatchReader" /> to read a batch of requests or responses.</summary>
            <returns>The created batch reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataBatchReaderAsync">
            <summary>Asynchronously creates an <see cref="T:Microsoft.OData.ODataBatchReader" /> to read a batch of requests or responses.</summary>
            <returns>A running task for the created batch reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataUriParameterResourceReader(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource in a Uri operation parameter.
            </summary>
            <param name="navigationSource">The navigation source we are going to read resources for.</param>
            <param name="expectedResourceType">The expected resource type for the resource to be read.</param>
            <returns>The created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataUriParameterResourceReaderAsync(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource in a Uri operation parameter.
            </summary>
            <param name="navigationSource">The navigation source we are going to read resources for.</param>
            <param name="expectedResourceType">The expected structured type for the resource to be read.</param>
            <returns>A running task for the created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataUriParameterResourceSetReader(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource set in a Uri operation parameter.
            </summary>
            <param name="entitySet">The entity set we are going to read resources for.</param>
            <param name="expectedResourceType">The expected type for the items in the resource set.</param>
            <returns>The created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataUriParameterResourceSetReaderAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource set in a Uri operation parameter.
            </summary>
            <param name="entitySet">The entity set we are going to read entities for.</param>
            <param name="expectedResourceType">The expected type for the items in the resource set.</param>
            <returns>A running task for the created reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataParameterReader(Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataParameterReader" /> to read the parameters for <paramref name="operation"/>.
            </summary>
            <param name="operation">The operation whose parameters are being read.</param>
            <returns>The created parameter reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.CreateODataParameterReaderAsync(Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataParameterReader" /> to read the parameters for <paramref name="operation"/>.
            </summary>
            <param name="operation">The operation whose parameters are being read.</param>
            <returns>A running task for the created parameter reader.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.ReadServiceDocument">
            <summary>Reads a service document payload.</summary>
            <returns>The service document read.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.ReadServiceDocumentAsync">
            <summary>Asynchronously reads a service document payload.</summary>
            <returns>A task representing the asynchronous operation of reading the service document.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.ReadProperty">
            <summary>Reads an <see cref="T:Microsoft.OData.ODataProperty" /> as message payload.</summary>
            <returns>The property read from the payload.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.ReadProperty(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Reads an <see cref="T:Microsoft.OData.ODataProperty"/> as message payload.
            </summary>
            <param name="expectedPropertyTypeReference">The expected type reference of the property to read.</param>
            <returns>The property read from the payload.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.ReadProperty(Microsoft.OData.Edm.IEdmStructuralProperty)">
            <summary>
            Reads an <see cref="T:Microsoft.OData.ODataProperty"/> as message payload.
            </summary>
            <param name="property">The metadata of the property to read.</param>
            <returns>The property read from the payload.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.ReadPropertyAsync">
            <summary>Asynchronously reads an <see cref="T:Microsoft.OData.ODataProperty" /> as message payload.</summary>
            <returns>A task representing the asynchronous operation of reading the property.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.ReadPropertyAsync(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Asynchronously reads an <see cref="T:Microsoft.OData.ODataProperty"/> as message payload.
            </summary>
            <param name="expectedPropertyTypeReference">The expected type reference of the property to read.</param>
            <returns>A task representing the asynchronous operation of reading the property.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.ReadPropertyAsync(Microsoft.OData.Edm.IEdmStructuralProperty)">
            <summary>
            Asynchronously reads an <see cref="T:Microsoft.OData.ODataProperty"/> as message payload.
            </summary>
            <param name="property">The metadata of the property to read.</param>
            <returns>A task representing the asynchronous operation of reading the property.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.ReadError">
            <summary>Reads an <see cref="T:Microsoft.OData.ODataError" /> as the message payload.</summary>
            <returns>The <see cref="T:Microsoft.OData.ODataError" /> read from the message payload.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.ReadErrorAsync">
            <summary>Asynchronously reads an <see cref="T:Microsoft.OData.ODataError" /> as the message payload.</summary>
            <returns>A task representing the asynchronous operation of reading the error.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.ReadEntityReferenceLinks">
            <summary>Reads the result of a $ref query (entity reference links) as the message payload.</summary>
            <returns>The entity reference links read as message payload.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.ReadEntityReferenceLinksAsync">
            <summary>Asynchronously reads the result of a $ref query as the message payload.</summary>
            <returns>A task representing the asynchronous reading of the entity reference links.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.ReadEntityReferenceLink">
            <summary>Reads a singleton result of a $ref query (entity reference link) as the message payload.</summary>
            <returns>The entity reference link read from the message payload.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.ReadEntityReferenceLinkAsync">
            <summary>Asynchronously reads a singleton result of a $ref query (entity reference link) as the message payload.</summary>
            <returns>A running task representing the reading of the entity reference link.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.ReadValue(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Reads a single value as the message body.
            </summary>
            <param name="expectedTypeReference">The expected type reference for the value to be read; null if no expected type is available.</param>
            <returns>The read value.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.ReadValueAsync(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Asynchronously reads a single value as the message body.
            </summary>
            <param name="expectedTypeReference">The expected type reference for the value to be read; null if no expected type is available.</param>
            <returns>A running task representing the reading of the value.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.ReadMetadataDocument">
            <summary>Reads the message body as metadata document.</summary>
            <returns>Returns <see cref="T:Microsoft.OData.Edm.IEdmModel" />.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.ReadMetadataDocument(System.Func{System.Uri,System.Xml.XmlReader})">
            <summary>Reads the message body as metadata document.</summary>
            <param name="getReferencedModelReaderFunc">The function to load referenced model xml. If null, will stop loading the referenced models. Normally it should throw no exception.</param>
            <returns>Returns <see cref="T:Microsoft.OData.Edm.IEdmModel" />.</returns>
            <remarks>
            User should handle the disposal of XmlReader created by getReferencedModelReaderFunc.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.Dispose">
            <summary><see cref="M:System.IDisposable.Dispose()" /> implementation to cleanup unmanaged resources of the reader. </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.GetFormat">
            <summary>
            Determines the format of the payload being read and returns it.
            </summary>
            <returns>The format of the payload being read by this reader.</returns>
            <remarks>
            The format of the payload is determined when starting to read the message;
            if this method is called before reading has started it will throw.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.ProcessContentType(Microsoft.OData.ODataPayloadKind[])">
            <summary>
            Processes the content type header of the message to determine the format of the payload, the encoding, and the payload kind.
            </summary>
            <param name="payloadKinds">All possible kinds of payload to be read with this message reader; must not include ODataPayloadKind.Unsupported.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.GetContentTypeHeader(Microsoft.OData.ODataPayloadKind[])">
            <summary>
            Gets the content type header of the message and validates that it is present and not empty.
            </summary>
            <param name="payloadKinds">All possible kinds of payload to be read with this message reader; must not include ODataPayloadKind.Unsupported.</param>
            <returns>The content type header of the message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.GetContentLengthHeader">
            <summary>
            Gets the value of the content length header of the message.
            </summary>
            <returns>The value of the content length header, or 0 if no such header.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.VerifyCanCreateODataResourceSetReader(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Verify arguments for creation of an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource set.
            </summary>
            <param name="entitySet">The entity set we are going to read resources for.</param>
            <param name="expectedBaseResourceType">The expected base structured type for the items in the resource set.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.VerifyCanCreateODataDeltaReader(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Verify arguments for creation of an <see cref="T:Microsoft.OData.ODataDeltaReader" /> to read a resource set.
            </summary>
            <param name="entitySet">The entity set we are going to read entities for.</param>
            <param name="expectedBaseEntityType">The expected base entity type for the entities in the delta response.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.VerifyCanCreateODataResourceReader(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Verify arguments for creation of an <see cref="T:Microsoft.OData.ODataReader" /> to read a resource.
            </summary>
            <param name="navigationSource">The navigation source we are going to read resources for.</param>
            <param name="resourceType">The expected resource type for the resource to be read.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.VerifyCanCreateODataCollectionReader(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Verify arguments for creation of an <see cref="T:Microsoft.OData.ODataCollectionReader" /> to read a collection of primitive or complex values
            (as result of a service operation invocation).
            </summary>
            <param name="expectedItemTypeReference">The expected type for the items in the collection.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.VerifyCanCreateODataAsynchronousReader">
            <summary>
            Verify arguments for creation of an async response as the message body.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.VerifyCanCreateODataBatchReader">
            <summary>
            Verify arguments for creation of a batch as the message body.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.VerifyCanCreateODataParameterReader(Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Verify arguments for creation of an <see cref="T:Microsoft.OData.ODataParameterReader" /> to read the parameters for <paramref name="operation"/>.
            </summary>
            <param name="operation">The operation whose parameters are being read.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.VerifyCanReadServiceDocument">
            <summary>
            Verify arguments for reading of a service document payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.VerifyCanReadMetadataDocument">
            <summary>
            Verify arguments for reading of a metadata document payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.VerifyCanReadProperty(Microsoft.OData.Edm.IEdmStructuralProperty)">
            <summary>
            Verify arguments for reading of an <see cref="T:Microsoft.OData.ODataProperty"/> as message payload.
            </summary>
            <param name="property">The metadata of the property to read.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.VerifyCanReadProperty(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Verify arguments for reading of an <see cref="T:Microsoft.OData.ODataProperty"/> as message payload.
            </summary>
            <param name="expectedPropertyTypeReference">The expected type reference of the property to read.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.VerifyCanReadError">
            <summary>
            Verify arguments for reading of an <see cref="T:Microsoft.OData.ODataError"/> as the message payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.VerifyCanReadEntityReferenceLinks">
            <summary>
            Verify arguments for reading of the result of a $ref query (entity reference links) as the message payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.VerifyCanReadEntityReferenceLink">
            <summary>
            Verify arguments for reading of a singleton result of a $ref query (entity reference link) as the message payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.VerifyCanReadValue(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Verify arguments for reading of a single value as the message body.
            </summary>
            <param name="expectedTypeReference">The expected type reference for the value to be read; null if no expected type is available.</param>
            <returns>The payload kinds allowed for the given expected type.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.VerifyReaderNotDisposedAndNotUsed">
            <summary>
            Verifies that the ODataMessageReader has not been used before; an ODataMessageReader can only be used to
            read a single message payload but cannot be reused later.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.VerifyNotDisposed">
            <summary>
            Check if the object has been disposed. Throws an ObjectDisposedException if the object has already been disposed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.Dispose(System.Boolean)">
            <summary>
            Perform the actual cleanup work.
            </summary>
            <param name="disposing">If 'true' this method is called from user code; if 'false' it is called by the runtime.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.ReadFromInput``1(System.Func{Microsoft.OData.ODataInputContext,``0},Microsoft.OData.ODataPayloadKind[])">
            <summary>
            Method which creates an input context around the input message and calls a func to read the input.
            </summary>
            <typeparam name="T">The type returned by the read method.</typeparam>
            <param name="readFunc">The read function which will be called over the created input context.</param>
            <param name="payloadKinds">All possible kinds of payload to read.</param>
            <returns>The read value from the input.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.TryGetSinglePayloadKindResultFromContentType(System.Collections.Generic.IEnumerable{Microsoft.OData.ODataPayloadKindDetectionResult}@)">
            <summary>
            Gets all the supported payload kinds for a given content type across all formats and returns them.
            </summary>
            <param name="payloadKindResults">The set of supported payload kinds for the content type of the message.</param>
            <returns>true if no or a single payload kind was found for the content type; false if more than one payload kind was found.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.ComparePayloadKindDetectionResult(Microsoft.OData.ODataPayloadKindDetectionResult,Microsoft.OData.ODataPayloadKindDetectionResult)">
            <summary>
            Compares two payload kind detection results.
            </summary>
            <param name="first">The first <see cref="T:Microsoft.OData.ODataPayloadKindDetectionResult"/>.</param>
            <param name="second">The second <see cref="T:Microsoft.OData.ODataPayloadKindDetectionResult"/>.</param>
            <returns>-1 if <paramref name="first"/> is considered less than <paramref name="second"/>,
            0 if the kinds are considered equal, 1 if <paramref name="first"/> is considered greater than <paramref name="second"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.GetPayloadKindDetectionTasks(System.Collections.Generic.IEnumerable{Microsoft.OData.ODataPayloadKindDetectionResult},System.Collections.Generic.List{Microsoft.OData.ODataPayloadKindDetectionResult})">
            <summary>
            Get an enumerable of tasks to get the supported payload kinds for all formats.
            </summary>
            <param name="payloadKindsFromContentType">All payload kinds for which we found matches in some format based on the content type.</param>
            <param name="detectionResults">The list of combined detection results after sniffing.</param>
            <returns>A lazy enumerable of tasks to get the supported payload kinds for all formats.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReader.ReadFromInputAsync``1(System.Func{Microsoft.OData.ODataInputContext,System.Threading.Tasks.Task{``0}},Microsoft.OData.ODataPayloadKind[])">
            <summary>
            Method which asynchronously creates an input context around the input message and calls a func to read the input.
            </summary>
            <typeparam name="T">The type returned by the read method.</typeparam>
            <param name="readFunc">The read function which will be called over the created input context.</param>
            <param name="payloadKinds">All possible kinds of payload to read.</param>
            <returns>A task which when completed return the read value from the input.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataMessageReaderSettings">
            <summary>
            Configuration settings for OData message readers.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageReaderSettings.baseUri">
            <summary>
            The base uri used in payload.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageReaderSettings.messageQuotas">
            <summary> Quotas to use for limiting resource consumption when reading an OData message. </summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageReaderSettings.validations">
            <summary>
            Validation settings.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReaderSettings.#ctor">
            <summary>Initializes a new instance of the <see cref="T:Microsoft.OData.ODataMessageReaderSettings" /> class
            with default values for OData 4.0.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReaderSettings.#ctor(Microsoft.OData.ODataVersion)">
            <summary>Initializes a new instance of the <see cref="T:Microsoft.OData.ODataMessageReaderSettings" /> class
            with default values for the specified OData version.</summary>
            <param name="odataVersion">OData Version for which to create default settings.</param>
        </member>
        <member name="P:Microsoft.OData.ODataMessageReaderSettings.LibraryCompatibility">
            <summary>
            Gets or sets library compatibility version. Default value is <see cref="T:ODataLibraryCompatibilityLevel.Latest"/>,
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageReaderSettings.Version">
            <summary>Gets or sets the OData protocol version to be used for reading payloads. </summary>
            <returns>The OData protocol version to be used for reading payloads.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataMessageReaderSettings.Validations">
            <summary>
            Gets or sets validation settings.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageReaderSettings.BaseUri">
            <summary>
            Gets or sets the document base URI (used as base for all relative URIs). If this is set, it must be an absolute URI.
            ODataMessageReaderSettings.BaseUri may be deprecated in the future, please use ODataMessageReaderSettings.baseUri instead.
            </summary>
            <returns>The base URI used in payload.</returns>
            <remarks>
            This URI will be used in ATOM format only, it would be overridden by &lt;xml:base /&gt; element in ATOM payload.
            If the URI does not end with a slash, a slash would be appended automatically.
            </remarks>
        </member>
        <member name="P:Microsoft.OData.ODataMessageReaderSettings.ClientCustomTypeResolver">
            <summary>
            Gets or sets custom type resolver used by the Client.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageReaderSettings.PrimitiveTypeResolver">
            <summary>
            Gets or sets a custom resolver for resolving untyped primitive values
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageReaderSettings.EnablePrimitiveTypeConversion">
            <summary>
            Gets or sets a value that indicates whether to convert all primitive values to the type specified in the model or provided as an expected type. Note that values will still be converted to the type specified in the payload itself.
            </summary>
            <returns>false if primitive values and report values are not converted; true if all primitive values are converted to the type specified in the model or provided as an expected type. The default value is true.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataMessageReaderSettings.EnableMessageStreamDisposal">
            <summary>
            Gets or sets a value that indicates whether the message stream will be disposed after finishing writing with the message.
            </summary>
            <returns>true if the message stream will be disposed after finishing writing with the message; otherwise false. The default value is true.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataMessageReaderSettings.EnableCharactersCheck">
            <summary>
            Flag to control whether the reader should check for valid Xml characters or not.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageReaderSettings.MaxProtocolVersion">
            <summary>
            Gets or sets the maximum OData protocol version the reader should accept and understand.
            </summary>
            <returns>The maximum OData protocol version the reader should accept and understand.</returns>
            <remarks>
            If the payload to be read has higher OData-Version than the value specified for this property
            the reader will fail.
            Reader will also not report features which require higher version than specified for this property.
            It may either ignore such features in the payload or fail on them.
            </remarks>
        </member>
        <member name="P:Microsoft.OData.ODataMessageReaderSettings.MessageQuotas">
            <summary>
            Quotas to use for limiting resource consumption when reading an OData message.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageReaderSettings.ReadUntypedAsString">
            <summary>
            Whether to read untyped values as a raw string.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageReaderSettings.ShouldIncludeAnnotation">
            <summary>
            Func to evaluate whether an annotation should be read or skipped by the reader. The func should return true if the annotation should
            be read and false if the annotation should be skipped. A null value indicates that all annotations should be skipped.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageReaderSettings.Validator">
            <summary>
            Gets the bound validator.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageReaderSettings.ThrowOnDuplicatePropertyNames">
            <summary>
            Returns whether ThrowOnDuplicatePropertyNames validation setting is enabled.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageReaderSettings.ThrowIfTypeConflictsWithMetadata">
            <summary>
            Returns whether ThrowIfTypeConflictsWithMetadata is enabled.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageReaderSettings.ThrowOnUndeclaredPropertyForNonOpenType">
            <summary>
            Returns whether ThrowOnUndeclaredPropertyForNonOpenType validation setting is enabled.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReaderSettings.Clone">
            <summary>
            Creates a shallow copy of this <see cref="T:Microsoft.OData.ODataMessageReaderSettings"/>.
            </summary>
            <returns>A shallow copy of this <see cref="T:Microsoft.OData.ODataMessageReaderSettings"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageReaderSettings.ShouldSkipAnnotation(System.String)">
            <summary>
            Returns true to indicate that the annotation with the name <paramref name="annotationName"/> should be skipped, false otherwise.
            </summary>
            <param name="annotationName">The name of the annotation in question.</param>
            <returns>Returns true to indicate that the annotation with the name <paramref name="annotationName"/> should be skipped, false otherwise.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataMessageWriter">
            <summary>
            Writer class used to write all OData payloads (entries, resource sets, metadata documents, service documents, etc.).
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriter.message">
            <summary>The message for which the message writer was created.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriter.writingResponse">
            <summary>A flag indicating whether we are writing a request or a response message.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriter.settings">
            <summary>The message writer settings to use when writing the message payload.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriter.model">
            <summary>The model. Non-null if we do have metadata available.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriter.payloadUriConverter">
            <summary>The optional URL converter to perform custom URL conversion for URLs written to the payload.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriter.container">
            <summary>The optional dependency injection container to get related services for message writing.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriter.mediaTypeResolver">
            <summary>The media type resolver to use when interpreting the incoming content type.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriter.writeMethodCalled">
            <summary>Flag to ensure that only a single write method is called on the message writer.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriter.isDisposed">
            <summary>True if Dispose() has been called on this message writer, False otherwise.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriter.outputContext">
            <summary>The output context we're using to write the payload.</summary>
            <remarks>This is null until the first write operation is called.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriter.writerPayloadKind">
            <summary>The payload kind of the payload to be written with this writer.</summary>
            <remarks>This is either set via the SetHeadersForPayload method or implicitly when one of the write (or writer creation) methods is called.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriter.format">
            <summary>The <see cref="T:Microsoft.OData.ODataFormat"/> of the payload to be written with this writer.</summary>
            <remarks>This is either set via the SetHeadersForPayload method or implicitly when one of the write (or writer creation) methods is called.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriter.encoding">
            <summary>The <see cref="T:System.Text.Encoding"/> of the payload to be written with this writer.</summary>
            <remarks>This is either set via the SetHeadersForPayload method or implicitly when one of the write (or writer creation) methods is called.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriter.writeErrorCalled">
            <summary>Flag to prevent writing more than one error to the payload.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriter.mediaType">
            <summary>The <see cref="T:Microsoft.OData.ODataMediaType"/> of the payload to be written with this writer.</summary>
            <remarks>This is either set via the SetHeadersForPayload method or implicitly when one of the write (or writer creation) methods is called.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriter.messageInfo">
            <summary>The context information for the message.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.#ctor(Microsoft.OData.IODataRequestMessage)">
            <summary> Creates a new <see cref="T:Microsoft.OData.ODataMessageWriter" /> for the given request message. </summary>
            <param name="requestMessage">The request message for which to create the writer.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.#ctor(Microsoft.OData.IODataRequestMessage,Microsoft.OData.ODataMessageWriterSettings)">
            <summary> Creates a new <see cref="T:Microsoft.OData.ODataMessageWriter" /> for the given request message and message writer settings. </summary>
            <param name="requestMessage">The request message for which to create the writer.</param>
            <param name="settings">The message writer settings to use for writing the message payload.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.#ctor(Microsoft.OData.IODataRequestMessage,Microsoft.OData.ODataMessageWriterSettings,Microsoft.OData.Edm.IEdmModel)">
            <summary>
            Creates a new ODataMessageWriter for the given request message and message writer settings.
            </summary>
            <param name="requestMessage">The request message for which to create the writer.</param>
            <param name="settings">The message writer settings to use for writing the message payload.</param>
            <param name="model">The model to use.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.#ctor(Microsoft.OData.IODataResponseMessage)">
            <summary> Creates a new <see cref="T:Microsoft.OData.ODataMessageWriter" /> for the given response message. </summary>
            <param name="responseMessage">The response message for which to create the writer.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.#ctor(Microsoft.OData.IODataResponseMessage,Microsoft.OData.ODataMessageWriterSettings)">
            <summary> Creates a new <see cref="T:Microsoft.OData.ODataMessageWriter" /> for the given response message and message writer settings. </summary>
            <param name="responseMessage">The response message for which to create the writer.</param>
            <param name="settings">The message writer settings to use for writing the message payload.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.#ctor(Microsoft.OData.IODataResponseMessage,Microsoft.OData.ODataMessageWriterSettings,Microsoft.OData.Edm.IEdmModel)">
            <summary>
            Creates a new ODataMessageWriter for the given response message and message writer settings.
            </summary>
            <param name="responseMessage">The response message for which to create the writer.</param>
            <param name="settings">The message writer settings to use for writing the message payload.</param>
            <param name="model">The model to use.</param>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriter.Settings">
            <summary>
            The message writer settings to use when writing the message payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataAsynchronousWriter">
            <summary> Creates an <see cref="T:Microsoft.OData.ODataAsyncWriter" /> to write an async response. </summary>
            <returns>The created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataResourceSetWriter">
            <summary> Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource set. </summary>
            <returns>The created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataResourceSetWriter(Microsoft.OData.Edm.IEdmEntitySetBase)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource set.
            </summary>
            <returns>The created writer.</returns>
            <param name="entitySet">The entity set we are going to write entities for.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataResourceSetWriter(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource set.
            </summary>
            <returns>The created writer.</returns>
            <param name="entitySet">The entity set we are going to write entities for.</param>
            <param name="resourceType">The entity type for the entries in the resource set to be written (or null if the entity set base type should be used).</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataAsynchronousWriterAsync">
            <summary> Asynchronously creates an <see cref="T:Microsoft.OData.ODataAsyncWriter" /> to write an async response. </summary>
            <returns>A running task for the created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataResourceSetWriterAsync">
            <summary> Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource set. </summary>
            <returns>A running task for the created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataResourceSetWriterAsync(Microsoft.OData.Edm.IEdmEntitySetBase)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource set.
            </summary>
            <param name="entitySet">The entity set we are going to write entities for.</param>
            <returns>A running task for the created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataResourceSetWriterAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource set.
            </summary>
            <param name="entitySet">The entity set we are going to write entities for.</param>
            <param name="entityType">The entity type for the entries in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>A running task for the created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataDeltaResourceSetWriter">
            <summary> Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a delta resource set. </summary>
            <returns>The created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataDeltaResourceSetWriter(Microsoft.OData.Edm.IEdmEntitySetBase)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a delta resource set.
            </summary>
            <returns>The created writer.</returns>
            <param name="entitySet">The entity set we are going to write entities for.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataDeltaResourceSetWriter(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource set.
            </summary>
            <returns>The created writer.</returns>
            <param name="entitySet">The entity set we are going to write entities for.</param>
            <param name="resourceType">The entity type for the entries in the resource set to be written (or null if the entity set base type should be used).</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataDeltaResourceSetWriterAsync">
            <summary> Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a delta resource set. </summary>
            <returns>A running task for the created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataDeltaResourceSetWriterAsync(Microsoft.OData.Edm.IEdmEntitySetBase)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a delta resource set.
            </summary>
            <param name="entitySet">The entity set we are going to write entities for.</param>
            <returns>A running task for the created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataDeltaResourceSetWriterAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a delta resource set.
            </summary>
            <param name="entitySet">The entity set we are going to write entities for.</param>
            <param name="entityType">The entity type for the entries in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>A running task for the created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataDeltaWriter(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataDeltaWriter" /> to write a delta response.
            </summary>
            <returns>The created writer.</returns>
            <param name="entitySet">The entity set we are going to write entities for.</param>
            <param name="entityType">The entity type for the entries in the resource set to be written (or null if the entity set base type should be used).</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataDeltaWriterAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataDeltaWriter" /> to write a delta response.
            </summary>
            <param name="entitySet">The entity set we are going to write entities for.</param>
            <param name="entityType">The entity type for the entries in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>A running task for the created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataResourceWriter">
            <summary> Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource. </summary>
            <returns>The created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataResourceWriter(Microsoft.OData.Edm.IEdmNavigationSource)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource.
            </summary>
            <param name="navigationSource">The navigation source we are going to write resources for.</param>
            <returns>The created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataResourceWriter(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource.
            </summary>
            <param name="navigationSource">The navigation source we are going to write resource set for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>The created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataResourceWriterAsync">
            <summary> Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource. </summary>
            <returns>A running task for the created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataResourceWriterAsync(Microsoft.OData.Edm.IEdmNavigationSource)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource.
            </summary>
            <param name="navigationSource">The navigation source we are going to write entities for.</param>
            <returns>A running task for the created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataResourceWriterAsync(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource.
            </summary>
            <param name="navigationSource">The navigation source we are going to write resource set for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>A running task for the created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataUriParameterResourceWriter(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a Uri operation parameter.
            </summary>
            <param name="navigationSource">The navigation source we are going to write resource for.</param>
            <param name="resourceType">The structured type for the resources in the resource set to be written.</param>
            <returns>The created uri parameter writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataUriParameterResourceWriterAsync(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write Uri operation parameter.
            </summary>
            <param name="navigationSource">The navigation source we are going to write resource for.</param>
            <param name="resourceType">The structured type for the resources in the resource set to be written.</param>
            <returns>A running task for the created uri parameter writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataUriParameterResourceSetWriter(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a Uri operation parameter.
            </summary>
            <param name="entitySetBase">The resource set we are going to write resources for.</param>
            <param name="resourceType">The structured type for the resources in the resource set to be written.</param>
            <returns>The created uri parameter writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataUriParameterResourceSetWriterAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write Uri operation parameter.
            </summary>
            <param name="entitySetBase">The resource set we are going to write resources for.</param>
            <param name="resourceType">The structured type for the resources in the resource set to be written.</param>
            <returns>A running task for the created uri parameter writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataCollectionWriter">
            <summary> Creates an <see cref="T:Microsoft.OData.ODataCollectionWriter" /> to write a collection of primitive or complex values (as result of a service operation invocation). </summary>
            <returns>The created collection writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataCollectionWriter(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataCollectionWriter" /> to write a collection of primitive , enum or complex values (as result of a service operation invocation).
            </summary>
            <param name="itemTypeReference">The item type of the collection being written or null if no metadata is available.</param>
            <returns>The created collection writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataCollectionWriterAsync">
            <summary> Asynchronously creates an <see cref="T:Microsoft.OData.ODataCollectionWriter" /> to write a collection of primitive or complex values (as result of a service operation invocation). </summary>
            <returns>A running task for the created collection writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataCollectionWriterAsync(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataCollectionWriter" /> to write a collection of primitive or complex values (as result of a service operation invocation).
            </summary>
            <param name="itemTypeReference">The item type of the collection being written or null if no metadata is available.</param>
            <returns>A running task for the created collection writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataBatchWriter">
            <summary> Creates an <see cref="T:Microsoft.OData.ODataBatchWriter" /> to write a batch of requests or responses. </summary>
            <returns>The created batch writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataBatchWriterAsync">
            <summary> Asynchronously creates an <see cref="T:Microsoft.OData.ODataBatchWriter" /> to write a batch of requests or responses. </summary>
            <returns>A running task for the created batch writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataParameterWriter(Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataParameterWriter" /> to write a parameter payload.
            </summary>
            <param name="operation">The operation whose parameters will be written.</param>
            <returns>The created parameter writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.CreateODataParameterWriterAsync(Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataParameterWriter" /> to write a parameter payload.
            </summary>
            <param name="operation">The operation whose parameters will be written.</param>
            <returns>A running task for the created parameter writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.WriteServiceDocument(Microsoft.OData.ODataServiceDocument)">
            <summary> Writes a service document with the specified <paramref name="serviceDocument" /> as the message payload. </summary>
            <param name="serviceDocument">The service document to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.WriteServiceDocumentAsync(Microsoft.OData.ODataServiceDocument)">
            <summary> Asynchronously writes a service document with the specified <paramref name="serviceDocument" /> as the message payload. </summary>
            <returns>A task representing the asynchronous operation of writing the service document.</returns>
            <param name="serviceDocument">The service document to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.WriteProperty(Microsoft.OData.ODataProperty)">
            <summary> Writes an <see cref="T:Microsoft.OData.ODataProperty" /> as the message payload. </summary>
            <param name="property">The property to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.WritePropertyAsync(Microsoft.OData.ODataProperty)">
            <summary> Asynchronously writes an <see cref="T:Microsoft.OData.ODataProperty" /> as the message payload. </summary>
            <returns>A task representing the asynchronous operation of writing the property.</returns>
            <param name="property">The property to write</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.WriteError(Microsoft.OData.ODataError,System.Boolean)">
            <summary> Writes an <see cref="T:Microsoft.OData.ODataError" /> as the message payload. </summary>
            <param name="error">The error to write.</param>
            <param name="includeDebugInformation"> A flag indicating whether debug information (for example, the inner error from the <paramref name="error" />) should be included in the payload. This should only be used in debug scenarios. </param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.WriteErrorAsync(Microsoft.OData.ODataError,System.Boolean)">
            <summary> Asynchronously writes an <see cref="T:Microsoft.OData.ODataError" /> as the message payload. </summary>
            <returns>A task representing the asynchronous operation of writing the error.</returns>
            <param name="error">The error to write.</param>
            <param name="includeDebugInformation"> A flag indicating whether debug information (for example, the inner error from the <paramref name="error" />) should be included in the payload. This should only be used in debug scenarios. </param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.WriteEntityReferenceLinks(Microsoft.OData.ODataEntityReferenceLinks)">
            <summary> Writes the result of a $ref query as the message payload. </summary>
            <param name="links">The entity reference links to write as message payload.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.WriteEntityReferenceLinksAsync(Microsoft.OData.ODataEntityReferenceLinks)">
            <summary> Asynchronously writes the result of a $ref query as the message payload. </summary>
            <returns>A task representing the asynchronous writing of the entity reference links.</returns>
            <param name="links">The entity reference links to write as message payload.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.WriteEntityReferenceLink(Microsoft.OData.ODataEntityReferenceLink)">
            <summary> Writes a singleton result of a $ref query as the message payload. </summary>
            <param name="link">The entity reference link to write as the message payload.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.WriteEntityReferenceLinkAsync(Microsoft.OData.ODataEntityReferenceLink)">
            <summary> Asynchronously writes a singleton result of a $ref query as the message payload. </summary>
            <returns>A running task representing the writing of the link.</returns>
            <param name="link">The link result to write as the message payload.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.WriteValue(System.Object)">
            <summary> Writes a single value as the message body. </summary>
            <param name="value">The value to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.WriteValueAsync(System.Object)">
            <summary> Asynchronously writes a single value as the message body. </summary>
            <returns>A running task representing the writing of the value.</returns>
            <param name="value">The value to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.WriteMetadataDocument">
            <summary> Writes the metadata document as the message body. </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.Dispose">
            <summary><see cref="M:System.IDisposable.Dispose()" /> implementation to cleanup unmanaged resources of the writer. </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.SetHeaders(Microsoft.OData.ODataPayloadKind)">
            <summary>
            Sets the content-type and OData-Version headers on the message used by the message writer.
            This method can be called if it is important to set all the message headers before calling any of the
            write (or writer creation) methods on the <see cref="T:Microsoft.OData.ODataMessageWriter"/>.
            If it is sufficient to set the headers when the write (or writer creation) methods on the <see cref="T:Microsoft.OData.ODataMessageWriter"/>
            are called, you don't have to call this method and setting the headers will happen automatically.
            </summary>
            <param name="payloadKind">The kind of payload to be written with this message writer.</param>
            <returns>The <see cref="T:Microsoft.OData.ODataFormat"/> used for the specified <paramref name="payloadKind"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.SetOrVerifyHeaders(Microsoft.OData.ODataPayloadKind)">
            <summary>
            If no headers have been set, sets the content-type and OData-Version headers on the message used by the message writer.
            If headers have been set explicitly (via ODataUtils.SetHeaderForPayload) this method verifies that the payload kind used to
            create the headers is the same as the one being passed in <paramref name="payloadKind"/>.
            </summary>
            <param name="payloadKind">The kind of payload to be written with this message writer.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.EnsureODataVersion">
            <summary>
            Ensures that the version of the OData protocol is set.
            </summary>
            <remarks>
            If a version is specified explicitly on the writer settings, it is used.
            Otherwise the method tries to read the version from the message headers.
            If there is a version header but the value cannot be parsed, we fail.
            If there is no version header, we fall back to the default version.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.EnsureODataFormatAndContentType">
            <summary>
            Ensures that the OData format is computed and set; if needed, sets the content type
            header of the message.
            </summary>
            <remarks>
            This method computes and ensures that a content type exists and computes the
            OData format from it. If a content type is explicitly specified through
            <see cref="M:Microsoft.OData.ODataUtils.SetHeadersForPayload(Microsoft.OData.ODataMessageWriter,Microsoft.OData.ODataPayloadKind)"/>
            or <see cref="M:Microsoft.OData.ODataMessageWriterSettings.SetContentType(System.String,System.String)"/> it will be used. If no
            content type is specified in either place, the message headers are checked for
            a content type header.
            If the content type is computed from settings, the content type header is set on the message.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.VerifyCanCreateODataAsyncWriter">
            <summary>
            Verifies that async writer can be created.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.VerifyCanCreateODataResourceSetWriter">
            <summary>
            Verifies that resource set writer can be created.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.VerifyCanCreateODataDeltaWriter">
            <summary>
            Verifies that delta writer can be created.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.VerifyCanCreateODataResourceWriter">
            <summary>
            Verifies that resource writer can be created.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.VerifyCanCreateODataCollectionWriter(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Verifies that collection writer can be created.
            there is also a similar ODataParameterWriterCore.VerifyCanCreateCollectionWriter() method.
            </summary>
            <param name="itemTypeReference">The item type of the collection being written or null if no metadata is available.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.VerifyCanCreateODataBatchWriter">
            <summary>
            Verifies that batch writer can be created.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.VerifyCanCreateODataParameterWriter(Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Verifies that parameter writer can be created.
            </summary>
            <param name="operation">The operation whose parameters will be written.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.VerifyCanWriteServiceDocument(Microsoft.OData.ODataServiceDocument)">
            <summary>
            Verifies that service document can be written.
            </summary>
            <param name="serviceDocument">The service document to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.VerifyCanWriteProperty(Microsoft.OData.ODataProperty)">
            <summary>
            Verifies that property can be written.
            </summary>
            <param name="property">The property to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.VerifyCanWriteTopLevelError(Microsoft.OData.ODataError)">
            <summary>
            Verifies that top-level error can be written.
            </summary>
            <param name="error">The error to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.VerifyCanWriteInStreamError(Microsoft.OData.ODataError)">
            <summary>
            Verifies that in-stream error can be written.
            </summary>
            <param name="error">The error to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.VerifyCanWriteEntityReferenceLinks(Microsoft.OData.ODataEntityReferenceLinks)">
            <summary>
            Verifies that entity reference links can be written.
            </summary>
            <param name="links">The entity reference links to write as message payload.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.VerifyCanWriteEntityReferenceLink(Microsoft.OData.ODataEntityReferenceLink)">
            <summary>
            Verifies that entity reference link can be written.
            </summary>
            <param name="link">The link result to write as message payload.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.VerifyCanWriteValue(System.Object)">
            <summary>
            Verifies that value can be written.
            </summary>
            <param name="value">The value to write.</param>
            <returns>The payload kind to use when writing this value.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.VerifyCanWriteMetadataDocument">
            <summary>
            Verifies that metadata document can be written.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.VerifyWriterNotDisposedAndNotUsed">
            <summary>
            Verifies that the ODataMessageWriter has not been disposed and has not been used before. An ODataMessageWriter
            can only be used to write a single message payload but can't be reused later except for writing an in-stream error.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.VerifyNotDisposed">
            <summary>
            Check if the object has been disposed. Throws an ObjectDisposedException if the object has already been disposed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.Dispose(System.Boolean)">
            <summary>
            Perform the actual cleanup work.
            </summary>
            <param name="disposing">If 'true' this method is called from user code; if 'false' it is called by the runtime.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.VerifyPayloadKind(Microsoft.OData.ODataPayloadKind)">
            <summary>
            Verifies that, if a payload kind has been set via SetHeaders, the payload kind that
            is being written is the same.
            </summary>
            <param name="payloadKindToWrite">The payload kind that is attempted to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.WriteToOutput(Microsoft.OData.ODataPayloadKind,System.Action{Microsoft.OData.ODataOutputContext})">
            <summary>
            Creates an output context and invokes a write operation on it.
            </summary>
            <param name="payloadKind">The payload kind to write.</param>
            <param name="writeAction">The write operation to invoke on the output.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.WriteToOutput``1(Microsoft.OData.ODataPayloadKind,System.Func{Microsoft.OData.ODataOutputContext,``0})">
            <summary>
            Creates an output context and invokes a write operation on it.
            </summary>
            <typeparam name="TResult">The type of the result of the write operation.</typeparam>
            <param name="payloadKind">The payload kind to write.</param>
            <param name="writeFunc">The write operation to invoke on the output.</param>
            <returns>The result of the write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.WriteToOutputAsync(Microsoft.OData.ODataPayloadKind,System.Func{Microsoft.OData.ODataOutputContext,System.Threading.Tasks.Task})">
            <summary>
            Creates an output context and invokes a write operation on it.
            </summary>
            <param name="payloadKind">The payload kind to write.</param>
            <param name="writeAsyncAction">The write operation to invoke on the output.</param>
            <returns>Task which represents the pending write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriter.WriteToOutputAsync``1(Microsoft.OData.ODataPayloadKind,System.Func{Microsoft.OData.ODataOutputContext,System.Threading.Tasks.Task{``0}})">
            <summary>
            Creates an output context and invokes a write operation on it.
            </summary>
            <typeparam name="TResult">The type of the result of the write operation.</typeparam>
            <param name="payloadKind">The payload kind to write.</param>
            <param name="writeFunc">The write operation to invoke on the output.</param>
            <returns>Task which represents the pending write operation.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataMessageWriterSettings">
            <summary>
            Configuration settings for OData message writers.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriterSettings.acceptCharSets">
            <summary>
            The acceptable charsets used to the determine the encoding of the message.
            This is a comma separated list of charsets as specified in RFC 2616, Section 14.2
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriterSettings.acceptMediaTypes">
            <summary>
            The acceptable media types used to determine the content type of the message.
            This is a comma separated list of content types as specified in RFC 2616, Section 14.1
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriterSettings.baseUri">
            <summary>
            The base uri used in payload.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriterSettings.format">
            <summary>
            The format to use when writing the payload; this replaces the 'AcceptHeader' and 'AcceptCharSetHeader'
            fields and uses the default values for the respective format. If null is specified
            the default format and the default media type will be picked depending on the writer these settings are used with.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriterSettings.messageQuotas">
            <summary>Quotas to use for limiting resource consumption when writing an OData message.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriterSettings.odataUri">
            <summary>
            The parse result of request Uri
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriterSettings.shouldIncludeAnnotation">
            <summary>
            Func to evaluate whether an annotation should be written by the writer. The func should return true if the annotation should
            be written and false if the annotation should be skipped.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriterSettings.useFormat">
            <summary>
            true if the Format property should be used to compute the media type;
            false if AcceptableMediaTypes and AcceptableCharsets should be used.
            null if neither the format nor the acceptable media types/charsets have been set.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataMessageWriterSettings.validations">
            <summary>
            Validation settings.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriterSettings.#ctor">
            <summary>Initializes a new instance of the <see cref="T:Microsoft.OData.ODataMessageWriterSettings" /> class with default settings. </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriterSettings.LibraryCompatibility">
            <summary>
            Gets or sets library compatibility version. Default value is <see cref="T:ODataLibraryCompatibilityLevel.Latest"/>,
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriterSettings.Validations">
            <summary>
            Gets or sets validations to perform. Default value is <see cref="T:Microsoft.OData.Validations.FullValidation"/>,
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriterSettings.BaseUri">
            <summary>Gets or sets the document base URI which is used as base for all relative URIs. </summary>
            <returns>The document base URI which is used as base for all relative URIs.</returns>
            <remarks>
            Base URI is context URI; if the URI does not end with a slash, a slash would be appended automatically.
            </remarks>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriterSettings.EnableMessageStreamDisposal">
            <summary>Gets or sets a value that indicates whether the message stream will be disposed after finishing writing with the message.</summary>
            <returns>true if the message stream will be disposed after finishing writing with the message; otherwise false. The default value is true.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriterSettings.EnableCharactersCheck">
            <summary>
            Flag to control whether the writer should check for valid Xml characters or not.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriterSettings.JsonPCallback">
            <summary>Gets or sets a callback function use to wrap the response from server.</summary>
            <returns>The callback function used to wrap the response from server.</returns>
            <remarks>If it has a value and we are writing a JSON response, then we will wrap the entirety of the response in
            the provided function name and parenthesis for JSONP. Otherwise this value is ignored.</remarks>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriterSettings.MessageQuotas">
            <summary>
            Quotas to use for limiting resource consumption when writing an OData message.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriterSettings.ODataUri">
            <summary>
            The OData Uri of an incoming request. Call <see cref="T:Microsoft.OData.UriParser.ODataUriParser"/>'s methods,
            and assign properties (e.g., <see cref="T:Microsoft.OData.UriParser.ODataPath"/>) to <see cref="P:Microsoft.OData.ODataMessageWriterSettings.ODataUri"/>.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriterSettings.Version">
            <summary>Gets or sets the OData protocol version to be used for writing payloads. </summary>
            <returns>The OData protocol version to be used for writing payloads.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriterSettings.Validator">
            <summary>
            Gets the validator corresponding to the validation settings.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriterSettings.ThrowIfTypeConflictsWithMetadata">
            <summary>
            Returns whether ThrowIfTypeConflictsWithMetadata validation should be performed.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriterSettings.ThrowOnDuplicatePropertyNames">
            <summary>
            Returns whether ThrowOnDuplicatePropertyNames validation setting is enabled.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriterSettings.ThrowOnUndeclaredPropertyForNonOpenType">
            <summary>
            Returns whether ThrowOnUndeclaredPropertyForNonOpenType validation setting is enabled.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriterSettings.AcceptableMediaTypes">
            <summary>
            The acceptable media types used to determine the content type of the message.
            This is a comma separated list of content types as specified in RFC 2616, Section 14.1
            </summary>
            <remarks>A null or empty accept header means that all content types are acceptable.</remarks>
            <remarks>For response messages this is usually the 'Accept' header of the request message.</remarks>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriterSettings.AcceptableCharsets">
            <summary>
            The acceptable charsets used to the determine the encoding of the message.
            This is a comma separated list of charsets as specified in RFC 2616, Section 14.2
            </summary>
            <remarks>A null or empty accept charset header means that all charsets are acceptable.</remarks>
            <remarks>For response messages this is usually the 'Accept-Charset' header of the request message.</remarks>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriterSettings.Format">
            <summary>
            The format to use when writing the payload; this replaces the 'AcceptHeader' and 'AcceptCharSetHeader'
            properties and uses the default values for the respective format. If null is specified
            the default format and the default media type will be picked depending on the writer these settings are used with.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriterSettings.IsIndividualProperty">
            <summary>
            Gets the value indicating whether the payload represents an individual property
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriterSettings.MetadataDocumentUri">
            <summary>
            Gets the metadata document URI that has been set on the settings, or null if it has not been set.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriterSettings.UseFormat">
            <summary>
            true if the Format property should be used to compute the media type;
            false if AcceptableMediaTypes and AcceptableCharsets should be used.
            null if neither the format nor the acceptable media types/charsets have been set.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriterSettings.SelectExpandClause">
            <summary>
            Gets the SelectExpand clause used when generating metadata links.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriterSettings.SelectedProperties">
            <summary>
            Gets the SelectedPropertiesNode clause generated from SelectExpandClause.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataMessageWriterSettings.ShouldIncludeAnnotation">
            <summary>
            Func to evaluate whether an annotation should be written by the writer. The func should return true if the annotation should
            be written and false if the annotation should be skipped.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriterSettings.Clone">
            <summary>
            Creates a shallow copy of this <see cref="T:Microsoft.OData.ODataMessageWriterSettings"/>.
            </summary>
            <returns>A shallow copy of this <see cref="T:Microsoft.OData.ODataMessageWriterSettings"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriterSettings.SetContentType(System.String,System.String)">
            <summary>Sets the acceptable media types and character sets from which the content type will be computed when writing the payload.</summary>
            <param name="acceptableMediaTypes">The acceptable media types used to determine the content type of the message. This is a comma separated list of content types as specified in RFC 2616, Section 14.1.</param>
            <param name="acceptableCharSets"> The acceptable charsets to use to determine the encoding of the message. This is a comma separated list of charsets as specified in RFC 2616, Section 14.2 </param>
            <remarks>Calling this method replaces any previously set content-type settings.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriterSettings.SetContentType(Microsoft.OData.ODataFormat)">
            <summary>Sets the format to be used when writing the payload. This will automatically set a compatible content type header.</summary>
            <param name="payloadFormat">The format to use for writing the payload.</param>
            <remarks>Calling this method replaces any previously set content-type settings.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriterSettings.SetServiceDocumentUri(System.Uri)">
            <summary>Sets the URI of the metadata document.</summary>
            <param name="serviceDocumentUri">The URI of the service document.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriterSettings.HasJsonPaddingFunction">
            <summary>
            Determines if there is a JSON padding function defined.
            </summary>
            <returns>True if the JsonPCallback property is not null or empty.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMessageWriterSettings.ShouldSkipAnnotation(System.String)">
            <summary>
            Returns true to indicate that the annotation with the name <paramref name="annotationName"/> should not be written, false otherwise.
            </summary>
            <param name="annotationName">The name of the annotation in question.</param>
            <returns>Returns true to indicate that the annotation with the name <paramref name="annotationName"/> should not be written, false otherwise.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataMetadataFormat">
            <summary>
            The metadata OData format.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMetadataFormat.ToString">
            <summary>
            The text representation - the name of the format.
            </summary>
            <returns>The name of the format.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMetadataFormat.DetectPayloadKind(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Detects the payload kinds supported by this format for the specified message payload.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="settings">Configuration settings of the OData reader.</param>
            <returns>The set of <see cref="T:Microsoft.OData.ODataPayloadKind"/>s that are supported with the specified payload.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMetadataFormat.CreateInputContext(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Creates an instance of the input context for this format.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageReaderSettings">Configuration settings of the OData reader.</param>
            <returns>The newly created input context.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMetadataFormat.CreateOutputContext(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageWriterSettings)">
            <summary>
            Creates an instance of the output context for this format.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageWriterSettings">Configuration settings of the OData writer.</param>
            <returns>The newly created output context.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMetadataFormat.DetectPayloadKindAsync(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Asynchronously detects the payload kinds supported by this format for the specified message payload.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="settings">Configuration settings of the OData reader.</param>
            <returns>A task that when completed returns the set of <see cref="T:Microsoft.OData.ODataPayloadKind"/>s
            that are supported with the specified payload.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMetadataFormat.CreateInputContextAsync(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Asynchronously creates an instance of the input context for this format.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageReaderSettings">Configuration settings of the OData reader.</param>
            <returns>Task which when completed returned the newly created input context.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMetadataFormat.CreateOutputContextAsync(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageWriterSettings)">
            <summary>
            Creates an instance of the output context for this format.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageWriterSettings">Configuration settings of the OData writer.</param>
            <returns>Task which represents the pending create operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMetadataFormat.DetectPayloadKindImplementation(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Detects the payload kind(s) from the message stream.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="settings">Configuration settings of the OData reader.</param>
            <returns>An enumerable of zero or one payload kinds depending on whether the metadata payload kind was detected or not.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataMetadataInputContext">
            <summary>
            Implementation of the OData input for metadata documents.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataMetadataInputContext.baseXmlReader">
            <summary>The XML reader used to parse the input.</summary>
            <remarks>Do not use this to actually read the input, instead use the xmlReader.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataMetadataInputContext.xmlReader">
            <summary>The XML reader to read from.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataMetadataInputContext.#ctor(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>Constructor.</summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageReaderSettings">Configuration settings of the OData reader.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMetadataInputContext.ReadMetadataDocument(System.Func{System.Uri,System.Xml.XmlReader})">
            <summary>
            Read a metadata document.
            This method reads the metadata document from the input and returns
            an <see cref="T:Microsoft.OData.Edm.IEdmModel"/> that represents the read metadata document.
            </summary>
            <param name="getReferencedModelReaderFunc">The function to load referenced model xml. If null, will stop loading the referenced models. Normally it should throw no exception.</param>
            <returns>An <see cref="T:Microsoft.OData.Edm.IEdmModel"/> representing the read metadata document.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataMetadataInputContext.Dispose(System.Boolean)">
            <summary>
            Perform the actual cleanup work.
            </summary>
            <param name="disposing">If 'true' this method is called from user code; if 'false' it is called by the runtime.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMetadataInputContext.ReadMetadataDocumentImplementation(System.Func{System.Uri,System.Xml.XmlReader})">
            <summary>
            This methods reads the metadata from the input and returns an <see cref="T:Microsoft.OData.Edm.IEdmModel"/>
            representing the read metadata information.
            </summary>
            <param name="getReferencedModelReaderFunc">The function to load referenced model xml. If null, will stop loading the referenced models. Normally it should throw no exception.</param>
            <returns>An <see cref="T:Microsoft.OData.Edm.IEdmModel"/> instance representing the read metadata.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataMetadataOutputContext">
            <summary>
            RAW format output context.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataMetadataOutputContext.messageOutputStream">
            <summary>The message output stream.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataMetadataOutputContext.xmlWriter">
            <summary>The XmlWriter to write to.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataMetadataOutputContext.#ctor(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageWriterSettings)">
            <summary>
            Constructor.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageWriterSettings">Configuration settings of the OData writer.</param>
        </member>
        <member name="M:Microsoft.OData.ODataMetadataOutputContext.Flush">
            <summary>
            Synchronously flush the writer.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataMetadataOutputContext.WriteInStreamError(Microsoft.OData.ODataError,System.Boolean)">
            <summary>
            Writes an <see cref="T:Microsoft.OData.ODataError"/> into the message payload.
            </summary>
            <param name="error">The error to write.</param>
            <param name="includeDebugInformation">
            A flag indicating whether debug information (e.g., the inner error from the <paramref name="error"/>) should
            be included in the payload. This should only be used in debug scenarios.
            </param>
            <remarks>
            This method is called if the ODataMessageWriter.WriteError is called once some other
            write operation has already started.
            The method should write the in-stream error representation for the specific format into the current payload.
            Before the method is called no flush is performed on the output context or any active writer.
            It is the responsibility of this method to flush the output before the method returns.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataMetadataOutputContext.WriteMetadataDocument">
            <summary>
            Writes the metadata document as the message body.
            </summary>
            <remarks>It is the responsibility of this method to flush the output before the method returns.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataMetadataOutputContext.Dispose(System.Boolean)">
            <summary>
            Perform the actual cleanup work.
            </summary>
            <param name="disposing">If 'true' this method is called from user code; if 'false' it is called by the runtime.</param>
        </member>
        <member name="T:Microsoft.OData.ODataNestedResourceInfo">
            <summary>
            Represents a single link.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataNestedResourceInfo.metadataBuilder">
            <summary>the metadata builder for this nested resource info.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataNestedResourceInfo.url">
            <summary>URI representing the Unified Resource Locator (Url) of the link as provided by the user or seen on the wire (never computed).</summary>
        </member>
        <member name="F:Microsoft.OData.ODataNestedResourceInfo.hasNavigationLink">
            <summary>true if the navigation link has been set by the user or seen on the wire or computed by the metadata builder, false otherwise.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataNestedResourceInfo.associationLinkUrl">
            <summary>The association link URL for this navigation link as provided by the user or seen on the wire (never computed).</summary>
        </member>
        <member name="F:Microsoft.OData.ODataNestedResourceInfo.hasAssociationUrl">
            <summary>true if the association link has been set by the user or seen on the wire or computed by the metadata builder, false otherwise.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataNestedResourceInfo.IsCollection">
            <summary>Gets or sets a value that indicates whether the nested resource info represents a collection or a resource.</summary>
            <returns>true if the nested resource info represents a collection; false if the navigation represents a resource.</returns>
            <remarks>This property is required to have a value for ATOM payloads and is optional for JSON payloads.</remarks>
        </member>
        <member name="P:Microsoft.OData.ODataNestedResourceInfo.Name">
            <summary>Gets or sets the name of the link.</summary>
            <returns>The name of the link.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataNestedResourceInfo.Url">
            <summary>Gets or sets the URI representing the Unified Resource Locator (URL) of the link.</summary>
            <returns>The URI representing the Unified Resource Locator (URL) of the link.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataNestedResourceInfo.AssociationLinkUrl">
            <summary>The association link URL for this navigation link. </summary>
        </member>
        <member name="P:Microsoft.OData.ODataNestedResourceInfo.ContextUrl">
            <summary>Gets or sets the context url for this nested resource info.</summary>
            <returns>The URI representing the context url of the nested resource info.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataNestedResourceInfo.MetadataBuilder">
            <summary>Gets or sets metadata builder for this nested resource info.</summary>
            <returns>The metadata builder used to compute values from model annotations.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataNestedResourceInfo.SerializationInfo">
            <summary>
            Provides additional serialization information to the <see cref="T:Microsoft.OData.ODataWriter"/> for this <see cref="T:Microsoft.OData.ODataNestedResourceInfo"/>.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataNestedResourceInfo.IsComplex">
            <summary>
            Whether this is a complex property.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataNestedResourceInfoSerializationInfo">
            <summary>
            Class to provide additional serialization information to the <see cref="T:Microsoft.OData.ODataWriter"/> for an <see cref="T:Microsoft.OData.ODataNestedResourceInfo"/>.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataNestedResourceInfoSerializationInfo.IsComplex">
            <summary>
            Gets or sets the value that indicates the nested resource for a complex property or collection of complex property.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataNestedResourceInfoSerializationInfo.IsUndeclared">
            <summary>
            Gets or sets the value that indicates the nested resource is undeclared or not.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataNullValue">
            <summary>
            Represents a null property value.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataNullValue.IsNullValue">
            <summary>
            Indicates whether the given value is a null value.
            </summary>
            <value> true, since this object always represents a null value. </value>
        </member>
        <member name="T:Microsoft.OData.ODataNullValueBehaviorKind">
            <summary> Represents the behavior of readers when reading property with null value. </summary>
        </member>
        <member name="F:Microsoft.OData.ODataNullValueBehaviorKind.Default">
            <summary>
            The default behavior - this means validate the null value against the declared type
            and then report the null value.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataNullValueBehaviorKind.IgnoreValue">
            <summary>
            This means to not report the value and not validate it against the model.
            </summary>
            <remarks>
            This setting can be used to correctly work with clients that send null values
            for uninitialized properties in requests instead of omitting them altogether.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataNullValueBehaviorKind.DisableValidation">
            <summary>
            This means to report the value, but not validate it against the model.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataObjectModelExtensions">
            <summary>
            Extension methods on the OData object model.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataObjectModelExtensions.SetSerializationInfo(Microsoft.OData.ODataResourceSet,Microsoft.OData.ODataResourceSerializationInfo)">
            <summary>
            Provide additional serialization information to the <see cref="T:Microsoft.OData.ODataWriter"/> for <paramref name="resourceSet"/>.
            </summary>
            <param name="resourceSet">The instance to set the serialization info.</param>
            <param name="serializationInfo">The serialization info to set.</param>
        </member>
        <member name="M:Microsoft.OData.ODataObjectModelExtensions.SetSerializationInfo(Microsoft.OData.ODataResourceBase,Microsoft.OData.ODataResourceSerializationInfo)">
            <summary>
            Provide additional serialization information to the <see cref="T:Microsoft.OData.ODataWriter"/> for <paramref name="resource"/>.
            </summary>
            <param name="resource">The instance to set the serialization info.</param>
            <param name="serializationInfo">The serialization info to set.</param>
        </member>
        <member name="M:Microsoft.OData.ODataObjectModelExtensions.SetSerializationInfo(Microsoft.OData.ODataResource,Microsoft.OData.ODataResourceSerializationInfo)">
            <summary>
            Provide additional serialization information to the <see cref="T:Microsoft.OData.ODataWriter"/> for <paramref name="resource"/>.
            </summary>
            <param name="resource">The instance to set the serialization info.</param>
            <param name="serializationInfo">The serialization info to set.</param>
        </member>
        <member name="M:Microsoft.OData.ODataObjectModelExtensions.SetSerializationInfo(Microsoft.OData.ODataNestedResourceInfo,Microsoft.OData.ODataNestedResourceInfoSerializationInfo)">
            <summary>
            Provide additional serialization information to the <see cref="T:Microsoft.OData.ODataWriter"/> for <paramref name="nestedResourceInfo"/>.
            </summary>
            <param name="nestedResourceInfo">The instance to set the serialization info.</param>
            <param name="serializationInfo">The serialization info to set.</param>
        </member>
        <member name="M:Microsoft.OData.ODataObjectModelExtensions.SetSerializationInfo(Microsoft.OData.ODataProperty,Microsoft.OData.ODataPropertySerializationInfo)">
            <summary>
            Provide additional serialization information to the <see cref="T:Microsoft.OData.ODataWriter"/> for <paramref name="property"/>.
            </summary>
            <param name="property">The instance to set the serialization info.</param>
            <param name="serializationInfo">The serialization info to set.</param>
        </member>
        <member name="M:Microsoft.OData.ODataObjectModelExtensions.SetSerializationInfo(Microsoft.OData.ODataCollectionStart,Microsoft.OData.ODataCollectionStartSerializationInfo)">
            <summary>
            Provide additional serialization information to the <see cref="T:Microsoft.OData.ODataCollectionWriter"/> for <paramref name="collectionStart"/>.
            </summary>
            <param name="collectionStart">The instance to set the serialization info.</param>
            <param name="serializationInfo">The serialization info to set.</param>
        </member>
        <member name="M:Microsoft.OData.ODataObjectModelExtensions.SetSerializationInfo(Microsoft.OData.ODataDeltaResourceSet,Microsoft.OData.ODataDeltaResourceSetSerializationInfo)">
            <summary>
            Provide additional serialization information to the <see cref="T:Microsoft.OData.ODataDeltaWriter"/> for <paramref name="deltaResourceSet"/>.
            </summary>
            <param name="deltaResourceSet">The instance to set the serialization info.</param>
            <param name="serializationInfo">The serialization info to set.</param>
        </member>
        <member name="M:Microsoft.OData.ODataObjectModelExtensions.SetSerializationInfo(Microsoft.OData.ODataDeltaResourceSet,Microsoft.OData.ODataResourceSerializationInfo)">
            <summary>
            Provide additional serialization information to the <see cref="T:Microsoft.OData.ODataDeltaWriter"/> for <paramref name="deltaResourceSet"/>.
            </summary>
            <param name="deltaResourceSet">The instance to set the serialization info.</param>
            <param name="serializationInfo">The serialization info to set.</param>
        </member>
        <member name="M:Microsoft.OData.ODataObjectModelExtensions.SetSerializationInfo(Microsoft.OData.ODataDeltaDeletedEntry,Microsoft.OData.ODataResourceSerializationInfo)">
            <summary>
            Provide additional serialization information to the <see cref="T:Microsoft.OData.ODataDeltaWriter"/> for <paramref name="deltaDeletedEntry"/>.
            </summary>
            <param name="deltaDeletedEntry">The instance to set the serialization info.</param>
            <param name="serializationInfo">The serialization info to set.</param>
        </member>
        <member name="M:Microsoft.OData.ODataObjectModelExtensions.SetSerializationInfo(Microsoft.OData.ODataDeltaDeletedEntry,Microsoft.OData.ODataDeltaSerializationInfo)">
            <summary>
            Provide additional serialization information to the <see cref="T:Microsoft.OData.ODataDeltaWriter"/> for <paramref name="deltaDeletedEntry"/>.
            </summary>
            <param name="deltaDeletedEntry">The instance to set the serialization info.</param>
            <param name="serializationInfo">The serialization info to set.</param>
        </member>
        <member name="M:Microsoft.OData.ODataObjectModelExtensions.SetSerializationInfo(Microsoft.OData.ODataDeltaLinkBase,Microsoft.OData.ODataDeltaSerializationInfo)">
            <summary>
            Provide additional serialization information to the <see cref="T:Microsoft.OData.ODataDeltaWriter"/> for <paramref name="deltalink"/>.
            </summary>
            <param name="deltalink">The instance to set the serialization info.</param>
            <param name="serializationInfo">The serialization info to set.</param>
        </member>
        <member name="T:Microsoft.OData.ODataOperation">
            <summary>
            Represents a function or an action.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataOperation.metadataBuilder">
            <summary>the metadata builder for this operation.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataOperation.title">
            <summary>A human-readable description of the <see cref="T:Microsoft.OData.ODataAction"/> or the <see cref="T:Microsoft.OData.ODataFunction"/>.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataOperation.hasNonComputedTitle">
            <summary>true if a title was provided by the user or seen on the wire, false otherwise.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataOperation.computedTitle">
            <summary>A human-readable description of the <see cref="T:Microsoft.OData.ODataAction"/> or the <see cref="T:Microsoft.OData.ODataFunction"/>, computed by the metadata builder.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataOperation.target">
            <summary>The URI to invoke the <see cref="T:Microsoft.OData.ODataAction"/> or the <see cref="T:Microsoft.OData.ODataFunction"/>.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataOperation.hasNonComputedTarget">
            <summary>true if a target was provided by the user or seen on the wire, false otherwise.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataOperation.computedTarget">
            <summary>The URI to invoke the <see cref="T:Microsoft.OData.ODataAction"/> or the <see cref="T:Microsoft.OData.ODataFunction"/>, computed by the metadata builder.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataOperation.operationFullName">
            <summary>The cached full name of the operation to use.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataOperation.parameterNames">
            <summary>The parameter names for this operation.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataOperation.Metadata">
            <summary>Gets or sets the URI to get metadata for the <see cref="T:Microsoft.OData.ODataAction" />.</summary>
            <returns>The URI to get metadata for the <see cref="T:Microsoft.OData.ODataAction" />.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataOperation.Title">
            <summary>Gets or sets a human-readable description of the <see cref="T:Microsoft.OData.ODataAction" />.</summary>
            <returns>A human-readable description of the <see cref="T:Microsoft.OData.ODataAction" />.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataOperation.Target">
            <summary>Gets or sets the URI to invoke the <see cref="T:Microsoft.OData.ODataAction" />.</summary>
            <returns> The URI to invoke the <see cref="T:Microsoft.OData.ODataAction" />.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataOperation.BindingParameterTypeName">
            <summary>
            The binding parameter type name for this operation.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataOperation.SetMetadataBuilder(Microsoft.OData.Evaluation.ODataResourceMetadataBuilder,System.Uri)">
            <summary>
            Sets the metadata builder for this operation.
            </summary>
            <param name="builder">The metadata builder used to compute values from model annotations.</param>
            <param name="metadataDocumentUri">The metadata document Uri.</param>
        </member>
        <member name="M:Microsoft.OData.ODataOperation.GetMetadataBuilder">
            <summary>
            Gets the metadata builder for this operation.
            </summary>
            <returns>The metadata builder used to compute values.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataOutputContext">
            <summary>
            Base class for all output contexts, defines the interface
            to be implemented by the specific formats.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataOutputContext.format">
            <summary>The format for this output context.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataOutputContext.messageWriterSettings">
            <summary>The message writer settings to be used for writing.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataOutputContext.writingResponse">
            <summary>Set to true if this context is writing a response payload.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataOutputContext.synchronous">
            <summary>true if the input should be written synchronously; false if it should be written asynchronously.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataOutputContext.model">
            <summary>The model to use.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataOutputContext.payloadUriConverter">
            <summary>The optional URL resolver to perform custom URL resolution for URLs written to the payload.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataOutputContext.container">
            <summary>The optional dependency injection container to get related services for message writing.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataOutputContext.edmTypeResolver">
            <summary>The type resolver to use.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataOutputContext.payloadValueConverter">
            <summary>The payload value converter to use.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataOutputContext.writerValidator">
            <summary>The writer validator used in writing.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataOutputContext.odataSimplifiedOptions">
            <summary>
            The simplified options used in writing.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.#ctor(Microsoft.OData.ODataFormat,Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageWriterSettings)">
            <summary>
            Constructor.
            </summary>
            <param name="format">The format for this output context.</param>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageWriterSettings">Configuration settings of the OData writer.</param>
        </member>
        <member name="P:Microsoft.OData.ODataOutputContext.MessageWriterSettings">
            <summary>
            The message writer settings to be used for writing.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataOutputContext.WritingResponse">
            <summary>
            Set to true if a response is being written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataOutputContext.Synchronous">
            <summary>
            true if the output should be written synchronously; false if it should be written asynchronously.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataOutputContext.Model">
            <summary>
            The model to use or null if no metadata is available.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataOutputContext.PayloadUriConverter">
            <summary>
            The optional URL converter to perform custom URL conversion for URLs written to the payload.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataOutputContext.Container">
            <summary>
            The optional dependency injection container to get related services for message writing.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataOutputContext.EdmTypeResolver">
            <summary>
            The type resolver to use.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataOutputContext.PayloadValueConverter">
            <summary>
            The payload value converter to use
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataOutputContext.WriterValidator">
            <summary>
            The writer validator used in writing.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataOutputContext.ODataSimplifiedOptions">
            <summary>
            The ODataSimplifiedOptions used in writing
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.Dispose">
            <summary>
            IDisposable.Dispose() implementation to cleanup unmanaged resources of the context.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.CreateODataResourceSetWriter(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource set.
            </summary>
            <param name="entitySet">The entity set we are going to write entities for.</param>
            <param name="resourceType">The resource type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>The created writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.CreateODataResourceSetWriterAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource set.
            </summary>
            <param name="entitySet">The entity set we are going to write entities for.</param>
            <param name="entityType">The entity type for the entries in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>A running task for the created writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.CreateODataDeltaResourceSetWriter(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a delta resource set.
            </summary>
            <param name="entitySet">The entity set we are going to write entities for.</param>
            <param name="resourceType">The resource type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>The created writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.CreateODataDeltaResourceSetWriterAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a delta resource set.
            </summary>
            <param name="entitySet">The entity set we are going to write entities for.</param>
            <param name="entityType">The entity type for the entries in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>A running task for the created writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.CreateODataResourceWriter(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource.
            </summary>
            <param name="navigationSource">The navigation source we are going to write resource set for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>The created writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.CreateODataResourceWriterAsync(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource.
            </summary>
            <param name="navigationSource">The navigation source we are going to write resource set for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>A running task for the created writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.CreateODataCollectionWriter(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataCollectionWriter" /> to write a collection of primitive or complex values (as result of a service operation invocation).
            </summary>
            <param name="itemTypeReference">The item type of the collection being written or null if no metadata is available.</param>
            <returns>The created collection writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.CreateODataCollectionWriterAsync(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataCollectionWriter" /> to write a collection of primitive or complex values (as result of a service operation invocation).
            </summary>
            <param name="itemTypeReference">The item type of the collection being written or null if no metadata is available.</param>
            <returns>A running task for the created collection writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.CreateODataUriParameterResourceWriter(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource into a Uri operation parameter.
            </summary>
            <param name="navigationSource">The navigation source we are going to write resource set for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>The created writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.CreateODataUriParameterResourceWriterAsync(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource into a Uri operation parameter.
            </summary>
            <param name="navigationSource">The navigation source we are going to write resource set for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>A running task for the created writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.CreateODataUriParameterResourceSetWriter(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource set into a Uri operation parameter.
            </summary>
            <returns>The created writer.</returns>
            <param name="entitySet">The entity set we are going to write resources for.</param>
            <param name="resourceType">The resource type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.CreateODataUriParameterResourceSetWriterAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Asynchronously Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource set into a Uri operation parameter.
            </summary>
            <param name="entitySet">The entity set we are going to write resources for.</param>
            <param name="resourceType">The resource type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>A running task for the created writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.CreateODataParameterWriter(Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataParameterWriter" /> to write a parameter payload.
            </summary>
            <param name="operation">The operation whose parameters will be written.</param>
            <returns>The created parameter writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.CreateODataParameterWriterAsync(Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataParameterWriter" /> to write a parameter payload.
            </summary>
            <param name="operation">The operation whose parameters will be written.</param>
            <returns>A running task for the created parameter writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.WriteProperty(Microsoft.OData.ODataProperty)">
            <summary>
            Writes an <see cref="T:Microsoft.OData.ODataProperty"/> as message payload.
            </summary>
            <param name="odataProperty">The OData property to write.</param>
            <remarks>It is the responsibility of this method to flush the output before the method returns.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.WritePropertyAsync(Microsoft.OData.ODataProperty)">
            <summary>
            Asynchronously writes an <see cref="T:Microsoft.OData.ODataProperty"/> as message payload.
            </summary>
            <param name="odataProperty">The OData property to write</param>
            <returns>A task representing the asynchronous operation of writing the OData property.</returns>
            <remarks>It is the responsibility of this method to flush the output before the task finishes.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.WriteError(Microsoft.OData.ODataError,System.Boolean)">
            <summary>
            Writes an <see cref="T:Microsoft.OData.ODataError"/> as the message payload.
            </summary>
            <param name="odataError">The OData error to write.</param>
            <param name="includeDebugInformation">
            A flag indicating whether debug information (e.g., the inner error from the <paramref name="odataError"/>) should
            be included in the payload. This should only be used in debug scenarios.
            </param>
            <remarks>It is the responsibility of this method to flush the output before the method returns.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.WriteErrorAsync(Microsoft.OData.ODataError,System.Boolean)">
            <summary>
            Asynchronously writes an <see cref="T:Microsoft.OData.ODataError"/> as the message payload.
            </summary>
            <param name="odataError">The error to write.</param>
            <param name="includeDebugInformation">
            A flag indicating whether debug information (e.g., the inner error from the <paramref name="odataError"/>) should
            be included in the payload. This should only be used in debug scenarios.
            </param>
            <returns>A task representing the asynchronous operation of writing the error.</returns>
            <remarks>It is the responsibility of this method to flush the output before the task finishes.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.WriteInStreamError(Microsoft.OData.ODataError,System.Boolean)">
            <summary>
            Writes an <see cref="T:Microsoft.OData.ODataError"/> into the message payload.
            </summary>
            <param name="error">The error to write.</param>
            <param name="includeDebugInformation">
            A flag indicating whether debug information (e.g., the inner error from the <paramref name="error"/>) should
            be included in the payload. This should only be used in debug scenarios.
            </param>
            <remarks>
            This method is called if the ODataMessageWriter.WriteError is called once some other
            write operation has already started.
            The method should write the in-stream error representation for the specific format into the current payload.
            Before the method is called no flush is performed on the output context or any active writer.
            It is the responsibility of this method to flush the output before the method returns.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.WriteInStreamErrorAsync(Microsoft.OData.ODataError,System.Boolean)">
            <summary>
            Writes an <see cref="T:Microsoft.OData.ODataError"/> into the message payload.
            </summary>
            <param name="error">The error to write.</param>
            <param name="includeDebugInformation">
            A flag indicating whether debug information (e.g., the inner error from the <paramref name="error"/>) should
            be included in the payload. This should only be used in debug scenarios.
            </param>
            <returns>Task which represents the pending write operation.</returns>
            <remarks>
            This method is called if the ODataMessageWriter.WriteError is called once some other
            write operation has already started.
            The method should write the in-stream error representation for the specific format into the current payload.
            Before the method is called no flush is performed on the output context or any active writer.
            It is the responsibility of this method to make sure that all the data up to this point are written before
            the in-stream error is written.
            It is the responsibility of this method to flush the output before the task finishes.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.CreateODataAsynchronousWriter">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataAsynchronousWriter" /> to write an async response.
            </summary>
            <returns>The created writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.CreateODataAsynchronousWriterAsync">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataAsynchronousWriter" /> to write an async response.
            </summary>
            <returns>A running task for the created writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.CreateODataDeltaWriter(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataDeltaWriter" /> to write a delta response.
            </summary>
            <returns>The created writer.</returns>
            <param name="entitySet">The entity set we are going to write entities for.</param>
            <param name="entityType">The entity type for the entries in the resource set to be written (or null if the entity set base type should be used).</param>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.CreateODataDeltaWriterAsync(Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataDeltaWriter" /> to write a delta response.
            </summary>
            <param name="entitySet">The entity set we are going to write entities for.</param>
            <param name="entityType">The entity type for the entries in the resource set to be written (or null if the entity set base type should be used).</param>
            <returns>A running task for the created writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.CreateODataBatchWriter">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataBatchWriter" /> to write a batch of requests or responses.
            </summary>
            <returns>The created batch writer.</returns>
            <remarks>We don't plan to make this public!</remarks>
            <remarks>
            The write must flush the output when it's finished (inside the last Write call).
            Since we don't want to support batch format extensibility (at least not yet) this method should remain internal.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.CreateODataBatchWriterAsync">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataBatchWriter" /> to write a batch of requests or responses.
            </summary>
            <returns>A running task for the created batch writer.</returns>
            <remarks>We don't plan to make this public!</remarks>
            <remarks>
            The write must flush the output when it's finished (inside the last Write call).
            Since we don't want to support batch format extensibility (at least not yet) this method should remain internal.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.WriteServiceDocument(Microsoft.OData.ODataServiceDocument)">
            <summary>
            Writes a service document with the specified <paramref name="serviceDocument"/>
            as message payload.
            </summary>
            <param name="serviceDocument">The service document to write in the service document.</param>
            <remarks>It is the responsibility of this method to flush the output before the method returns.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.WriteServiceDocumentAsync(Microsoft.OData.ODataServiceDocument)">
            <summary>
            Asynchronously writes a service document with the specified <paramref name="serviceDocument"/>
            as message payload.
            </summary>
            <param name="serviceDocument">The service document to write in the service document.</param>
            <returns>A task representing the asynchronous operation of writing the service document.</returns>
            <remarks>It is the responsibility of this method to flush the output before the task finishes.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.WriteEntityReferenceLinks(Microsoft.OData.ODataEntityReferenceLinks)">
            <summary>
            Writes the result of a $ref query as the message payload.
            </summary>
            <param name="links">The entity reference links to write as message payload.</param>
            <remarks>It is the responsibility of this method to flush the output before the method returns.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.WriteEntityReferenceLinksAsync(Microsoft.OData.ODataEntityReferenceLinks)">
            <summary>
            Asynchronously writes the result of a $ref query as the message payload.
            </summary>
            <param name="links">The entity reference links to write as message payload.</param>
            <returns>A task representing the asynchronous writing of the entity reference links.</returns>
            <remarks>It is the responsibility of this method to flush the output before the task finishes.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.WriteEntityReferenceLink(Microsoft.OData.ODataEntityReferenceLink)">
            <summary>
            Writes a singleton result of a $ref query as the message payload.
            </summary>
            <param name="link">The entity reference link to write as message payload.</param>
            <remarks>It is the responsibility of this method to flush the output before the method returns.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.WriteEntityReferenceLinkAsync(Microsoft.OData.ODataEntityReferenceLink)">
            <summary>
            Asynchronously writes a singleton result of a $ref query as the message payload.
            </summary>
            <param name="link">The link result to write as message payload.</param>
            <returns>A running task representing the writing of the link.</returns>
            <remarks>It is the responsibility of this method to flush the output before the task finishes.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.WriteValue(System.Object)">
            <summary>
            Writes a single value as the message body.
            </summary>
            <param name="value">The value to write.</param>
            <remarks>It is the responsibility of this method to flush the output before the method returns.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.WriteValueAsync(System.Object)">
            <summary>
            Asynchronously writes a single value as the message body.
            </summary>
            <param name="value">The value to write.</param>
            <returns>A running task representing the writing of the value.</returns>
            <remarks>It is the responsibility of this method to flush the output before the task finishes.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.WriteMetadataDocument">
            <summary>
            Writes the metadata document as the message body.
            </summary>
            <remarks>It is the responsibility of this method to flush the output before the method returns.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.AssertSynchronous">
            <summary>
            Asserts that the input context was created for synchronous operation.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.AssertAsynchronous">
            <summary>
            Asserts that the input context was created for asynchronous operation.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.Dispose(System.Boolean)">
            <summary>
            Perform the actual cleanup work.
            </summary>
            <param name="disposing">If 'true' this method is called from user code; if 'false' it is called by the runtime.</param>
        </member>
        <member name="M:Microsoft.OData.ODataOutputContext.CreatePayloadKindNotSupportedException(Microsoft.OData.ODataPayloadKind)">
            <summary>
            Creates an exception which reports that the specified payload kind if not support by this format.
            </summary>
            <param name="payloadKind">The payload kind which is not supported.</param>
            <returns>An exception to throw.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataParameterReader">
            <summary> Base class for OData parameter readers. </summary>
        </member>
        <member name="P:Microsoft.OData.ODataParameterReader.State">
            <summary> Gets the current state of the reader. </summary>
            <returns> The current state of the reader. </returns>
        </member>
        <member name="P:Microsoft.OData.ODataParameterReader.Name">
            <summary> Gets the name of the current parameter that is being read. </summary>
            <returns> The name of the current parameter that is being read. </returns>
        </member>
        <member name="P:Microsoft.OData.ODataParameterReader.Value">
            <summary> Gets the value of the current parameter that is being read. </summary>
            <returns> The value of the current parameter that is being read. </returns>
            <remarks>
            This property returns a primitive value or null when State is ODataParameterReaderState.Value.
            This property returns null when State is ODataParameterReaderState.Resource, ODataParameterReaderState.ResourceSet or ODataParameterReaderState.Collection.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReader.CreateResourceReader">
            <summary>
            This method creates an <see cref="T:Microsoft.OData.ODataReader"/> to read the resource value when the state is ODataParameterReaderState.Resource.
            </summary>
            <remarks>
            When the state is ODataParameterReaderState.Resource, the Name property of the <see cref="T:Microsoft.OData.ODataParameterReader"/> returns the name of the parameter
            and the Value property of the <see cref="T:Microsoft.OData.ODataParameterReader"/> returns null. Calling this method in any other state will cause an ODataException to be thrown.
            </remarks>
            <returns>Returns an <see cref="T:Microsoft.OData.ODataReader"/> to read the resource value when the state is ODataParameterReaderState.Resource.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReader.CreateResourceSetReader">
            <summary>
            This method creates an <see cref="T:Microsoft.OData.ODataReader"/> to read the resource set value when the state is ODataParameterReaderState.ResourceSet.
            </summary>
            <remarks>
            When the state is ODataParameterReaderState.ResourceSet, the Name property of the <see cref="T:Microsoft.OData.ODataParameterReader"/> returns the name of the parameter
            and the Value property of the <see cref="T:Microsoft.OData.ODataParameterReader"/> returns null. Calling this method in any other state will cause an ODataException to be thrown.
            </remarks>
            <returns>Returns an <see cref="T:Microsoft.OData.ODataReader"/> to read the resource set value when the state is ODataParameterReaderState.ResourceSet.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReader.CreateCollectionReader">
            <summary> Creates an <see cref="T:Microsoft.OData.ODataCollectionReader" /> to read the collection value when the state is ODataParameterReaderState.Collection. </summary>
            <returns>An <see cref="T:Microsoft.OData.ODataCollectionReader" /> to read the collection value when the state is ODataParameterReaderState.Collection.</returns>
            <remarks>
            When the state is ODataParameterReaderState.Collection, the Name property of the <see cref="T:Microsoft.OData.ODataParameterReader"/> returns the name of the parameter
            and the Value property of the <see cref="T:Microsoft.OData.ODataParameterReader"/> returns null. Calling this method in any other state will cause an ODataException to be thrown.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReader.Read">
            <summary> Reads the next parameter from the message payload. </summary>
            <returns>true if more items were read; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReader.ReadAsync">
            <summary> Asynchronously reads the next item from the message payload. </summary>
            <returns>A task that when completed indicates whether more items were read.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataParameterReaderCore">
            <summary>
            Base class for OData parameter readers that verifies a proper sequence of read calls on the reader.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataParameterReaderCore.inputContext">
            <summary>The input context to read from.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataParameterReaderCore.operation">
            <summary>The operation whose parameters are being read.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataParameterReaderCore.scopes">
            <summary>Stack of reader scopes to keep track of the current context of the reader.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataParameterReaderCore.parametersRead">
            <summary>Hash set to keep track of all the parameters read from the payload.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataParameterReaderCore.subReaderState">
            <summary>Tracks the state of the sub-reader.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.#ctor(Microsoft.OData.ODataInputContext,Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Constructor.
            </summary>
            <param name="inputContext">The input to read from.</param>
            <param name="operation">The operation import whose parameters are being read.</param>
        </member>
        <member name="T:Microsoft.OData.ODataParameterReaderCore.SubReaderState">
            <summary>Enum to track the state of the sub-reader.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataParameterReaderCore.SubReaderState.None">
            <summary>No sub-reader has been created for the current parameter.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataParameterReaderCore.SubReaderState.Active">
            <summary>CreateResourceReader(), CreateResourceSetReader() or CreateCollectionReader() has been called for the current parameter
            and the newly created reader is not in Completed state.</summary>
            <remarks>If the sub-reader is in Error state, the ODataParameterReader will enter ODataParameterReaderState.Error.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataParameterReaderCore.SubReaderState.Completed">
            <summary>The created sub-reader is in Completed state.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataParameterReaderCore.State">
            <summary>
            The current state of the reader.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataParameterReaderCore.Name">
            <summary>
            The name of the current parameter that is being read.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataParameterReaderCore.Value">
            <summary>
            The value of the current parameter that is being read.
            </summary>
            <remarks>
            This property returns a primitive value or null when State is ODataParameterReaderState.Value.
            This property returns null when State is ODataParameterReaderState.Resource, ODataParameterReaderState.ResourceSet or ODataParameterReaderState.Collection.
            </remarks>
        </member>
        <member name="P:Microsoft.OData.ODataParameterReaderCore.Operation">
            <summary>
            The operation whose parameters are being read.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.CreateResourceReader">
            <summary>
            This method creates an <see cref="T:Microsoft.OData.ODataReader"/> to read the resource value when the state is ODataParameterReaderState.Resource.
            </summary>
            <remarks>
            When the state is ODataParameterReaderState.Resource, the Name property of the <see cref="T:Microsoft.OData.ODataParameterReader"/> returns the name of the parameter
            and the Value property of the <see cref="T:Microsoft.OData.ODataParameterReader"/> returns null. Calling this method in any other state will cause an ODataException to be thrown.
            </remarks>
            <returns>Returns an <see cref="T:Microsoft.OData.ODataReader"/> to read the resource value when the state is ODataParameterReaderState.Resource.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.CreateResourceSetReader">
            <summary>
            This method creates an <see cref="T:Microsoft.OData.ODataReader"/> to read the resource set value when the state is ODataParameterReaderState.ResourceSet.
            </summary>
            <remarks>
            When the state is ODataParameterReaderState.ResourceSet, the Name property of the <see cref="T:Microsoft.OData.ODataParameterReader"/> returns the name of the parameter
            and the Value property of the <see cref="T:Microsoft.OData.ODataParameterReader"/> returns null. Calling this method in any other state will cause an ODataException to be thrown.
            </remarks>
            <returns>Returns an <see cref="T:Microsoft.OData.ODataReader"/> to read the resource set value when the state is ODataParameterReaderState.ResourceSet.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.CreateCollectionReader">
            <summary>
            This method creates an <see cref="T:Microsoft.OData.ODataCollectionReader"/> to read the collection value when the state is ODataParameterReaderState.Collection.
            </summary>
            <remarks>
            When the state is ODataParameterReaderState.Collection, the Name property of the <see cref="T:Microsoft.OData.ODataParameterReader"/> returns the name of the parameter
            and the Value property of the <see cref="T:Microsoft.OData.ODataParameterReader"/> returns null. Calling this method in any other state will cause an ODataException to be thrown.
            </remarks>
            <returns>Returns an <see cref="T:Microsoft.OData.ODataCollectionReader"/> to read the collection value when the state is ODataParameterReaderState.Collection.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.Read">
            <summary>
            Reads the next item from the message payload.
            </summary>
            <returns>true if more items were read; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.ReadAsync">
            <summary>
            Asynchronously reads the next item from the message payload.
            </summary>
            <returns>A task that when completed indicates whether more items were read.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.Microsoft#OData#IODataReaderWriterListener#OnException">
            <summary>
            This method notifies the implementer of this interface that the created reader is in Exception state.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.Microsoft#OData#IODataReaderWriterListener#OnCompleted">
            <summary>
            This method notifies the implementer of this interface that the created reader is in Completed state.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.GetParameterTypeReference(System.String)">
            <summary>
            Returns the type reference of the parameter in question.
            </summary>
            <param name="parameterName">Name of the parameter in question.</param>
            <returns>Returns the type reference of the parameter in question.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.EnterScope(Microsoft.OData.ODataParameterReaderState,System.String,System.Object)">
            <summary>
            Creates a new <see cref="T:Microsoft.OData.ODataParameterReaderCore.Scope"/> for the specified <paramref name="state"/> with the provided
            <paramref name="name"/> and <paramref name="value"/> and pushes it on the stack of scopes.
            </summary>
            <param name="state">The <see cref="T:Microsoft.OData.ODataParameterReaderState"/> to use for the new scope.</param>
            <param name="name">The parameter name to attach with the state in the new scope.</param>
            <param name="value">The parameter value to attach with the state in the new scope.</param>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.PopScope(Microsoft.OData.ODataParameterReaderState)">
            <summary>
            Removes the current scope from the stack of all scopes.
            </summary>
            <param name="state">The expected state of the current scope (to be popped).</param>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.OnParameterCompleted">
            <summary>
            Called when the a parameter was completed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.ReadImplementation">
            <summary>
            Reads the next <see cref="T:Microsoft.OData.ODataItem"/> from the message payload.
            </summary>
            <returns>true if more items were read; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.ReadAtStartImplementation">
            <summary>
            Implementation of the parameter reader logic when in state 'Start'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.ReadNextParameterImplementation">
            <summary>
            Implementation of the reader logic when in state Value, Resource, Resource Set or Collection state.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.CreateResourceReader(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader"/> to read the resource value of type <paramref name="expectedResourceType"/>.
            </summary>
            <param name="expectedResourceType">Expected entity type to read.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataReader"/> to read the resource value of type <paramref name="expectedResourceType"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.CreateResourceSetReader(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Cretes an <see cref="T:Microsoft.OData.ODataReader"/> to read the resource set value of type <paramref name="expectedResourceType"/>.
            </summary>
            <param name="expectedResourceType">Expected resource set element type to read.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataReader"/> to read the resource set value of type <paramref name="expectedResourceType"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.CreateCollectionReader(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataCollectionReader"/> to read the collection with type <paramref name="expectedItemTypeReference"/>.
            </summary>
            <param name="expectedItemTypeReference">Expected item type reference of the collection to read.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataCollectionReader"/> to read the collection with type <paramref name="expectedItemTypeReference"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.ReadSynchronously">
            <summary>
            Reads the next <see cref="T:Microsoft.OData.ODataItem"/> from the message payload.
            </summary>
            <returns>true if more items were read; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.ReadAsynchronously">
            <summary>
            Asynchronously reads the next <see cref="T:Microsoft.OData.ODataItem"/> from the message payload.
            </summary>
            <returns>A task that when completed indicates whether more items were read.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.GetCreateReaderMethodName(Microsoft.OData.ODataParameterReaderState)">
            <summary>
            Gets the corresponding create reader method name for the given state.
            </summary>
            <param name="state">State in question.</param>
            <returns>Returns the name of the method to create the correct reader for the given state.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.VerifyCanCreateSubReader(Microsoft.OData.ODataParameterReaderState)">
            <summary>
            Verifies that one of CreateResourceReader(), CreateResourceSetReader() or CreateCollectionReader() can be called.
            </summary>
            <param name="expectedState">The expected state of the reader.</param>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.InterceptException``1(System.Func{``0})">
            <summary>
            Catch any exception thrown by the action passed in; in the exception case move the reader into
            state ExceptionThrown and then rethrow the exception.
            </summary>
            <typeparam name="T">The type returned from the <paramref name="action"/> to execute.</typeparam>
            <param name="action">The action to execute.</param>
            <returns>The result of executing the <paramref name="action"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.VerifyCanRead(System.Boolean)">
            <summary>
            Verifies that calling Read is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.VerifyCallAllowed(System.Boolean)">
            <summary>
            Verifies that a call is allowed to the reader.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.VerifySynchronousCallAllowed">
            <summary>
            Verifies that a synchronous operation is allowed on this reader.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.VerifyAsynchronousCallAllowed">
            <summary>
            Verifies that an asynchronous operation is allowed on this reader.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataParameterReaderCore.Scope">
            <summary>
            A parameter reader scope; keeping track of the current reader state and an item associated with this state.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataParameterReaderCore.Scope.state">
            <summary>The reader state of this scope.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataParameterReaderCore.Scope.name">
            <summary>The parameter name attached to this scope.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataParameterReaderCore.Scope.value">
            <summary>The parameter value attached to this scope.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCore.Scope.#ctor(Microsoft.OData.ODataParameterReaderState,System.String,System.Object)">
            <summary>
            Constructor creating a new reader scope.
            </summary>
            <param name="state">The reader state of this scope.</param>
            <param name="name">The parameter name attached to this scope.</param>
            <param name="value">The parameter value attached to this scope.</param>
        </member>
        <member name="P:Microsoft.OData.ODataParameterReaderCore.Scope.State">
            <summary>
            The reader state of this scope.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataParameterReaderCore.Scope.Name">
            <summary>
            The parameter name attached to this scope.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataParameterReaderCore.Scope.Value">
            <summary>
            The parameter value attached to this scope.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataParameterReaderCoreAsync">
            <summary>
            Base class for OData parameter readers that verifies a proper sequence of read calls on the reader with truly async operations.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCoreAsync.#ctor(Microsoft.OData.ODataInputContext,Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Constructor.
            </summary>
            <param name="inputContext">The input to read from.</param>
            <param name="operation">The operation whose parameters are being read.</param>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCoreAsync.ReadAtStartImplementationAsync">
            <summary>
            Implementation of the parameter reader logic when in state 'Start'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCoreAsync.ReadNextParameterImplementationAsync">
            <summary>
            Implementation of the reader logic when in state Value, Resource, Resource Set or Collection state.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCoreAsync.CreateResourceReaderAsync(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataReader"/> to read the resource value of type <paramref name="expectedResourceType"/>.
            </summary>
            <param name="expectedResourceType">Expected entity type to read.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataReader"/> to read the resource value of type <paramref name="expectedResourceType"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCoreAsync.CreateResourceSetReaderAsync(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Cretes an <see cref="T:Microsoft.OData.ODataReader"/> to read the resource set value of type <paramref name="expectedResourceType"/>.
            </summary>
            <param name="expectedResourceType">Expected resource set element type to read.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataReader"/> to read the resource set value of type <paramref name="expectedResourceType"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCoreAsync.CreateCollectionReaderAsync(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataCollectionReader"/> to read the collection with type <paramref name="expectedItemTypeReference"/>.
            </summary>
            <param name="expectedItemTypeReference">Expected item type reference of the collection to read.</param>
            <returns>An <see cref="T:Microsoft.OData.ODataCollectionReader"/> to read the collection with type <paramref name="expectedItemTypeReference"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterReaderCoreAsync.ReadAsynchronously">
            <summary>
            Asynchronously reads the next <see cref="T:Microsoft.OData.ODataItem"/> from the message payload.
            </summary>
            <returns>A task that when completed indicates whether more items were read.</returns>
            <remarks>The base class already implements this but only for fully synchronous readers, the implementation here
            allows fully asynchronous readers.</remarks>
        </member>
        <member name="T:Microsoft.OData.ODataParameterReaderState">
            <summary> Enumeration of all possible states of an <see cref="T:Microsoft.OData.ODataParameterReader" />. </summary>
        </member>
        <member name="F:Microsoft.OData.ODataParameterReaderState.Start">
            <summary>The reader is at the start; nothing has been read yet.</summary>
            <remarks>In this state the Name and Value properties of the <see cref="T:Microsoft.OData.ODataParameterReader"/> returns null.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataParameterReaderState.Value">
            <summary>The reader read a primitive or a complex parameter.</summary>
            <remarks>In this state the Name property of the <see cref="T:Microsoft.OData.ODataParameterReader"/> returns the name of the parameter
            and the Value property of the <see cref="T:Microsoft.OData.ODataParameterReader"/> returns the value read (e.g. a primitive value, or null).</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataParameterReaderState.Collection">
            <summary>The reader is reading a collection parameter.</summary>
            <remarks>In this state the Name property of the <see cref="T:Microsoft.OData.ODataParameterReader"/> returns the name of the parameter
            and the Value property of the <see cref="T:Microsoft.OData.ODataParameterReader"/> returns null. The CreateCollectionReader() method on the <see cref="T:Microsoft.OData.ODataParameterReader"/>
            must be called to get the reader to read the collection value.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataParameterReaderState.Exception">
            <summary>The reader has thrown an exception; nothing can be read from the reader anymore.</summary>
            <remarks>In this state the Name and Value properties of the <see cref="T:Microsoft.OData.ODataReader"/> return null.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataParameterReaderState.Completed">
            <summary>The reader has completed; nothing can be read anymore.</summary>
            <remarks>In this state the Name and Value properties of the <see cref="T:Microsoft.OData.ODataParameterReader"/> return null.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataParameterReaderState.Resource">
            <summary>The reader is reading a resource parameter.</summary>
            <remarks>In this state the Name property of the <see cref="T:Microsoft.OData.ODataParameterReader"/> returns the name of the parameter
            and the Value property of the <see cref="T:Microsoft.OData.ODataParameterReader"/> returns null. The CreateResourceReader() method on the <see cref="T:Microsoft.OData.ODataParameterReader"/>
            must be called to get the reader to read the resource value.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataParameterReaderState.ResourceSet">
            <summary>The reader is reading a resource set parameter.</summary>
            <remarks>In this state the Name property of the <see cref="T:Microsoft.OData.ODataParameterReader"/> returns the name of the parameter
            and the Value property of the <see cref="T:Microsoft.OData.ODataParameterReader"/> returns null. The CreateResourceSetReader() method on the <see cref="T:Microsoft.OData.ODataParameterReader"/>
            must be called to get the reader to read the resource set value.</remarks>
        </member>
        <member name="T:Microsoft.OData.ODataParameterWriter">
            <summary>Base class for OData collection writers.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriter.WriteStart">
            <summary>Start writing a parameter payload.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriter.WriteStartAsync">
            <summary>Asynchronously start writing a parameter payload.</summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriter.WriteValue(System.String,System.Object)">
            <summary>Start writing a value parameter.</summary>
            <param name="parameterName">The name of the parameter to write.</param>
            <param name="parameterValue">The value of the parameter to write (null/ODataEnumValue/primitiveClrValue).</param>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriter.WriteValueAsync(System.String,System.Object)">
            <summary>Asynchronously start writing a value parameter.</summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
            <param name="parameterName">The name of the parameter to write.</param>
            <param name="parameterValue">The value of the parameter to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriter.CreateCollectionWriter(System.String)">
            <summary>Creates an <see cref="T:Microsoft.OData.ODataCollectionWriter" /> to write the value of a collection parameter.</summary>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataCollectionWriter" />.</returns>
            <param name="parameterName">The name of the collection parameter to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriter.CreateCollectionWriterAsync(System.String)">
            <summary>Asynchronously creates an <see cref="T:Microsoft.OData.ODataCollectionWriter" /> to write the value of a collection parameter.</summary>
            <returns>The asynchronously created <see cref="T:Microsoft.OData.ODataCollectionWriter" />.</returns>
            <param name="parameterName">The name of the collection parameter to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriter.CreateResourceWriter(System.String)">
            <summary> Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource. </summary>
            <param name="parameterName">The name of the parameter to write.</param>
            <returns>The created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriter.CreateResourceWriterAsync(System.String)">
            <summary>Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource.</summary>
            <param name="parameterName">The name of the parameter to write.</param>
            <returns>The asynchronously created <see cref="T:Microsoft.OData.ODataWriter" />.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriter.CreateResourceSetWriter(System.String)">
            <summary> Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource set. </summary>
            <param name="parameterName">The name of the parameter to write.</param>
            <returns>The created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriter.CreateResourceSetWriterAsync(System.String)">
            <summary>Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource set.</summary>
            <param name="parameterName">The name of the parameter to write.</param>
            <returns>The asynchronously created <see cref="T:Microsoft.OData.ODataWriter" />.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriter.WriteEnd">
            <summary>Finish writing a parameter payload.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriter.WriteEndAsync">
            <summary>Asynchronously finish writing a parameter payload.</summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriter.Flush">
            <summary>Flushes the write buffer to the underlying stream.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriter.FlushAsync">
            <summary>Asynchronously flushes the write buffer to the underlying stream.</summary>
            <returns>A task instance that represents the asynchronous operation.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataParameterWriterCore">
            <summary>
            Base class for OData parameter writers that verifies a proper sequence of write calls on the writer.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataParameterWriterCore.outputContext">
            <summary>The output context to write to.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataParameterWriterCore.operation">
            <summary>The operation whose parameters will be written.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataParameterWriterCore.scopes">
            <summary>Stack of writer scopes to keep track of the current context of the writer.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataParameterWriterCore.parameterNamesWritten">
            <summary>Parameter names that have already been written, used to detect duplicate writes on a parameter.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataParameterWriterCore.duplicatePropertyNameChecker">
            <summary>Checker to detect duplicate property names on complex parameter values.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.#ctor(Microsoft.OData.ODataOutputContext,Microsoft.OData.Edm.IEdmOperation)">
            <summary>
            Constructor.
            </summary>
            <param name="outputContext">The output context to write to.</param>
            <param name="operation">The operation import whose parameters will be written.</param>
        </member>
        <member name="T:Microsoft.OData.ODataParameterWriterCore.ParameterWriterState">
            <summary>
            An enumeration representing the current state of the writer.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataParameterWriterCore.ParameterWriterState.Start">
            <summary>The writer is at the start; nothing has been written yet.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataParameterWriterCore.ParameterWriterState.CanWriteParameter">
            <summary>
            The writer is in a state where the next parameter can be written.
            The writer enters this state after WriteStart() or after the previous parameter is written.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataParameterWriterCore.ParameterWriterState.ActiveSubWriter">
            <summary>One of the create writer method has been called and the created sub writer is not in Completed state.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataParameterWriterCore.ParameterWriterState.Completed">
            <summary>The writer has completed; nothing can be written anymore.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataParameterWriterCore.ParameterWriterState.Error">
            <summary>An error had occurred while writing the payload; nothing can be written anymore.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataParameterWriterCore.DuplicatePropertyNameChecker">
            <summary>Checker to detect duplicate property names on complex parameter values.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataParameterWriterCore.State">
            <summary>
            The current state of the writer.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.Flush">
            <summary>
            Flushes the write buffer to the underlying stream.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.FlushAsync">
            <summary>
            Asynchronously flushes the write buffer to the underlying stream.
            </summary>
            <returns>A task instance that represents the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.WriteStart">
            <summary>
            Start writing a parameter payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.WriteStartAsync">
            <summary>
            Asynchronously start writing a parameter payload.
            </summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.WriteValue(System.String,System.Object)">
            <summary>
            Start writing a value parameter.
            </summary>
            <param name="parameterName">The name of the parameter to write.</param>
            <param name="parameterValue">The value of the parameter to write (null/ODataEnumValue/primitiveClrValue).</param>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.WriteValueAsync(System.String,System.Object)">
            <summary>
            Asynchronously start writing a value parameter.
            </summary>
            <param name="parameterName">The name of the parameter to write.</param>
            <param name="parameterValue">The value of the parameter to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.CreateCollectionWriter(System.String)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataCollectionWriter"/> to write the value of a collection parameter.
            </summary>
            <param name="parameterName">The name of the collection parameter to write.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataCollectionWriter"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.CreateCollectionWriterAsync(System.String)">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataCollectionWriter"/> to write the value of a collection parameter.
            </summary>
            <param name="parameterName">The name of the collection parameter to write.</param>
            <returns>A running task for the created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.CreateResourceWriter(System.String)">
            <summary> Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource. </summary>
            <param name="parameterName">The name of the parameter to write.</param>
            <returns>The created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.CreateResourceWriterAsync(System.String)">
            <summary>Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource.</summary>
            <param name="parameterName">The name of the parameter to write.</param>
            <returns>The asynchronously created <see cref="T:Microsoft.OData.ODataWriter" />.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.CreateResourceSetWriter(System.String)">
            <summary> Creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource set. </summary>
            <param name="parameterName">The name of the parameter to write.</param>
            <returns>The created writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.CreateResourceSetWriterAsync(System.String)">
            <summary>Asynchronously creates an <see cref="T:Microsoft.OData.ODataWriter" /> to write a resource set.</summary>
            <param name="parameterName">The name of the parameter to write.</param>
            <returns>The asynchronously created <see cref="T:Microsoft.OData.ODataWriter" />.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.WriteEnd">
            <summary>
            Finish writing a parameter payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.WriteEndAsync">
            <summary>
            Asynchronously finish writing a parameter payload.
            </summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.Microsoft#OData#IODataReaderWriterListener#OnException">
            <summary>
            This method notifies the implementer of this interface that the created reader is in Exception state.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.Microsoft#OData#IODataReaderWriterListener#OnCompleted">
            <summary>
            This method notifies the implementer of this interface that the created reader is in Completed state.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.Microsoft#OData#IODataOutputInStreamErrorListener#OnInStreamError">
            <summary>
            This method notifies the listener, that an in-stream error is to be written.
            </summary>
            <remarks>
            This listener can choose to fail, if the currently written payload doesn't support in-stream error at this position.
            If the listener returns, the writer should not allow any more writing, since the in-stream error is the last thing in the payload.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.VerifyNotDisposed">
            <summary>
            Check if the object has been disposed; called from all public API methods. Throws an ObjectDisposedException if the object
            has already been disposed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.FlushSynchronously">
            <summary>
            Flush the output.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.FlushAsynchronously">
            <summary>
            Flush the output.
            </summary>
            <returns>Task representing the pending flush operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.StartPayload">
            <summary>
            Start writing an OData payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.WriteValueParameter(System.String,System.Object,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Writes a value parameter (either primitive or complex).
            </summary>
            <param name="parameterName">The name of the parameter to write.</param>
            <param name="parameterValue">The value of the parameter to write.</param>
            <param name="expectedTypeReference">The expected type reference of the parameter value.</param>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.CreateFormatCollectionWriter(System.String,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Creates a format specific <see cref="T:Microsoft.OData.ODataCollectionWriter"/> to write the value of a collection parameter.
            </summary>
            <param name="parameterName">The name of the collection parameter to write.</param>
            <param name="expectedItemType">The type reference of the expected item type or null if no expected item type exists.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataCollectionWriter"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.CreateFormatResourceWriter(System.String,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>Creates a format specific <see cref="T:Microsoft.OData.ODataWriter"/> to write a resource.</summary>
            <param name="parameterName">The name of the parameter to write.</param>
            <param name="expectedItemType">The type reference of the expected item type or null if no expected item type exists.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataWriter"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.CreateFormatResourceSetWriter(System.String,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>Creates a format specific <see cref="T:Microsoft.OData.ODataWriter"/> to write a resource set.</summary>
            <param name="parameterName">The name of the parameter to write.</param>
            <param name="expectedItemType">The type reference of the expected item type or null if no expected item type exists.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataWriter"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.EndPayload">
            <summary>
            Finish writing an OData payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.VerifyCanWriteStart(System.Boolean)">
            <summary>
            Verifies that calling WriteStart is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.WriteStartImplementation">
            <summary>
            Start writing a parameter payload - implementation of the actual functionality.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.VerifyCanWriteParameterAndGetTypeReference(System.Boolean,System.String)">
            <summary>
            Verifies that the parameter with name <paramref name="parameterName"/> can be written and returns the
            type reference of the parameter.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
            <param name="parameterName">The name of the parameter to be written.</param>
            <returns>The type reference of the parameter; null if no operation import was specified to the writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.VerifyCanWriteValueParameter(System.Boolean,System.String,System.Object)">
            <summary>
            Verify that calling WriteValue is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
            <param name="parameterName">The name of the parameter to be written.</param>
            <param name="parameterValue">The value of the parameter to write.</param>
            <returns>The type reference of the parameter; null if no operation import was specified to the writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.VerifyCanCreateCollectionWriter(System.Boolean,System.String)">
            <summary>
            Verify that calling CreateCollectionWriter is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
            <param name="parameterName">The name of the parameter to be written.</param>
            <returns>The expected item type of the items in the collection or null if no item type is available.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.VerifyCanCreateResourceWriter(System.Boolean,System.String)">
            <summary>
            Verify that calling CreateResourceWriter is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
            <param name="parameterName">The name of the parameter to be written.</param>
            <returns>The expected item type of the resource or null.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.VerifyCanCreateResourceSetWriter(System.Boolean,System.String)">
            <summary>
            Verify that calling CreateResourceSetWriter is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
            <param name="parameterName">The name of the parameter to be written.</param>
            <returns>The expected item type of the item in resource set or null.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.GetParameterTypeReference(System.String)">
            <summary>
            Gets the type reference of the parameter in question. Returns null if no operation import was specified to the writer.
            </summary>
            <param name="parameterName">The name of the parameter in question.</param>
            <returns>The type reference of the parameter; null if no operation import was specified to the writer.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.WriteValueImplementation(System.String,System.Object,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Write a value parameter - implementation of the actual functionality.
            </summary>
            <param name="parameterName">The name of the parameter to write.</param>
            <param name="parameterValue">The value of the parameter to write (null/ODataEnumValue/primitiveClrValue).</param>
            <param name="expectedTypeReference">The expected type reference of the parameter value.</param>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.CreateCollectionWriterImplementation(System.String,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataCollectionWriter"/> to write the value of a collection parameter.
            </summary>
            <param name="parameterName">The name of the collection parameter to write.</param>
            <param name="expectedItemType">The type reference of the expected item type or null if no expected item type exists.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataCollectionWriter"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.CreateResourceWriterImplementation(System.String,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataWriter"/> to write a resource parameter.
            </summary>
            <param name="parameterName">The name of the parameter to write.</param>
            <param name="expectedItemType">The type reference of the expected item type or null if no expected item type exists.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataWriter"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.CreateResourceSetWriterImplementation(System.String,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataWriter"/> to write a resource set parameter.
            </summary>
            <param name="parameterName">The name of the collection parameter to write.</param>
            <param name="expectedItemType">The type reference of the expected item type or null if no expected item type exists.</param>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataCollectionWriter"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.VerifyCanWriteEnd(System.Boolean)">
            <summary>
            Verifies that calling WriteEnd is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.VerifyAllParametersWritten">
            <summary>
            If an <see cref="T:Microsoft.OData.Edm.IEdmOperationImport"/> is specified, then this method ensures that all parameters present in the
            operation import are written to the payload.
            </summary>
            <remarks>The binding parameter is optional in the payload. Hence this method will not check for missing binding parameter.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.WriteEndImplementation">
            <summary>
            Finish writing a parameter payload - implementation of the actual functionality.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.VerifyNotInErrorOrCompletedState">
            <summary>
            Verifies that the current state is not Error or Completed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.VerifyCanFlush(System.Boolean)">
            <summary>
            Verifies that calling Flush is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.VerifyCallAllowed(System.Boolean)">
            <summary>
            Verifies that a call is allowed to the writer.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.InterceptException(System.Action)">
            <summary>
            Catch any exception thrown by the action passed in; in the exception case move the writer into
            state ExceptionThrown and then rethrow the exception.
            </summary>
            <param name="action">The action to execute.</param>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.InterceptException``1(System.Func{``0})">
            <summary>
            Catch any exception thrown by the function passed in; in the exception case move the writer into
            state ExceptionThrown and then rethrow the exception.
            </summary>
            <typeparam name="T">The return type of <paramref name="function"/>.</typeparam>
            <param name="function">The function to execute.</param>
            <returns>Returns the return value from executing <paramref name="function"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.EnterErrorScope">
            <summary>
            Enters the Error scope if we are not already in Error state.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.EnterScope(Microsoft.OData.ODataParameterWriterCore.ParameterWriterState)">
            <summary>
            Verifies that the transition from the current state into new state is valid and enter a new writer scope.
            </summary>
            <param name="newState">The writer state to transition into.</param>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.LeaveScope">
            <summary>
            Leave the current writer scope and return to the previous scope.
            When reaching the top-level replace the 'Start' scope with a 'Completed' scope.
            </summary>
            <remarks>Note that this method is never called once the writer is in 'Error' state.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.ReplaceScope(Microsoft.OData.ODataParameterWriterCore.ParameterWriterState)">
            <summary>
            Replaces the current scope with a new scope; checks that the transition is valid.
            </summary>
            <param name="newState">The new state to transition into.</param>
        </member>
        <member name="M:Microsoft.OData.ODataParameterWriterCore.ValidateTransition(Microsoft.OData.ODataParameterWriterCore.ParameterWriterState)">
            <summary>
            Verify that the transition from the current state into new state is valid.
            </summary>
            <param name="newState">The new writer state to transition into.</param>
        </member>
        <member name="T:Microsoft.OData.ODataPayloadKind">
            <summary>
            Enumeration representing the different kinds of payloads ODatLib can write.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKind.ResourceSet">
            <summary>Payload kind for a resource set.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKind.Resource">
            <summary>Payload kind for a resource.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKind.Property">
            <summary>Payload kind for a property.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKind.EntityReferenceLink">
            <summary>Payload kind for an entity reference link.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKind.EntityReferenceLinks">
            <summary>Payload kind for entity reference links.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKind.Value">
            <summary>Payload kind for a raw value.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKind.BinaryValue">
            <summary>Payload kind for a binary value.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKind.Collection">
            <summary>Payload kind for a collection.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKind.ServiceDocument">
            <summary>Payload kind for a service document.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKind.MetadataDocument">
            <summary>Payload kind for a metadata document.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKind.Error">
            <summary>Payload kind for an error.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKind.Batch">
            <summary>Payload kind for a batch.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKind.Parameter">
            <summary>Payload kind for parameters for a service action.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKind.IndividualProperty">
            <summary>Payload kind for individual property in an entity.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKind.Delta">
            <summary>Payload kind for delta.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKind.Asynchronous">
            <summary>Payload kind for async.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKind.Unsupported">
            <summary>Unknown format</summary>
        </member>
        <member name="T:Microsoft.OData.ODataPayloadKindDetectionInfo">
            <summary>
            Represents the set of information available for payload kind detection.
            </summary>
            <remarks>This class is used to represent the input to run payload kind detection using
            <see cref="M:Microsoft.OData.ODataMessageReader.DetectPayloadKind"/>. See the documentation of that method for more
            information.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKindDetectionInfo.contentType">
            <summary>The parsed content type as <see cref="T:Microsoft.OData.ODataMediaType"/>.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKindDetectionInfo.encoding">
            <summary>The encoding specified in the charset parameter of contentType or the default encoding from MediaType.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKindDetectionInfo.messageReaderSettings">
            <summary>The <see cref="T:Microsoft.OData.ODataMessageReaderSettings"/> being used for reading the message.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKindDetectionInfo.model">
            <summary>The <see cref="T:Microsoft.OData.Edm.IEdmModel"/> for the payload.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataPayloadKindDetectionInfo.#ctor(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Constructor.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageReaderSettings">The <see cref="T:Microsoft.OData.ODataMessageReaderSettings"/> being used for reading the message.</param>
        </member>
        <member name="P:Microsoft.OData.ODataPayloadKindDetectionInfo.MessageReaderSettings">
            <summary>
            The <see cref="T:Microsoft.OData.ODataMessageReaderSettings"/> being used for reading the message.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataPayloadKindDetectionInfo.Model">
            <summary>
            The <see cref="T:Microsoft.OData.Edm.IEdmModel"/> for the payload.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataPayloadKindDetectionInfo.ContentType">
            <summary>
            The <see cref="T:Microsoft.OData.ODataMessageReaderSettings"/> being used for reading the message.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataPayloadKindDetectionInfo.GetEncoding">
            <summary>
            The encoding derived from the content type or the default encoding.
            </summary>
            <returns>The encoding derived from the content type or the default encoding.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataPayloadKindDetectionResult">
            <summary>Represents the result of running payload kind detection for a specified payload kind and format.</summary>
            <remarks>This class is used to represent the result of running payload kind detection using
            <see cref="M:Microsoft.OData.ODataMessageReader.DetectPayloadKind"/>. See the documentation of that method for more
            information.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKindDetectionResult.payloadKind">
            <summary>The detected payload kind.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadKindDetectionResult.format">
            <summary>The format for the detected payload kind.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataPayloadKindDetectionResult.#ctor(Microsoft.OData.ODataPayloadKind,Microsoft.OData.ODataFormat)">
            <summary>
            Constructor.
            </summary>
            <param name="payloadKind">The detected payload kind.</param>
            <param name="format">The format for the detected payload kind.</param>
        </member>
        <member name="P:Microsoft.OData.ODataPayloadKindDetectionResult.PayloadKind">
            <summary>Gets the detected payload kind.</summary>
            <returns>The detected payload kind.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataPayloadKindDetectionResult.Format">
            <summary>Gets the format for the detected payload kind.</summary>
            <returns>The format for the detected payload kind.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataPayloadValueConverter">
            <summary>
            Class for defining a payload value conversion for given model. Currently supports primitive only.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPayloadValueConverter.Default">
            <summary>
            The default instance for <see cref="T:Microsoft.OData.ODataPayloadValueConverter"/>.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataPayloadValueConverter.ConvertToPayloadValue(System.Object,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Converts the given primitive value defined in a type definition from the payload object.
            </summary>
            <param name="value">The given CLR value.</param>
            <param name="edmTypeReference">The expected type reference from model.</param>
            <returns>The converted payload value of the underlying type.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataPayloadValueConverter.ConvertFromPayloadValue(System.Object,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Converts the given payload value to the type defined in a type definition.
            </summary>
            <param name="value">The given payload value.</param>
            <param name="edmTypeReference">The expected type reference from model.</param>
            <returns>The converted value of the type.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataPayloadValueConverter.ConvertStringValue(System.String,System.Type)">
            <summary>
            Converts the given JSON string value to the expected type as per OData conversion rules for JSON values.
            </summary>
            <param name="stringValue">String value to the converted.</param>
            <param name="targetType">Target type to which the string value needs to be converted.</param>
            <returns>Object which is in sync with the target type.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataPayloadValueConverter.ConvertInt32Value(System.Int32,System.Type,Microsoft.OData.Edm.IEdmPrimitiveTypeReference)">
            <summary>
            Converts the given JSON int value to the expected type as per OData conversion rules for JSON values.
            </summary>
            <param name="intValue">Int32 value to the converted.</param>
            <param name="targetType">Target type to which the int value needs to be converted.</param>
            <param name="primitiveTypeReference">Type reference to which the value needs to be converted.</param>
            <returns>Object which is in sync with the property type.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataPreferenceHeader">
            <summary>
            Class to set the "Prefer" header on an <see cref="T:Microsoft.OData.IODataRequestMessage"/> or
            the "Preference-Applied" header on an <see cref="T:Microsoft.OData.IODataResponseMessage"/>.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPreferenceHeader.ReturnPreferenceTokenName">
            <summary>
            The return preference token.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPreferenceHeader.ReturnRepresentationPreferenceTokenValue">
            <summary>
            The return=representation preference token value.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPreferenceHeader.ReturnMinimalPreferenceTokenValue">
            <summary>
            The return=minimalpreference token value.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPreferenceHeader.ODataAnnotationPreferenceToken">
            <summary>
            The odata-annotations preference-extensions token.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPreferenceHeader.RespondAsyncPreferenceToken">
            <summary>
            The respond-async preference token.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPreferenceHeader.WaitPreferenceTokenName">
            <summary>
            The wait preference token.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPreferenceHeader.ODataContinueOnErrorPreferenceToken">
            <summary>
            The odata.continue-on-error preference token.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPreferenceHeader.ODataMaxPageSizePreferenceToken">
            <summary>
            The odata.maxpagesize=# preference token.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPreferenceHeader.ODataTrackChangesPreferenceToken">
            <summary>
            The odata.track-changes preference token.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPreferenceHeader.PreferHeaderName">
            <summary>
            The Prefer header name.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPreferenceHeader.PreferenceAppliedHeaderName">
            <summary>
            The Preference-Applied header name.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPreferenceHeader.EmptyParameters">
            <summary>
            Empty header parameters
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPreferenceHeader.ContinueOnErrorPreference">
            <summary>
            The odata.continue-on-error preference.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPreferenceHeader.ReturnMinimalPreference">
            <summary>
            The return=minimal preference.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPreferenceHeader.ReturnRepresentationPreference">
            <summary>
            The return=representation preference.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPreferenceHeader.RespondAsyncPreference">
            <summary>
            The respond-async preference.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPreferenceHeader.TrackChangesPreference">
            <summary>
            The odata.track-changes preference.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPreferenceHeader.message">
            <summary>
            The message to set the preference header to and to get the preference header from.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPreferenceHeader.preferenceHeaderName">
            <summary>
            "Prefer" if message is an IODataRequestMessage; "Preference-Applied" if message is an IODataResponseMessage.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPreferenceHeader.preferences">
            <summary>
            Dictionary of preferences in the header
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataPreferenceHeader.#ctor(Microsoft.OData.IODataRequestMessage)">
            <summary>
            Internal constructor to instantiate an <see cref="T:Microsoft.OData.ODataPreferenceHeader"/> from an <see cref="T:Microsoft.OData.IODataRequestMessage"/>.
            </summary>
            <param name="requestMessage">The request message to get and set the "Prefer" header.</param>
        </member>
        <member name="M:Microsoft.OData.ODataPreferenceHeader.#ctor(Microsoft.OData.IODataResponseMessage)">
            <summary>
            Internal constructor to instantiate an <see cref="T:Microsoft.OData.ODataPreferenceHeader"/> from an <see cref="T:Microsoft.OData.IODataResponseMessage"/>.
            </summary>
            <param name="responseMessage">The response message to get and set the "Preference-Applied" header.</param>
        </member>
        <member name="P:Microsoft.OData.ODataPreferenceHeader.ReturnContent">
            <summary>
            Property to get and set the "return=representation" and "return=minimal" preferences to the "Prefer" header on the underlying IODataRequestMessage or
            the "Preference-Applied" header on the underlying IODataResponseMessage.
            Setting true sets the "return=representation" preference and clears the "return=minimal" preference.
            Setting false sets the "return=minimal" preference and clears the "return=representation" preference.
            Setting null clears the "return=representation" and "return=minimal" preferences.
            Returns true if the "return=representation" preference is on the header. Otherwise returns false if the "return=minimal" is on the header.
            Returning null indicates that "return=representation" and "return=minimal" are not on the header.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataPreferenceHeader.AnnotationFilter">
             <summary>
             Property to get and set the "odata.include-annotations" preference with the given filter to the "Prefer" header on the underlying IODataRequestMessage or
             the "Preference-Applied" header on the underlying IODataResponseMessage.
             If the "odata-annotations" preference is already on the header, set replaces the existing instance.
             Returning null indicates that the "odata.include-annotations" preference is not on the header.
             
             The filter string may be a comma delimited list of any of the following supported patterns:
               "*" -- Matches all annotation names.
               "ns.*" -- Matches all annotation names under the namespace "ns".
               "ns.name" -- Matches only the annotation name "ns.name".
               "-" -- The exclude operator may be used with any of the supported pattern, for example:
                             "-ns.*" -- Excludes all annotation names under the namespace "ns".
                             "-ns.name" -- Excludes only the annotation name "ns.name".
             Null or empty filter is equivalent to "-*".
             
             The relative priority of the pattern is base on the relative specificity of the patterns being compared. If pattern1 is under the namespace pattern2,
             pattern1 is more specific than pattern2 because pattern1 matches a subset of what pattern2 matches. We give higher priority to the pattern that is more specific.
             For example:
              "ns.*" has higher priority than "*"
              "ns.name" has higher priority than "ns.*"
              "ns1.name" has same priority as "ns2.*"
             
             Patterns with the exclude operator takes higher precedence than the same pattern without.
             For example: "-ns.name" has higher priority than "ns.name".
             
             Examples:
               "ns1.*,ns.name" -- Matches any annotation name under the "ns1" namespace and the "ns.name" annotation.
               "*,-ns.*,ns.name" -- Matches any annotation name outside of the "ns" namespace and only "ns.name" under the "ns" namespace.
             </summary>
        </member>
        <member name="P:Microsoft.OData.ODataPreferenceHeader.RespondAsync">
            <summary>
            Property to get and set the "respond-async" preference to the "Prefer" header on the underlying IODataRequestMessage or
            the "Preference-Applied" header on the underlying IODataResponseMessage.
            Setting true sets the "respond-async" preference.
            Setting false clears the "respond-async" preference.
            Returns true if the "respond-async" preference is on the header. Otherwise returns false if the "respond-async" is not on the header.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataPreferenceHeader.Wait">
            <summary>
            Property to get and set the "wait" preference to the "Prefer" header on the underlying IODataRequestMessage or
            the "Preference-Applied" header on the underlying IODataResponseMessage.
            Setting N sets the "wait=N" preference.
            Setting null clears the "wait" preference.
            Returns N if the "wait=N" preference is on the header.
            Returning null indicates that "wait" is not on the header.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataPreferenceHeader.ContinueOnError">
            <summary>
            Property to get and set the "odata.continue-on-error" preference to the "Prefer" header on the underlying IODataRequestMessage or
            the "Preference-Applied" header on the underlying IODataResponseMessage.
            Setting true sets the "odata.continue-on-error" preference.
            Setting false clears the "odata.continue-on-error" preference.
            Returns true of the "odata.continue-on-error" preference is on the header. Otherwise returns false if the "odata.continue-on-error" is not on the header.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataPreferenceHeader.MaxPageSize">
            <summary>
            Property to get and set the "odata.maxpagesize" preference to the "Prefer" header on the underlying IODataRequestMessage or
            the "Preference-Applied" header on the underlying IODataResponseMessage.
            Setting N sets the "odata.maxpagesize=N" preference.
            Setting null clears the "odata.maxpagesize" preference.
            Returns N if the "odata.maxpagesize=N" preference is on the header.
            Returning null indicates that "odata.maxpagesize" is not on the header.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataPreferenceHeader.TrackChanges">
            <summary>
            Property to get and set the "odata.track-changes" preference to the "Prefer" header on the underlying IODataRequestMessage or
            the "Preference-Applied" header on the underlying IODataResponseMessage.
            Setting true sets the "odata.track-changes" preference.
            Setting false clears the "odata.track-changes" preference.
            Returns true of the "odata.track-changes" preference is on the header. Otherwise returns false if the "odata.track-changes" is not on the header.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataPreferenceHeader.Preferences">
            <summary>
            Dictionary of preferences in the header.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataPreferenceHeader.Clear(System.String)">
            <summary>
            Clears the <paramref name="preference"/> from the "Prefer" header on the underlying IODataRequestMessage or
            the "Preference-Applied" header on the underlying IODataResponseMessage.
            </summary>
            <param name="preference">The preference to clear.</param>
        </member>
        <member name="M:Microsoft.OData.ODataPreferenceHeader.Set(Microsoft.OData.HttpHeaderValueElement)">
            <summary>
            Sets the <paramref name="preference"/> to the "Prefer" header on the underlying IODataRequestMessage or
            the "Preference-Applied" header on the underlying IODataResponseMessage.
            </summary>
            <param name="preference">The preference to set.</param>
            <remarks>
            If <paramref name="preference"/> is already on the header, this method does a replace rather than adding another instance of the same preference.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataPreferenceHeader.Get(System.String)">
            <summary>
            Gets the <paramref name="preferenceName"/> from the "Prefer" header from the underlying <see cref="T:Microsoft.OData.IODataRequestMessage"/> or
            the "Preference-Applied" header from the underlying <see cref="T:Microsoft.OData.IODataResponseMessage"/>.
            </summary>
            <param name="preferenceName">The preference to get.</param>
            <returns>Returns a key value pair of the <paramref name="preferenceName"/> and its value. The Value property of the key value pair may be null since not
            all preferences have value. If the <paramref name="preferenceName"/> is missing from the header, null is returned.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataPreferenceHeader.AddQuotes(System.String)">
            <summary>
            Adds quotes around the given text value.
            </summary>
            <param name="text">text to quote.</param>
            <returns>Returns the quoted text.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataPreferenceHeader.ParsePreferences">
            <summary>
            Parses the current preference values to a dictionary of preference and value pairs.
            </summary>
            <returns>Returns a dictionary of preference and value pairs; null if the preference header has not been set.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataPreferenceHeader.SetPreferencesToMessageHeader">
            <summary>
            Sets the "Prefer" or the "Preference-Applied" header to the underlying message.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataPrimitiveValue">
            <summary>
            Represents a primitive property value.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataPrimitiveValue.#ctor(System.Object)">
            <summary>
            Creates a new primitive value from the given CLR value.
            </summary>
            <param name="value">The primitive to wrap.</param>
            <remarks>The primitive value should not be an instance of ODataValue.</remarks>
        </member>
        <member name="P:Microsoft.OData.ODataPrimitiveValue.Value">
            <summary>
            Gets the underlying CLR object wrapped by this <see cref="T:Microsoft.OData.ODataPrimitiveValue"/>.
            </summary>
            <value> The underlying primitive CLR value. </value>
        </member>
        <member name="T:Microsoft.OData.ODataProperty">
            <summary>
            Represents a single property of a resource.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataProperty.odataValue">
            <summary>
            The value of this property, accessed and set by both <seealso cref="P:Microsoft.OData.ODataProperty.Value"/> and <seealso cref="P:Microsoft.OData.ODataProperty.ODataValue"/>.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataProperty.serializationInfo">
            <summary>
            Provides additional serialization information to the <see cref="T:Microsoft.OData.ODataWriter"/> for this <see cref="T:Microsoft.OData.ODataProperty"/>.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataProperty.Name">
            <summary>Gets or sets the property name.</summary>
            <returns>The property name.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataProperty.Value">
            <summary>Gets or sets the property value.</summary>
            <returns>The property value.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataProperty.InstanceAnnotations">
            <summary>
            Collection of custom instance annotations.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataProperty.ODataValue">
            <summary>
            Property value, represented as an ODataValue.
            </summary>
            <remarks>
            This value is the same as <see cref="P:Microsoft.OData.ODataProperty.Value"/>, except that primitive types are wrapped
            in an instance of ODataPrimitiveValue, and null values are represented by an instance of ODataNullValue.
            </remarks>
        </member>
        <member name="P:Microsoft.OData.ODataProperty.SerializationInfo">
            <summary>
            Provides additional serialization information to the <see cref="T:Microsoft.OData.ODataWriter"/> for this <see cref="T:Microsoft.OData.ODataProperty"/>.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataPropertyKind">
            <summary>
            The enum of property kinds.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPropertyKind.Unspecified">
            <summary>
            Unspecified property kind or if the property is not a key property, an etag property or an open property.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPropertyKind.Key">
            <summary>
            The property is a key property.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPropertyKind.ETag">
            <summary>
            The property is an etag property
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataPropertyKind.Open">
            <summary>
            The property is an open property
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataPropertySerializationInfo">
            <summary>
            Class to provide additional serialization information to the <see cref="T:Microsoft.OData.ODataWriter"/> for an <see cref="T:Microsoft.OData.ODataProperty"/>.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataPropertySerializationInfo.PropertyKind">
            <summary>
            The kind of the property
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataRawInputContext">
            <summary>
            Implementation of the OData input for RAW OData format (raw value and batch).
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataRawInputContext.Encoding">
            <summary>The encoding to use to read from the batch stream.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataRawInputContext.BufferSize">
            <summary>Use a buffer size of 4k that is read from the stream at a time.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataRawInputContext.readerPayloadKind">
            <summary>The <see cref="T:Microsoft.OData.ODataPayloadKind"/> to read.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataRawInputContext.stream">
            <summary>The input stream to read the data from.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataRawInputContext.textReader">
            <summary>The text reader to read non-binary values from.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataRawInputContext.#ctor(Microsoft.OData.ODataFormat,Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>Constructor.</summary>
            <param name="format">The format for this input context.</param>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageReaderSettings">Configuration settings of the OData reader.</param>
        </member>
        <member name="P:Microsoft.OData.ODataRawInputContext.Stream">
            <summary>
            The stream of the raw input context.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataRawInputContext.CreateAsynchronousReader">
            <summary>
            Create an <see cref="T:Microsoft.OData.ODataAsynchronousReader"/>.
            </summary>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataAsynchronousReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawInputContext.CreateAsynchronousReaderAsync">
            <summary>
            Asynchronously create an <see cref="T:Microsoft.OData.ODataAsynchronousReader"/>.
            </summary>
            <returns>Task which when completed returns the newly created <see cref="T:Microsoft.OData.ODataAsynchronousReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawInputContext.ReadValue(Microsoft.OData.Edm.IEdmPrimitiveTypeReference)">
            <summary>
            Read a top-level value.
            </summary>
            <param name="expectedPrimitiveTypeReference">The expected primitive type for the value to be read; null if no expected type is available.</param>
            <returns>An <see cref="T:System.Object"/> representing the read value.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawInputContext.ReadValueAsync(Microsoft.OData.Edm.IEdmPrimitiveTypeReference)">
            <summary>
            Asynchronously read a top-level value.
            </summary>
            <param name="expectedPrimitiveTypeReference">The expected type reference for the value to be read; null if no expected type is available.</param>
            <returns>Task which when completed returns an <see cref="T:System.Object"/> representing the read value.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawInputContext.Dispose(System.Boolean)">
            <summary>
            Perform the actual cleanup work.
            </summary>
            <param name="disposing">If 'true' this method is called from user code; if 'false' it is called by the runtime.</param>
        </member>
        <member name="M:Microsoft.OData.ODataRawInputContext.CreateAsynchronousReaderImplementation">
            <summary>
            Create a <see cref="T:Microsoft.OData.ODataAsynchronousReader"/>.
            </summary>
            <returns>The newly created <see cref="T:Microsoft.OData.ODataAsynchronousReader"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawInputContext.ReadValueImplementation(Microsoft.OData.Edm.IEdmPrimitiveTypeReference)">
            <summary>
            Read a top-level value.
            </summary>
            <param name="expectedPrimitiveTypeReference">The expected primitive type for the value to be read; null if no expected type is available.</param>
            <returns>An <see cref="T:System.Object"/> representing the read value.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawInputContext.ReadBinaryValue">
            <summary>
            Read the binary value from the stream.
            </summary>
            <returns>A byte array containing all the data read.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawInputContext.ReadRawValue(Microsoft.OData.Edm.IEdmPrimitiveTypeReference)">
            <summary>
            Reads the content of a text reader as string and, if <paramref name="expectedPrimitiveTypeReference"/> is specified and primitive type conversion
            is enabled, converts the string to the expected type.
            </summary>
            <param name="expectedPrimitiveTypeReference">The expected type of the value being read or null if no type conversion should be performed.</param>
            <returns>The raw value that was read from the text reader either as string or converted to the provided <paramref name="expectedPrimitiveTypeReference"/>.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataRawOutputContext">
            <summary>
            RAW format output context. Used by RAW values and batch.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataRawOutputContext.encoding">
            <summary>The encoding to use for the output.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataRawOutputContext.outputInStreamErrorListener">
            <summary>Listener to notify when writing in-stream errors.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataRawOutputContext.messageOutputStream">
            <summary>The message output stream.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataRawOutputContext.asynchronousOutputStream">
            <summary>The asynchronous output stream if we're writing asynchronously.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataRawOutputContext.outputStream">
            <summary>The output stream to write to (both sync and async cases).</summary>
        </member>
        <member name="F:Microsoft.OData.ODataRawOutputContext.rawValueWriter">
            <summary>RawValueWriter used to write actual values to the stream.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataRawOutputContext.#ctor(Microsoft.OData.ODataFormat,Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageWriterSettings)">
            <summary>
            Constructor.
            </summary>
            <param name="format">The format for this output context.</param>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageWriterSettings">Configuration settings of the OData writer.</param>
        </member>
        <member name="P:Microsoft.OData.ODataRawOutputContext.OutputStream">
            <summary>
            The output stream to write the payload to.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataRawOutputContext.TextWriter">
             <summary>
             The text writer to use to write text into the payload.
             </summary>
             <remarks>
             InitializeRawValueWriter must be called before this is used.
             
             Also, within this class we should be using RawValueWriter for everything. Ideally we wouldn't leak the TextWriter out, but
             the Batch writer needs it at the moment.
             </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataRawOutputContext.Flush">
            <summary>
            Synchronously flush the writer.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataRawOutputContext.FlushAsync">
            <summary>
            Asynchronously flush the writer.
            </summary>
            <returns>Task which represents the pending flush operation.</returns>
            <remarks>The method should not throw directly if the flush operation itself fails, it should instead return a faulted task.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataRawOutputContext.WriteInStreamError(Microsoft.OData.ODataError,System.Boolean)">
            <summary>
            Writes an <see cref="T:Microsoft.OData.ODataError"/> into the message payload.
            </summary>
            <param name="error">The error to write.</param>
            <param name="includeDebugInformation">
            A flag indicating whether debug information (e.g., the inner error from the <paramref name="error"/>) should
            be included in the payload. This should only be used in debug scenarios.
            </param>
            <remarks>
            This method is called if the ODataMessageWriter.WriteError is called once some other
            write operation has already started.
            The method should write the in-stream error representation for the specific format into the current payload.
            Before the method is called no flush is performed on the output context or any active writer.
            It is the responsibility of this method to flush the output before the method returns.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataRawOutputContext.WriteInStreamErrorAsync(Microsoft.OData.ODataError,System.Boolean)">
            <summary>
            Writes an <see cref="T:Microsoft.OData.ODataError"/> into the message payload.
            </summary>
            <param name="error">The error to write.</param>
            <param name="includeDebugInformation">
            A flag indicating whether debug information (e.g., the inner error from the <paramref name="error"/>) should
            be included in the payload. This should only be used in debug scenarios.
            </param>
            <returns>Task which represents the pending write operation.</returns>
            <remarks>
            This method is called if the ODataMessageWriter.WriteError is called once some other
            write operation has already started.
            The method should write the in-stream error representation for the specific format into the current payload.
            Before the method is called no flush is performed on the output context or any active writer.
            It is the responsibility of this method to make sure that all the data up to this point are written before
            the in-stream error is written.
            It is the responsibility of this method to flush the output before the task finishes.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataRawOutputContext.CreateODataAsynchronousWriter">
            <summary>
            Creates an <see cref="T:Microsoft.OData.ODataAsynchronousWriter" /> to write an async response.
            </summary>
            <returns>The created writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataRawOutputContext.CreateODataAsynchronousWriterAsync">
            <summary>
            Asynchronously creates an <see cref="T:Microsoft.OData.ODataAsynchronousWriter" /> to write an async response.
            </summary>
            <returns>A running task for the created writer.</returns>
            <remarks>The write must flush the output when it's finished (inside the last Write call).</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataRawOutputContext.WriteValue(System.Object)">
            <summary>
            Writes a single value as the message body.
            </summary>
            <param name="value">The value to write.</param>
            <remarks>It is the responsibility of this method to flush the output before the method returns.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataRawOutputContext.WriteValueAsync(System.Object)">
            <summary>
            Asynchronously writes a single value as the message body.
            </summary>
            <param name="value">The value to write.</param>
            <returns>A running task representing the writing of the value.</returns>
            <remarks>It is the responsibility of this method to flush the output before the task finishes.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataRawOutputContext.InitializeRawValueWriter">
            <summary>
            Initialized a new text writer over the message payload stream.
            </summary>
            <remarks>This can only be called if the text writer was not yet initialized or it has been closed.
            It can be called several times with CloseWriter calls in between though.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataRawOutputContext.CloseWriter">
            <summary>
            Closes the text writer.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataRawOutputContext.VerifyNotDisposed">
            <summary>
            Verifies the output context was not yet disposed, fails otherwise.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataRawOutputContext.FlushBuffers">
            <summary>
            Flushes all buffered data to the underlying stream synchronously.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataRawOutputContext.FlushBuffersAsync">
            <summary>
            Flushes all buffered data to the underlying stream asynchronously.
            </summary>
            <returns>Task which represents the pending operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawOutputContext.Dispose(System.Boolean)">
            <summary>
            Perform the actual cleanup work.
            </summary>
            <param name="disposing">If 'true' this method is called from user code; if 'false' it is called by the runtime.</param>
        </member>
        <member name="M:Microsoft.OData.ODataRawOutputContext.WriteValueImplementation(System.Object)">
            <summary>
            Writes a single value as the message body.
            </summary>
            <param name="value">The value to write.</param>
            <remarks>Once the method returns all the data should be written, the only other call after this will be Dispose on the output context.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataRawOutputContext.CreateODataAsynchronousWriterImplementation">
            <summary>
            Creates an async writer.
            </summary>
            <returns>The newly created async writer.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataRawValueConverter">
            <summary>
            Helper to convert values to strings compliant to the raw value format
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataRawValueConverter.RawValueTrueLiteral">
            <summary>'true' literal</summary>
        </member>
        <member name="F:Microsoft.OData.ODataRawValueConverter.RawValueFalseLiteral">
            <summary>'false' literal</summary>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueConverter.ToString(System.Boolean)">
            <summary>
            Converts a boolean to the corresponding raw value string representation.
            </summary>
            <param name="b">The boolean value to convert.</param>
            <returns>The raw value strings representing boolean literals.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueConverter.ToString(System.Byte)">
            <summary>
            Converts a byte to the corresponding raw value string representation.
            </summary>
            <param name="b">The byte value to convert.</param>
            <returns>The raw value strings representing the byte value.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueConverter.ToString(System.Decimal)">
            <summary>
            Converts a decimal to the corresponding raw value string representation.
            </summary>
            <param name="d">The decimal value to convert.</param>
            <returns>The raw value strings representing the decimal value.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueConverter.ToString(System.DateTimeOffset)">
            <summary>
            Converts the given DateTimeOffset value to string appropriate for raw value format.
            </summary>
            <param name="dateTime">Given DateTimeOffset value.</param>
            <returns>raw value format string representation of <paramref name="dateTime"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueConverter.ToString(System.TimeSpan)">
            <summary>
            Converts the given timespan value to the string appropriate for raw value format
            </summary>
            <param name="ts">The timespan value to convert.</param>
            <returns>The string version of the timespan value in raw value format.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueConverter.ToString(System.Double)">
            <summary>
            Converts the given double value to the string appropriate for raw value format
            </summary>
            <param name="d">The double value to convert.</param>
            <returns>The string version of the double value in raw value format.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueConverter.ToString(System.Int16)">
            <summary>
            Converts the given Int16 value to the string appropriate for raw value format
            </summary>
            <param name="i">The Int16 value to convert.</param>
            <returns>The string version of the Int16 value in raw value format.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueConverter.ToString(System.Int32)">
            <summary>
            Converts the given Int32 value to the string appropriate for raw value format.
            </summary>
            <param name="i">The Int32 value to convert.</param>
            <returns>The string version of the Int32 in raw value format.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueConverter.ToString(System.Int64)">
            <summary>
            Converts the given Int64 value to the string appropriate for raw value format.
            </summary>
            <param name="i">The Int64 value to convert.</param>
            <returns>The string version of the Int64 in raw value format.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueConverter.ToString(System.SByte)">
            <summary>
            Converts the given SByte value to the string appropriate for raw value format.
            </summary>
            <param name="sb">The SByte value to convert.</param>
            <returns>The string version of the SByte in raw value format.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueConverter.ToString(System.Byte[])">
            <summary>
            Converts the given byte array value to the string appropriate for raw value format.
            </summary>
            <param name="bytes">The byte array to convert.</param>
            <returns>The string version of the byte array in raw value format.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueConverter.ToString(System.Single)">
            <summary>
            Converts the given Single value to the string appropriate for raw value format.
            </summary>
            <param name="s">The Single value to convert.</param>
            <returns>The string version of the Single in raw value format.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueConverter.ToString(System.Guid)">
            <summary>
            Converts the given Guid value to the string appropriate for raw value format.
            </summary>
            <param name="guid">The Guid value to convert.</param>
            <returns>The string version of the Guid in raw value format.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueConverter.ToString(Microsoft.OData.Edm.Date)">
            <summary>
            Converts the given Date value to the string appropriate for raw value format.
            </summary>
            <param name="date">The Date value to convert.</param>
            <returns>The string version of the Date in raw value format.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueConverter.ToString(Microsoft.OData.Edm.TimeOfDay)">
            <summary>
            Converts the given TimeOfDay value to the string appropriate for raw value format.
            </summary>
            <param name="time">The TimeOfDay value to convert.</param>
            <returns>The string version of the TimeOfDay in raw value format</returns>
        </member>
        <member name="T:Microsoft.OData.ODataRawValueFormat">
            <summary>
            The RAW OData format.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueFormat.ToString">
            <summary>
            The text representation - the name of the format.
            </summary>
            <returns>The name of the format.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueFormat.DetectPayloadKind(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Detects the payload kinds supported by this format for the specified message payload.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="settings">Configuration settings of the OData reader.</param>
            <returns>The set of <see cref="T:Microsoft.OData.ODataPayloadKind"/>s that are supported with the specified payload.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueFormat.CreateInputContext(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Creates an instance of the input context for this format.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageReaderSettings">Configuration settings of the OData reader.</param>
            <returns>The newly created input context.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueFormat.CreateOutputContext(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageWriterSettings)">
            <summary>
            Creates an instance of the output context for this format.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageWriterSettings">Configuration settings of the OData writer.</param>
            <returns>The newly created output context.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueFormat.DetectPayloadKindAsync(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Asynchronously detects the payload kinds supported by this format for the specified message payload.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="settings">Configuration settings of the OData reader.</param>
            <returns>A task that when completed returns the set of <see cref="T:Microsoft.OData.ODataPayloadKind"/>s
            that are supported with the specified payload.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueFormat.CreateInputContextAsync(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Asynchronously creates an instance of the input context for this format.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageReaderSettings">Configuration settings of the OData reader.</param>
            <returns>Task which when completed returned the newly created input context.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueFormat.CreateOutputContextAsync(Microsoft.OData.ODataMessageInfo,Microsoft.OData.ODataMessageWriterSettings)">
            <summary>
            Creates an instance of the output context for this format.
            </summary>
            <param name="messageInfo">The context information for the message.</param>
            <param name="messageWriterSettings">Configuration settings of the OData writer.</param>
            <returns>Task which represents the pending create operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueFormat.DetectPayloadKindImplementation(Microsoft.OData.ODataMediaType)">
            <summary>
            Detects the payload kind(s) from the message stream.
            </summary>
            <param name="contentType">The content type of the message.</param>
            <returns>An enumerable of zero, one or more payload kinds that were detected from looking at the payload in the message stream.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataRawValueUtils">
            <summary>
            Utility methods around writing of raw values.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataRawValueUtils.XmlWhitespaceChars">
            <summary>The characters that are considered to be whitespace by XmlConvert.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueUtils.TryConvertPrimitiveToString(System.Object,System.String@)">
            <summary>Converts the specified value to a serializable string in ATOM format.</summary>
            <param name="value">Non-null value to convert.</param>
            <param name="result">The specified value converted to an ATOM string.</param>
            <returns>boolean value indicating conversion successful conversion</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueUtils.ConvertStringToPrimitive(System.String,Microsoft.OData.Edm.IEdmPrimitiveTypeReference)">
            <summary>
            Converts a string to a primitive value.
            </summary>
            <param name="text">The string text to convert.</param>
            <param name="targetTypeReference">Type to convert the string to.</param>
            <returns>The value converted to the target type.</returns>
            <remarks>This method does not convert null value.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataRawValueUtils.ConvertXmlBooleanValue(System.String)">
            <summary>
            Reimplementation of XmlConvert.ToBoolean that accepts 'True' and 'False' in addition
            to 'true' and 'false'.
            </summary>
            <param name="text">The string value read from the Xml reader.</param>
            <returns>The converted boolean value.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataReader">
            <summary>
            Base class for OData readers.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReader.State">
            <summary>Gets the current state of the reader. </summary>
            <returns>The current state of the reader.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataReader.Item">
            <summary>Gets the most recent <see cref="T:Microsoft.OData.ODataItem" /> that has been read. </summary>
            <returns>The most recent <see cref="T:Microsoft.OData.ODataItem" /> that has been read.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReader.Read">
            <summary> Reads the next <see cref="T:Microsoft.OData.ODataItem" /> from the message payload. </summary>
            <returns>true if more items were read; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReader.ReadAsync">
            <summary> Asynchronously reads the next <see cref="T:Microsoft.OData.ODataItem" /> from the message payload. </summary>
            <returns>A task that when completed indicates whether more items were read.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataReaderCore">
            <summary>
            Base class for OData readers that verifies a proper sequence of read calls on the reader.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataReaderCore.inputContext">
            <summary>The input to read the payload from.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataReaderCore.readingResourceSet">
            <summary>true if the reader is created for reading a resource set; false when it is created for reading a resource.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataReaderCore.readingDelta">
            <summary>true if the reader is created for reading expanded navigation property in delta response; false otherwise.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataReaderCore.scopes">
            <summary>Stack of reader scopes to keep track of the current context of the reader.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataReaderCore.listener">
            <summary>If not null, the reader will notify the implementer of the interface of relevant state changes in the reader.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataReaderCore.currentResourceDepth">
            <summary>The number of entries which have been started but not yet ended.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.#ctor(Microsoft.OData.ODataInputContext,System.Boolean,System.Boolean,Microsoft.OData.IODataReaderWriterListener)">
            <summary>
            Constructor.
            </summary>
            <param name="inputContext">The input to read the payload from.</param>
            <param name="readingResourceSet">true if the reader is created for reading a resource set; false when it is created for reading a resource.</param>
            <param name="readingDelta">true if the reader is created for reading expanded navigation property in delta response; false otherwise.</param>
            <param name="listener">If not null, the reader will notify the implementer of the interface of relevant state changes in the reader.</param>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.State">
            <summary>
            The current state of the reader.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.Item">
            <summary>
            The most recent <see cref="T:Microsoft.OData.ODataItem"/> that has been read.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.Version">
            <summary>
            OData Version being read.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.CurrentResourceSet">
            <summary>
            Returns the current item as <see cref="T:Microsoft.OData.ODataResourceSet"/>. Must only be called if the item actually is a resource set.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.CurrentDeltaResourceSet">
            <summary>
            Returns the current item as <see cref="T:Microsoft.OData.ODataDeltaResourceSet"/>. Must only be called if the item actually is a delta resource set.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.CurrentDeltaLink">
            <summary>
            Returns the current item as ODataDeltaLink
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.CurrentDeltaDeletedLink">
            <summary>
            Returns the current item as ODataDeltaDeletedLink.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.CurrentResourceDepth">
            <summary>
            Returns the current resource depth.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.CurrentNestedResourceInfo">
            <summary>
            Returns the current item as <see cref="T:Microsoft.OData.ODataNestedResourceInfo"/>. Must only be called if the item actually is a nested resource info.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.CurrentEntityReferenceLink">
            <summary>
            Returns the current item as <see cref="T:Microsoft.OData.ODataEntityReferenceLink"/>. Must only be called if the item actually is an entity reference link.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.CurrentResourceType">
            <summary>
            Returns the expected resource type for the current scope.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.CurrentNavigationSource">
            <summary>
            Returns the navigation source for the current scope.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.CurrentScope">
            <summary>
            Returns the current scope.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.ParentScope">
            <summary>
            Returns the parent scope.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.IsTopLevel">
            <summary>
            A flag indicating whether the reader is at the top level.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.ExpandedLinkContentParentScope">
            <summary>
            If the current scope is a content of an expanded link, this returns the parent nested resource info scope, otherwise null.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.IsExpandedLinkContent">
            <summary>
            True if we are reading a resource or resource set that is the direct content of an expanded link. Otherwise false.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.ReadingResourceSet">
            <summary>
            Set to true if a resource set is being read.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.ReadingDelta">
            <summary>
            Set to true if a delta response is being read.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.IsReadingNestedPayload">
            <summary>
            Returns true if we are reading a nested payload,
            e.g. an expanded resource or resource set within a delta payload,
            or a resource or a resource set within a parameters payload.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.CurrentResourceSetValidator">
            <summary>
            Validator to validate consistency of entries in top-level resource sets.
            </summary>
            <remarks>We only use this for top-level resource sets since we support collection validation for
            resource sets only when metadata is available and in these cases we already validate the
            types of the entries in nested resource sets.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.Read">
            <summary>
            Reads the next <see cref="T:Microsoft.OData.ODataItem"/> from the message payload.
            </summary>
            <returns>true if more items were read; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.ReadAsync">
            <summary>
            Asynchronously reads the next <see cref="T:Microsoft.OData.ODataItem"/> from the message payload.
            </summary>
            <returns>A task that when completed indicates whether more items were read.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.SeekScope``1(System.Int32)">
            <summary>
            Seek scope in the stack which is type of <typeparamref name="T"/>.
            </summary>
            <typeparam name="T">The type of scope to seek.</typeparam>
            <param name="maxDepth">The max depth to seek.</param>
            <returns>The scope with type of <typeparamref name="T"/></returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.ReadAtStartImplementation">
            <summary>
            Implementation of the reader logic when in state 'Start'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.ReadAtResourceSetStartImplementation">
            <summary>
            Implementation of the reader logic when in state 'ResourceSetStart'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.ReadAtResourceSetEndImplementation">
            <summary>
            Implementation of the reader logic when in state 'ResourceSetEnd'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.ReadAtResourceStartImplementation">
            <summary>
            Implementation of the reader logic when in state 'EntryStart'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.ReadAtResourceEndImplementation">
            <summary>
            Implementation of the reader logic when in state 'EntryEnd'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.ReadAtPrimitiveImplementation">
            <summary>
            Implementation of the reader logic when in state 'Primitive'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.ReadAtNestedResourceInfoStartImplementation">
            <summary>
            Implementation of the reader logic when in state 'NestedResourceInfoStart'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.ReadAtNestedResourceInfoEndImplementation">
            <summary>
            Implementation of the reader logic when in state 'NestedResourceInfoEnd'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.ReadAtEntityReferenceLink">
            <summary>
            Implementation of the reader logic when in state 'EntityReferenceLink'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.ReadAtDeltaResourceSetStartImplementation">
            <summary>
            Implementation of the reader logic when in state 'DeltaResourceSetStart'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.ReadAtDeltaResourceSetEndImplementation">
            <summary>
            Implementation of the reader logic when in state 'DeltaResourceSetEnd'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.ReadAtDeletedResourceStartImplementation">
            <summary>
            Implementation of the reader logic when in state 'DeletedResourceStart'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.ReadAtDeletedResourceEndImplementation">
            <summary>
            Implementation of the reader logic when in state 'DeletedResourceEnd'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.ReadAtDeltaLinkImplementation">
            <summary>
            Implementation of the reader logic when in state 'DeltaLink'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.ReadAtDeltaDeletedLinkImplementation">
            <summary>
            Implementation of the reader logic when in state 'DeltaDeletedLink'.
            </summary>
            <returns>true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.EnterScope(Microsoft.OData.ODataReaderCore.Scope)">
            <summary>
            Pushes the <paramref name="scope"/> on the stack of scopes.
            </summary>
            <param name="scope">The scope to enter.</param>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.ReplaceScope(Microsoft.OData.ODataReaderCore.Scope)">
            <summary>
            Replaces the current scope with the specified <paramref name="scope"/>.
            </summary>
            <param name="scope">The scope to replace the current scope with.</param>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.PopScope(Microsoft.OData.ODataReaderState)">
            <summary>
            Removes the current scope from the stack of all scopes.
            </summary>
            <param name="state">The expected state of the current scope (to be popped).</param>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.EndEntry(Microsoft.OData.ODataReaderCore.Scope)">
            <summary>
            Called to transition into the EntryEnd state.
            </summary>
            <param name="scope">The scope for the EntryEnd state.</param>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.ApplyResourceTypeNameFromPayload(System.String)">
            <summary>
            If an entity type name is found in the payload this method is called to apply it to the current scope.
            This method should be called even if the type name was not found in which case a null should be passed in.
            The method validates that some type will be available as the current entity type after it returns (if we are parsing using metadata).
            </summary>
            <param name="resourceTypeNameFromPayload">The entity type name found in the payload or null if no type was specified in the payload.</param>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.ReadSynchronously">
            <summary>
            Reads the next <see cref="T:Microsoft.OData.ODataItem"/> from the message payload.
            </summary>
            <returns>true if more items were read; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.ReadAsynchronously">
            <summary>
            Asynchronously reads the next <see cref="T:Microsoft.OData.ODataItem"/> from the message payload.
            </summary>
            <returns>A task that when completed indicates whether more items were read.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.IncreaseResourceDepth">
            <summary>
            Increments the nested resource count by one and fails if the new value exceeds the maxiumum nested resource depth limit.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.DecreaseResourceDepth">
            <summary>
            Decrements the nested resource count by one.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.ReadImplementation">
            <summary>
            Reads the next <see cref="T:Microsoft.OData.ODataItem"/> from the message payload.
            </summary>
            <returns>true if more items were read; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.InterceptException``1(System.Func{``0})">
            <summary>
            Catch any exception thrown by the action passed in; in the exception case move the reader into
            state ExceptionThrown and then rethrow the exception.
            </summary>
            <typeparam name="T">The type returned from the <paramref name="action"/> to execute.</typeparam>
            <param name="action">The action to execute.</param>
            <returns>The result of executing the <paramref name="action"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.VerifyCanRead(System.Boolean)">
            <summary>
            Verifies that calling Read is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.VerifyCallAllowed(System.Boolean)">
            <summary>
            Verifies that a call is allowed to the reader.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="T:Microsoft.OData.ODataReaderCore.Scope">
            <summary>
            A reader scope; keeping track of the current reader state and an item associated with this state.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataReaderCore.Scope.state">
            <summary>The reader state of this scope.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataReaderCore.Scope.item">
            <summary>The item attached to this scope.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataReaderCore.Scope.odataUri">
            <summary>The odataUri parsed based on the context uri attached to this scope.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataReaderCore.Scope.resourceTypeValidator">
            <summary>
            The <see cref="T:Microsoft.OData.ResourceSetWithoutExpectedTypeValidator"/> to use for entries in this resourceSet.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCore.Scope.#ctor(Microsoft.OData.ODataReaderState,Microsoft.OData.ODataItem,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.ODataUri)">
            <summary>
            Constructor creating a new reader scope.
            </summary>
            <param name="state">The reader state of this scope.</param>
            <param name="item">The item attached to this scope.</param>
            <param name="navigationSource">The navigation source we are going to read entities for.</param>
            <param name="expectedResourceType">The expected resource type for the scope.</param>
            <param name="odataUri">The odataUri parsed based on the context uri for current scope</param>
            <remarks>The <paramref name="expectedResourceType"/> has the following meanings for given state:
            Start - it's the expected base type of the top-level resource or resources in the top-level resource set.
            ResourceSetStart - it's the expected base type of the resources in the resource set.
                                  note that it might be a more derived type than the base type of the entity set for the resource set.
            EntryStart - it's the expected base type of the resource. If the resource has no type name specified
                                  this type will be assumed. Otherwise the specified type name must be
                                  the expected type or a more derived type.
            NestedResourceInfoStart - it's the expected base type the entries in the expanded link (either the single resource
                                  or entries in the expanded resource set).
            EntityReferenceLink - it's null, no need for types on entity reference links.
            In all cases the specified type must be an structured type.</remarks>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.Scope.State">
            <summary>
            The reader state of this scope.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.Scope.Item">
            <summary>
            The item attached to this scope.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.Scope.ODataUri">
            <summary>
            The odataUri parsed based on the context url to this scope.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.Scope.NavigationSource">
            <summary>
            The navigation source we are reading entries from (possibly null).
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.Scope.ResourceType">
            <summary>
            The resource type for this scope. Can be either the expected one if the real one
            was not found yet, or the one specified in the payload itself (the real one).
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataReaderCore.Scope.ResourceTypeValidator">
            <summary>
            Validator for resource type.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataReaderCoreAsync">
            <summary>
            Base class for OData readers that verifies a proper sequence of read calls on the reader with true async operations.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCoreAsync.#ctor(Microsoft.OData.ODataInputContext,System.Boolean,System.Boolean,Microsoft.OData.IODataReaderWriterListener)">
            <summary>
            Constructor.
            </summary>
            <param name="inputContext">The input to read the payload from.</param>
            <param name="readingResourceSet">true if the reader is created for reading a resource set; false when it is created for reading a resource.</param>
            <param name="readingDelta">true if the reader is created for reading expanded navigation property in delta response; false otherwise.</param>
            <param name="listener">If not null, the reader will notify the implementer of the interface of relevant state changes in the reader.</param>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCoreAsync.ReadAtStartImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'Start'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCoreAsync.ReadAtResourceSetStartImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'ResourceSetStart'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCoreAsync.ReadAtResourceSetEndImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'ResourceSetEnd'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCoreAsync.ReadAtResourceStartImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'EntryStart'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCoreAsync.ReadAtResourceEndImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'EntryEnd'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCoreAsync.ReadAtDeletedResourceEndImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'DeletedResourceEnd'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCoreAsync.ReadAtPrimitiveImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'Primitive'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCoreAsync.ReadAtNestedResourceInfoStartImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'NestedResourceInfoStart'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCoreAsync.ReadAtNestedResourceInfoEndImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'NestedResourceInfoEnd'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCoreAsync.ReadAtEntityReferenceLinkAsync">
            <summary>
            Implementation of the reader logic when in state 'EntityReferenceLink'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCoreAsync.ReadAtDeltaResourceSetStartImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'DeltaResourceSetStart'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCoreAsync.ReadAtDeltaResourceSetEndImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'DeltaResourceSetEnd'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCoreAsync.ReadAtDeletedResourceStartImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'DeletedResourceStart'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCoreAsync.ReadDeletedResourceEndImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'DeletedResourceEnd'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCoreAsync.ReadAtDeltaLinkImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'DeltaLink'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCoreAsync.ReadAtDeltaDeletedLinkImplementationAsync">
            <summary>
            Implementation of the reader logic when in state 'DeltaDeletedLink'.
            </summary>
            <returns>A task which returns true if more items can be read from the reader; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataReaderCoreAsync.ReadAsynchronously">
            <summary>
            Asynchronously reads the next <see cref="T:Microsoft.OData.ODataItem"/> from the message payload.
            </summary>
            <returns>A task that when completed indicates whether more items were read.</returns>
            <remarks>The base class already implements this but only for fully synchronous readers, the implementation here
            allows fully asynchronous readers.</remarks>
        </member>
        <member name="T:Microsoft.OData.ODataReaderState">
            <summary>
            Enumeration of all possible states of an <see cref="T:Microsoft.OData.ODataReader" />.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataReaderState.Start">
            <summary>The reader is at the start; nothing has been read yet.</summary>
            <remarks>In this state the Item property of the <see cref="T:Microsoft.OData.ODataReader"/> returns null.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataReaderState.ResourceSetStart">
            <summary>The start of a resource set has been read.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataReader"/> returns
            an <see cref="T:Microsoft.OData.ODataResourceSet"/> but no properties may be filled in until the ResourceSetEnd state is reached.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataReaderState.ResourceSetEnd">
            <summary>The end of a resource set has been read.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataReader"/> returns
            an <see cref="T:Microsoft.OData.ODataResourceSet"/> with all properties filled in.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataReaderState.ResourceStart">
            <summary>The start of a resource has been read.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataReader"/> returns
            an <see cref="T:Microsoft.OData.ODataResource"/> but no properties may be filled in until the EntryEnd state is reached.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataReaderState.ResourceEnd">
            <summary>The end of a resource has been read.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataReader"/> returns
            an <see cref="T:Microsoft.OData.ODataResource"/> with all properties filled in.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataReaderState.NestedResourceInfoStart">
            <summary>The start of a nested resource info has been read.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataReader"/> returns
            an <see cref="T:Microsoft.OData.ODataNestedResourceInfo"/> but no properties may be filled in until the LinkEnd state is reached.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataReaderState.NestedResourceInfoEnd">
            <summary>The end of a nested resource info has been read.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataReader"/> returns
            an <see cref="T:Microsoft.OData.ODataNestedResourceInfo"/> with all properties filled in.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataReaderState.EntityReferenceLink">
            <summary>An entity reference link was read.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataReader"/> returns
            an <see cref="T:Microsoft.OData.ODataEntityReferenceLink"/> which is fully populated.
            Note that there's no End state for this item.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataReaderState.Exception">
            <summary>The reader has thrown an exception; nothing can be read from the reader anymore.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataReader"/> returns null.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataReaderState.Completed">
            <summary>The reader has completed; nothing can be read anymore.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataReader"/> returns null.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataReaderState.Primitive">
            <summary>The reader is positioned on a non-null primivite value within an untyped collection.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataReader"/> returns
            an <see cref="T:Microsoft.OData.ODataPrimitiveValue"/>.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataReaderState.DeltaResourceSetStart">
            <summary>The start of a delta resource set has been read.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataReader"/> returns
            an <see cref="T:Microsoft.OData.ODataDeltaResourceSet"/>.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataReaderState.DeltaResourceSetEnd">
            <summary>The end of a delta resource set has been read.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataReader"/> returns
            an <see cref="T:Microsoft.OData.ODataDeltaResourceSet"/>.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataReaderState.DeletedResourceStart">
            <summary>The start of a deleted resource has been read.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataReader"/> returns
            an <see cref="T:Microsoft.OData.ODataDeletedResource"/>.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataReaderState.DeletedResourceEnd">
            <summary>The end of a deleted resource has been read.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataReader"/> returns
            an <see cref="T:Microsoft.OData.ODataDeletedResource"/>.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataReaderState.DeltaLink">
            <summary>The reder is positioned on a delta link.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataReader"/> returns
            an <see cref="T:Microsoft.OData.ODataDeltaLink"/>.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataReaderState.DeltaDeletedLink">
            <summary>The reader is positioned on a delta deleted link.</summary>
            <remarks>
            In this state the Item property of the <see cref="T:Microsoft.OData.ODataReader"/> returns
            an <see cref="T:Microsoft.OData.ODataDeltaDeletedLink"/>.
            </remarks>
        </member>
        <member name="T:Microsoft.OData.ODataRequestMessage">
            <summary>
            Wrapper class around an IODataRequestMessageAsync to isolate our code from the interface implementation.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataRequestMessage.requestMessage">
            <summary>The request message this class is wrapping.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataRequestMessage.#ctor(Microsoft.OData.IODataRequestMessage,System.Boolean,System.Boolean,System.Int64)">
            <summary>
            Constructs an internal wrapper around the <paramref name="requestMessage"/>
            that isolates the internal implementation of the ODataLib from the interface.
            </summary>
            <param name="requestMessage">The request message to wrap.</param>
            <param name="writing">true if the request message is being written; false when it is read.</param>
            <param name="enableMessageStreamDisposal">true if the stream returned should be disposed calls.</param>
            <param name="maxMessageSize">The maximum size of the message in bytes (or a negative value if no maximum applies).</param>
        </member>
        <member name="P:Microsoft.OData.ODataRequestMessage.Url">
            <summary>
            The request Url for this request message.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataRequestMessage.Method">
            <summary>
            The HTTP method used for this request message.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataRequestMessage.Headers">
            <summary>
            Returns an enumerable over all the headers for this message.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataRequestMessage.GetHeader(System.String)">
            <summary>
            Returns a value of an HTTP header.
            </summary>
            <param name="headerName">The name of the header to get.</param>
            <returns>The value of the HTTP header, or null if no such header was present on the message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRequestMessage.SetHeader(System.String,System.String)">
            <summary>
            Sets the value of an HTTP header.
            </summary>
            <param name="headerName">The name of the header to set.</param>
            <param name="headerValue">The value of the HTTP header or 'null' if the header should be removed.</param>
        </member>
        <member name="M:Microsoft.OData.ODataRequestMessage.GetStream">
            <summary>
            Synchronously get the stream backing this message.
            </summary>
            <returns>The stream for this message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRequestMessage.GetStreamAsync">
            <summary>
            Asynchronously get the stream backing this message.
            </summary>
            <returns>The stream for this message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataRequestMessage.QueryInterface``1">
            <summary>
            Queries the message for the specified interface type.
            </summary>
            <typeparam name="TInterface">The type of the interface to query for.</typeparam>
            <returns>The instance of the interface asked for or null if it was not implemented by the message.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataResource">
            <summary>
            Represents a single entity.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResource.SerializationInfo">
            <summary>
            Provides additional serialization information to the <see cref="T:Microsoft.OData.ODataWriter"/> for this <see cref="T:Microsoft.OData.ODataResource"/>.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataResourceBase">
            <summary>
            Base class for a resource or deleted resource.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceBase.metadataBuilder">
            <summary>the metadata builder for this OData resource.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceBase.etag">
            <summary>The resource ETag, as provided by the user or seen on the wire (never computed).</summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceBase.hasNonComputedETag">
            <summary>true if an etag was provided by the user or seen on the wire, false otherwise.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceBase.id">
            <summary>The Resource ID, as provided by the user or seen on the wire (never computed).</summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceBase.hasNonComputedId">
            <summary>true if an id was provided by the user or seen on the wire, false otherwise.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceBase.editLink">
            <summary>Link used to edit the resource, as provided by the user or seen on the wire (never computed).</summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceBase.hasNonComputedEditLink">
            <summary>true if an edit link was provided by the user or seen on the wire, false otherwise.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceBase.readLink">
            <summary>A link that can be used to read the resource, as provided by the user or seen on the wire (never computed).</summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceBase.hasNonComputedReadLink">
            <summary>true if a read link was provided by the user or seen on the wire, false otherwise.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceBase.mediaResource">
            <summary>The default media resource of the media link resource, as provided by the user or seen on the wire (never computed).</summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceBase.properties">
            <summary>The resource properties provided by the user or seen on the wire (never computed).</summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceBase.actions">
            <summary>The resource actions provided by the user or seen on the wire (never computed).</summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceBase.functions">
            <summary>The resource functions provided by the user or seen on the wire (never computed).</summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceBase.serializationInfo">
            <summary>
            Provides additional serialization information to the <see cref="T:Microsoft.OData.ODataWriter"/> for this <see cref="T:Microsoft.OData.ODataResourceBase"/>.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.ETag">
            <summary>Gets or sets the resource ETag.</summary>
            <returns>The resource ETag.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.Id">
            <summary>Gets or sets the Resource identifier.</summary>
            <returns>The Resource identifier.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.EditLink">
            <summary>Gets or sets the link used to edit the resource.</summary>
            <returns>The link used to edit the resource.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.IsTransient">
            <summary>Gets or sets the value that shows if the resource is a transient resource or not</summary>
            <returns>true if the resource is a transient entity, false otherwise.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.ReadLink">
            <summary>Gets or sets a link that can be used to read the resource.</summary>
            <returns>The link that can be used to read the resource.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.MediaResource">
            <summary>Gets or sets the default media resource of the media link resource.</summary>
            <returns>The default media resource of the media link resource.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.Actions">
            <summary>Gets the entity actions.</summary>
            <returns>The entity actions.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.Functions">
            <summary>Gets the entity functions.</summary>
            <returns>The entity functions.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.Properties">
            <summary>Gets or sets the resource properties.</summary>
            <returns>The resource properties.</returns>
            <remarks>
            Non-property content goes to annotations.
            </remarks>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.TypeName">
            <summary>Gets or sets the type name of the resource.</summary>
            <returns>The type name of the resource.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.InstanceAnnotations">
            <summary>
            Collection of custom instance annotations.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.MetadataBuilder">
            <summary>
            The metadata builder for this OData resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.NonComputedId">
            <summary>
            Returns the resource's Id property that has been set directly, and was not computed using the metadata builder.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.HasNonComputedId">
            <summary>
            true if an id was provided by the user or seen on the wire, false otherwise.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.NonComputedEditLink">
            <summary>
            Returns the resource's EditLink property that has been set directly, and was not computed using the metadata builder.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.HasNonComputedEditLink">
            <summary>
            true if an edit link was provided by the user or seen on the wire, false otherwise.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.NonComputedReadLink">
            <summary>
            Returns the resource's ReadLink property that has been set directly, and was not computed using the metadata builder.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.HasNonComputedReadLink">
            <summary>
            true if a read link was provided by the user or seen on the wire, false otherwise.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.NonComputedETag">
            <summary>
            Returns the resource's ETag property that has been set directly, and was not computed using the metadata builder.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.HasNonComputedETag">
            <summary>
            true if an etag was provided by the user or seen on the wire, false otherwise.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.NonComputedMediaResource">
            <summary>Returns the default media resource of the media link resource that has been set directly and was not computed using the metadata builder.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.NonComputedProperties">
            <summary>Returns the entity properties that has been set directly and was not computed using the metadata builder.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.NonComputedActions">
            <summary>Returns the entity actions that has been set directly and was not computed using the metadata builder.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.NonComputedFunctions">
            <summary>Returns the entity functions that has been set directly and was not computed using the metadata builder.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceBase.SerializationInfo">
            <summary>
            Provides additional serialization information to the <see cref="T:Microsoft.OData.ODataWriter"/> for this <see cref="T:Microsoft.OData.ODataResourceBase"/>.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataResourceBase.AddAction(Microsoft.OData.ODataAction)">
            <summary>
            Add action to resource.
            </summary>
            <param name="action">The action to add.</param>
        </member>
        <member name="M:Microsoft.OData.ODataResourceBase.AddFunction(Microsoft.OData.ODataFunction)">
            <summary>
            Add function to resource.
            </summary>
            <param name="function">The function to add.</param>
        </member>
        <member name="T:Microsoft.OData.ODataResourceSerializationInfo">
            <summary>
            Class to provide additional serialization information to the <see cref="T:Microsoft.OData.ODataWriter"/> for an <see cref="T:Microsoft.OData.ODataResource"/>.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceSerializationInfo.navigationSourceName">
            <summary>
            The navigation source name of the resource to be written. Should be fully qualified if the navigation source is not in the default container.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceSerializationInfo.navigationSourceEntityTypeName">
            <summary>
            The namespace qualified entity type name of the navigation source.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceSerializationInfo.expectedTypeName">
            <summary>
            The namespace qualified type name of the expected entity type.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceSerializationInfo.NavigationSourceName">
            <summary>
            The navigation source name of the resource to be written. Should be fully qualified if the navigation source is not in the default container.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceSerializationInfo.NavigationSourceEntityTypeName">
            <summary>
            The namespace qualified element type name of the navigation source.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceSerializationInfo.NavigationSourceKind">
            <summary>
            The kind of the navigation source.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceSerializationInfo.IsFromCollection">
            <summary>
            The flag we use to identify if the current resource is from a navigation property with collection type or not.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceSerializationInfo.ExpectedTypeName">
            <summary>
            The namespace qualified type name of the expected resource type.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataResourceSerializationInfo.Validate(Microsoft.OData.ODataResourceSerializationInfo)">
            <summary>
            Validates the <paramref name="serializationInfo"/> instance.
            </summary>
            <param name="serializationInfo">The serialization info instance to validate.</param>
            <returns>The <paramref name="serializationInfo"/> instance.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataResourceSet">
            <summary>
            Describes a collection of entities.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceSet.actions">
            <summary>The resource set actions provided by the user or seen on the wire (never computed).</summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceSet.functions">
            <summary>The resource set functions provided by the user or seen on the wire (never computed).</summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceSet.Actions">
            <summary>Gets the resource set actions.</summary>
            <returns>The resource set actions.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataResourceSet.Functions">
            <summary>Gets the resource set functions.</summary>
            <returns>The resource set functions.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataResourceSet.AddAction(Microsoft.OData.ODataAction)">
            <summary>
            Add action to resource set.
            </summary>
            <param name="action">The action to add.</param>
        </member>
        <member name="M:Microsoft.OData.ODataResourceSet.AddFunction(Microsoft.OData.ODataFunction)">
            <summary>
            Add function to resource set.
            </summary>
            <param name="function">The function to add.</param>
        </member>
        <member name="T:Microsoft.OData.ODataResourceSetBase">
            <summary>
            Describes a collection of entities.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceSetBase.nextPageLink">
            <summary>
            URI representing the next page link.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceSetBase.deltaLink">
            <summary>
            URI representing the delta link.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceSetBase.serializationInfo">
            <summary>
            Provides additional serialization information to the <see cref="T:Microsoft.OData.ODataWriter"/> for this <see cref="T:Microsoft.OData.ODataResourceSet"/>.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceSetBase.typeName">
            <summary>
            The type name of the resource set.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceSetBase.TypeName">
            <summary>Gets the resource set type name.</summary>
            <returns>The resource set type name.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataResourceSetBase.Count">
            <summary>Gets or sets the number of items in the resource set.</summary>
            <returns>The number of items in the resource set.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataResourceSetBase.Id">
            <summary>Gets or sets the URI that identifies the entity set represented by the resource set.</summary>
            <returns>The URI that identifies the entity set represented by the resource set.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataResourceSetBase.NextPageLink">
            <summary>Gets or sets the URI representing the next page link.</summary>
            <returns>The URI representing the next page link.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataResourceSetBase.DeltaLink">
            <summary>
            URI representing the delta link.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceSetBase.InstanceAnnotations">
            <summary>
            Collection of custom instance annotations.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceSetBase.SerializationInfo">
            <summary>
            Provides additional serialization information to the <see cref="T:Microsoft.OData.ODataWriter"/> for this <see cref="T:Microsoft.OData.ODataResourceSet"/>.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataResourceTypeContext">
            <summary>
            The context object to answer basic questions regarding the type of the resource or resource set.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceTypeContext.expectedResourceType">
            <summary>
            The expected resource type of the resource set or resource.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceTypeContext.expectedResourceTypeName">
            <summary>
            The expected resource type name of the resource set or resource.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceTypeContext.throwIfMissingTypeInfo">
            <summary>
            If true, throw if any of the set or type name cannot be determined; if false, return null when any of the set or type name cannot determined.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataResourceTypeContext.#ctor(System.Boolean)">
            <summary>
            Constructs an instance of <see cref="T:Microsoft.OData.ODataResourceTypeContext"/>.
            </summary>
            <param name="throwIfMissingTypeInfo">If true, throw if any of the set or type name cannot be determined; if false, return null when any of the set or type name cannot determined.</param>
        </member>
        <member name="M:Microsoft.OData.ODataResourceTypeContext.#ctor(Microsoft.OData.Edm.IEdmStructuredType,System.Boolean)">
            <summary>
            Constructs an instance of <see cref="T:Microsoft.OData.ODataResourceTypeContext"/>.
            </summary>
            <param name="expectedResourceType">The expected resource type of resource set or resource.</param>
            <param name="throwIfMissingTypeInfo">If true, throw if any of the set or type name cannot be determined; if false, return null when any of the set or type name cannot determined.</param>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.NavigationSourceName">
            <summary>
            The navigation source name of the resource set or resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.NavigationSourceEntityTypeName">
            <summary>
            The entity type name of the navigation source of the resource set or resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.NavigationSourceFullTypeName">
            <summary>
            The full type name of the navigation source of the resource set or resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.NavigationSourceKind">
            <summary>
            The kind of the navigation source of the resource set or resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.ExpectedResourceTypeName">
            <summary>
            The expected entity type name of the resource.
            For example, in the request URI 'http://example.com/Service.svc/People/Namespace.VIP_Person', the expected entity type is Namespace.VIP_Person.
            (The entity set element type name in this example may be Person, and the actual entity type of a particular entity might be a type more derived than VIP_Person)
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.ExpectedResourceType">
            <summary>
            The expected resource type.
            For example, in the request URI 'http://example.com/Service.svc/People/Namespace.VIP_Person', the expected resource type is Namespace.VIP_Person.
            (The entity set element type name in this example may be Person, and the actual entity type of a particular entity might be a type more derived than VIP_Person)
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.IsFromCollection">
            <summary>
            The flag we use to identify if the current resource is from a collection type or not.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.IsMediaLinkEntry">
            <summary>
            true if the resource is an MLE, false otherwise.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataResourceTypeContext.Create(Microsoft.OData.ODataResourceSerializationInfo,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmEntityType,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean)">
            <summary>
            Creates an instance of <see cref="T:Microsoft.OData.ODataResourceTypeContext"/>.
            </summary>
            <param name="serializationInfo">The serialization info from the resource set or resource instance.</param>
            <param name="navigationSource">The navigation source of the resource set or resource.</param>
            <param name="navigationSourceEntityType">The entity type of the navigation source.</param>
            <param name="expectedResourceType">The expected structured type of the resource set or resource.</param>
            <param name="throwIfMissingTypeInfo">If true, throw if any of the set or type name cannot be determined; if false, return null when any of the set or type name cannot determined.</param>
            <returns>A new instance of <see cref="T:Microsoft.OData.ODataResourceTypeContext"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataResourceTypeContext.ValidateAndReturn``1(``0)">
            <summary>
            Validate and return the given value.
            </summary>
            <typeparam name="T">The type of the value to validate.</typeparam>
            <param name="value">The value to validate.</param>
            <returns>The return value.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithoutModel">
            <summary>
            The context object to answer basic questions regarding the type of the resource or resource set based on the serialization info.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithoutModel.serializationInfo">
            <summary>
            The serialization info of the resource for writing without model.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithoutModel.#ctor(Microsoft.OData.ODataResourceSerializationInfo)">
            <summary>
            Constructs an instance of <see cref="T:Microsoft.OData.ODataResourceTypeContext"/>.
            </summary>
            <param name="serializationInfo">The serialization info from the resource set or resource instance.</param>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithoutModel.NavigationSourceName">
            <summary>
            The navigation source name of the resource set or resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithoutModel.NavigationSourceEntityTypeName">
            <summary>
            The entity type name of the navigation source of the resource set or resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithoutModel.NavigationSourceFullTypeName">
            <summary>
            The full type name of the navigation source of the resource set or resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithoutModel.NavigationSourceKind">
            <summary>
            The kind of the navigation source of the resource set or resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithoutModel.ExpectedResourceTypeName">
            <summary>
            The expected entity type name of the resource.
            For example, in the request URI 'http://example.com/Service.svc/People/Namespace.VIP_Person', the expected entity type is Namespace.VIP_Person.
            (The entity set element type name in this example may be Person, and the actual entity type of a particular entity might be a type more derived than VIP_Person)
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithoutModel.ExpectedResourceType">
            <summary>
            The expected resource type.
            For example, in the request URI 'http://example.com/Service.svc/People/Namespace.VIP_Person', the expected resource type is Namespace.VIP_Person.
            (The entity set element type name in this example may be Person, and the actual entity type of a particular entity might be a type more derived than VIP_Person)
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithoutModel.IsMediaLinkEntry">
            <summary>
            true if the resource is an MLE, false otherwise.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithoutModel.IsFromCollection">
            <summary>
            The flag we use to identify if the current resource is from a collection type or not.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithModel">
            <summary>
            The context object to answer basic questions regarding the type of the resource or resource set based on the metadata.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithModel.navigationSource">
            <summary>
            The navigation source of the entity set or entity.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithModel.navigationSourceEntityType">
            <summary>
            The entity type of the navigation source of the entity set or entity.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithModel.navigationSourceName">
            <summary>
            The navigation source name of the resource set or resource.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithModel.isMediaLinkEntry">
            <summary>
            true if the resource is an media link resource or if the resource set contains media link entries, false otherwise.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithModel.isFromCollection">
            <summary>
            The flag we use to identify if the current resource is from a navigation property with collection type or not.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithModel.navigationSourceFullTypeName">
            <summary>
            The full type name of the navigation source of the entity set or entity.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithModel.navigationSourceEntityTypeName">
            <summary>
            The entity type name of the navigation source of the entity set or entity.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithModel.#ctor(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmEntityType,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Constructs an instance of <see cref="T:Microsoft.OData.ODataResourceTypeContext"/>.
            </summary>
            <param name="navigationSource">The navigation source of the resource set or resource.</param>
            <param name="navigationSourceEntityType">The entity type of the navigation source.</param>
            <param name="expectedResourceType">The expected resource type of the resource set or resource.</param>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithModel.NavigationSourceName">
            <summary>
            The navigation source name of the resource set or resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithModel.NavigationSourceEntityTypeName">
            <summary>
            The entity type name of the navigation source of the resource set or resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithModel.NavigationSourceFullTypeName">
            <summary>
            The full type name of the navigation source of the resource set or resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithModel.NavigationSourceKind">
            <summary>
            The kind of the navigation source of the resource set or resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithModel.ExpectedResourceTypeName">
            <summary>
            The expected resource type name of the resource.
            For example, in the request URI 'http://example.com/Service.svc/People/Namespace.VIP_Person', the expected resource type is Namespace.VIP_Person.
            (The entity set element type name in this example may be Person, and the actual resource type of a particular resource might be a type more derived than VIP_Person)
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithModel.ExpectedResourceType">
            <summary>
            The expected resource type.
            For example, in the request URI 'http://example.com/Service.svc/People/Namespace.VIP_Person', the expected resource type is Namespace.VIP_Person.
            (The entity set element type name in this example may be Person, and the actual entity type of a particular entity might be a type more derived than VIP_Person)
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithModel.IsMediaLinkEntry">
            <summary>
            true if the resource is an MLE, false otherwise.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithModel.IsFromCollection">
            <summary>
            The flag we use to identify if the current resource is from a collection type or not.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResourceTypeContext.ODataResourceTypeContextWithModel.NavigationSourceEntityType">
            <summary>
            The entity type of the navigation source of the resource set or resource.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataResponseMessage">
            <summary>
            Wrapper class around an IODataResponseMessageAsync to isolate our code from the interface implementation.
            </summary>
            <remarks>
            This class also implements the message interface since it is passed to the payload kind
            detection logic on the format implementations and manages the buffering read stream.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataResponseMessage.responseMessage">
            <summary>The response message this class is wrapping.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataResponseMessage.#ctor(Microsoft.OData.IODataResponseMessage,System.Boolean,System.Boolean,System.Int64)">
            <summary>
            Constructs an internal wrapper around the <paramref name="responseMessage"/>
            that isolates the internal implementation of the ODataLib from the interface.
            </summary>
            <param name="responseMessage">The response message to wrap.</param>
            <param name="writing">true if the message is being written; false when it is read.</param>
            <param name="enableMessageStreamDisposal">true if the stream returned should be disposed calls.</param>
            <param name="maxMessageSize">The maximum size of the message in bytes (or a negative number if no maximum applies).</param>
        </member>
        <member name="P:Microsoft.OData.ODataResponseMessage.StatusCode">
            <summary>
            The result status code of the response message.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataResponseMessage.Headers">
            <summary>
            Returns an enumerable over all the headers for this message.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataResponseMessage.GetHeader(System.String)">
            <summary>
            Returns a value of an HTTP header.
            </summary>
            <param name="headerName">The name of the header to get.</param>
            <returns>The value of the HTTP header, or null if no such header was present on the message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataResponseMessage.SetHeader(System.String,System.String)">
            <summary>
            Sets the value of an HTTP header.
            </summary>
            <param name="headerName">The name of the header to set.</param>
            <param name="headerValue">The value of the HTTP header or 'null' if the header should be removed.</param>
        </member>
        <member name="M:Microsoft.OData.ODataResponseMessage.GetStream">
            <summary>
            Get the stream backing this message.
            </summary>
            <returns>The stream for this message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataResponseMessage.GetStreamAsync">
            <summary>
            Asynchronously get the stream backing this message.
            </summary>
            <returns>The stream for this message.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataResponseMessage.QueryInterface``1">
            <summary>
            Queries the message for the specified interface type.
            </summary>
            <typeparam name="TInterface">The type of the interface to query for.</typeparam>
            <returns>The instance of the interface asked for or null if it was not implemented by the message.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataSerializer">
            <summary>
            Base class for all OData serializers.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataSerializer.WriterValidator">
            <summary>The writer validator used during serializing.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataSerializer.outputContext">
            <summary>
            The output context to write to.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataSerializer.#ctor(Microsoft.OData.ODataOutputContext)">
            <summary>
            Constructor.
            </summary>
            <param name="outputContext">The output context to write to.</param>
        </member>
        <member name="P:Microsoft.OData.ODataSerializer.MessageWriterSettings">
            <summary>
            The message writer settings.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataSerializer.PayloadUriConverter">
            <summary>
            The URL converter.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataSerializer.WritingResponse">
            <summary>
            true if the output is a response payload; false if it's a request payload.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataSerializer.Model">
            <summary>
            The model to use.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataSerializer.CreateDuplicatePropertyNameChecker">
            <summary>
            Creates a new instance of a duplicate property names checker.
            </summary>
            <returns>The newly created instance of duplicate property names checker.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataServiceDocument">
            <summary>
            Class representing the a service document.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataServiceDocument.EntitySets">
            <summary>Gets or sets the set of entity sets in the service document.</summary>
            <returns>The set of entity sets in the service document.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataServiceDocument.Singletons">
            <summary>Gets or sets the set of singletons in the service document.</summary>
            <returns>The set of singletons in the service document.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataServiceDocument.FunctionImports">
            <summary>Gets or sets the set of function imports in the service document.</summary>
            <returns>The set of function imports in the service document.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataServiceDocumentElement">
            <summary>
            Abstract class representing an element (EntitySet, Singleton) in a service document.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataServiceDocumentElement.Url">
            <summary>Gets or sets the URI representing the Unified Resource Locator (URL) to the element.</summary>
            <returns>The URI representing the Unified Resource Locator (URL) to the element.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataServiceDocumentElement.Name">
            <summary>Gets or sets the name of the element; this is the entity set or singleton name in JSON and the HREF in Atom.</summary>
            <returns>The name of the element.</returns>
            <remarks>
            This property is required when reading and writing the JSON light format.
            If present in ATOM, it will be used to populate the title element.
            </remarks>
        </member>
        <member name="P:Microsoft.OData.ODataServiceDocumentElement.Title">
            <summary>Gets or sets the title of the element; this is the title in JSON.</summary>
            <returns>The title of the element.</returns>
            <remarks>
            This property is optional in JSON light format, containing a human-readable, language-dependent title for the object.
            The value is null if it is not present.
            </remarks>
        </member>
        <member name="T:Microsoft.OData.ODataSimplifiedOptions">
            <summary>
            Options which used to control the behaviour related odata simplified.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataSimplifiedOptions.#ctor">
            <summary>
            Constructor of ODataSimplifiedOptions
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataSimplifiedOptions.#ctor(System.Nullable{Microsoft.OData.ODataVersion})">
            <summary>
            Constructor of ODataSimplifiedOptions
            </summary>
            <param name="version">The ODataVersion to create Default Options for.</param>
        </member>
        <member name="P:Microsoft.OData.ODataSimplifiedOptions.EnableParsingKeyAsSegmentUrl">
            <summary>
            True if url parser support parsing path with key as segment, otherwise false. The defualt is true.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataSimplifiedOptions.EnableReadingKeyAsSegment">
            <summary>
            Gets or sets a value that indicates whether the reader should put key values in their own URI segment when automatically building URIs.
            If this value is false, automatically-generated URLs will take the form "../EntitySet('KeyValue')/..".
            If this value is true, automatically-generated URLs will take the form "../EntitySet/KeyValue/..".
            This setting only applies to URLs that are automatically generated by the <see cref="T:Microsoft.OData.ODataMessageReader" /> and the URLs explicitly provided by the server won't be modified.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataSimplifiedOptions.EnableReadingODataAnnotationWithoutPrefix">
            <summary>
            True if can read reserved annotation name without prefix 'odata.', otherwise false.
            The default value is false for OData 4.0 and true for OData 4.01.
            The option is applied during deserialization.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataSimplifiedOptions.EnableWritingKeyAsSegment">
            <summary>
            Gets or sets a value that indicates whether the writer should put key values in their own URI segment when automatically building URIs.
            If this value is false, automatically-generated URLs will take the form "../EntitySet('KeyValue')/..".
            If this value is true, automatically-generated URLs will take the form "../EntitySet/KeyValue/..".
            This setting only applies to URLs that are automatically generated by the <see cref="T:Microsoft.OData.ODataMessageWriter" /> and does not modify URLs explicitly provided by the user.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataSimplifiedOptions.EnableWritingODataAnnotationWithoutPrefix">
            <summary>
            True if write reserved annotation name without prefix 'odata.', otherwise false.
            The default value is false for OData 4.0, true for OData 4.01.
            The option is applied during serialization.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataSimplifiedOptions.Clone">
            <summary>
            Creates a shallow copy of this <see cref="T:Microsoft.OData.ODataSimplifiedOptions"/>.
            </summary>
            <returns>A shallow copy of this <see cref="T:Microsoft.OData.ODataSimplifiedOptions"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataSimplifiedOptions.GetODataSimplifiedOptions(System.IServiceProvider,System.Nullable{Microsoft.OData.ODataVersion})">
            <summary>
            Return the instatnce of ODataSimplifiedOptions from container if it container not null.
            Otherwise return the static instance of ODataSimplifiedOptions.
            </summary>
            <param name="container">Container</param>
            <param name="version">OData Version</param>
            <returns>Instance of GetODataSimplifiedOptions</returns>
        </member>
        <member name="T:Microsoft.OData.ODataSingletonInfo">
            <summary>
            Class representing a singleton in a service document.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataStreamReferenceValue">
            <summary>
            Represents a media resource.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataStreamReferenceValue.metadataBuilder">
            <summary>the metadata builder for this OData resource.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataStreamReferenceValue.edmPropertyName">
            <summary>The name of the named stream this value belongs to; null for the default media resource.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataStreamReferenceValue.editLink">
            <summary>Edit link for media resource.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataStreamReferenceValue.computedEditLink">
            <summary>Edit link for media resource.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataStreamReferenceValue.readLink">
            <summary>Read link for media resource.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataStreamReferenceValue.computedReadLink">
            <summary>Read link for media resource.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataStreamReferenceValue.EditLink">
            <summary>Gets or sets the edit link for media resource.</summary>
            <returns>The edit link for media resource.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataStreamReferenceValue.ReadLink">
            <summary>Gets or sets the read link for media resource.</summary>
            <returns>The read link for media resource.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataStreamReferenceValue.ContentType">
            <summary>Gets or sets the content media type.</summary>
            <returns>The content media type.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataStreamReferenceValue.ETag">
            <summary>Gets or sets the media resource ETag.</summary>
            <returns>The media resource ETag.</returns>
        </member>
        <member name="P:Microsoft.OData.ODataStreamReferenceValue.HasNonComputedEditLink">
            <summary>
            true if an edit link was provided by the user or seen on the wire, false otherwise.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataStreamReferenceValue.HasNonComputedReadLink">
            <summary>
            true if a read link was provided by the user or seen on the wire, false otherwise.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataStreamReferenceValue.SetMetadataBuilder(Microsoft.OData.Evaluation.ODataResourceMetadataBuilder,System.String)">
            <summary>
            Sets the metadata builder for this stream reference value.
            </summary>
            <param name="builder">The metadata builder used to compute values from model annotations.</param>
            <param name="propertyName">The property name for the named stream; null for the default media resource.</param>
        </member>
        <member name="M:Microsoft.OData.ODataStreamReferenceValue.GetMetadataBuilder">
            <summary>
            Gets the metadata builder for this stream reference value.
            </summary>
            <returns>The metadata builder used to compute links.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataTypeAnnotation">
            <summary>
            Annotation which stores the EDM type information of a value.
            </summary>
            <remarks>
            This annotation will be used on ODataResource and ODataCollectionValue.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataTypeAnnotation.#ctor">
            <summary>
            Creates a new instance of the type annotation without a type name.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataTypeAnnotation.#ctor(System.String)">
            <summary>
            Creates a new instance of the type annotation with a type name.
            </summary>
            <param name="typeName">The type name read from the input.</param>
        </member>
        <member name="M:Microsoft.OData.ODataTypeAnnotation.#ctor(System.String,Microsoft.OData.Edm.IEdmType)">
            <summary>
            Creates a new instance of the type annotation with a type.
            </summary>
            <param name="typeName">The type name read from the input.</param>
            <param name="type">The type read from the input.</param>
        </member>
        <member name="P:Microsoft.OData.ODataTypeAnnotation.TypeName">
            <summary>Gets the type name to serialize, for the annotated item. </summary>
            <returns>The type name to serialize, for the annotated item.</returns>
            <remarks>
            If this property is null, no type name will be written.
            If this property is non-null, the property value will be used as the type name written to the payload.
            If <see cref="T:Microsoft.OData.ODataTypeAnnotation"/> is present, it always overrides the type name specified on the annotated item.
            If <see cref="T:Microsoft.OData.ODataTypeAnnotation"/> is not present, the value of the TypeName property on the ODataResource, ODataCollectionValue
            is used as the type name in the payload.
            </remarks>
        </member>
        <member name="P:Microsoft.OData.ODataTypeAnnotation.Type">
            <summary>
            This property is redundant info about TypeName but to improve reader performance.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataUntypedValue">
            <summary>
            OData representation of an untyped value.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataUntypedValue.RawValue">
            <summary>Gets or sets the raw untyped value.</summary>
            <returns>The raw untyped value.</returns>
            <remarks>
            The caller of the setter is responsible for formatting the value for the
            data transmission protocol it will be used in.
            For instance, if the protocol is JSON, the caller must format this value as JSON.
            If the protocol is Atom, the caller must format this value as XML.
            This libarary will not perform any formatting.
            </remarks>
        </member>
        <member name="T:Microsoft.OData.ODataUtils">
            <summary>
            Utility methods used with the OData library.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataUtils.Version4NumberString">
            <summary>String representation of the version 4.0 of the OData protocol.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataUtils.Version401NumberString">
            <summary>String representation of the version 4.01 of the OData protocol.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataUtils.SetHeadersForPayload(Microsoft.OData.ODataMessageWriter,Microsoft.OData.ODataPayloadKind)">
            <summary>Sets the content-type and OData-Version headers on the message used by the message writer.</summary>
            <returns>The content-type and OData-Version headers on the message used by the message writer.</returns>
            <param name="messageWriter">The message writer to set the headers for.</param>
            <param name="payloadKind">The kind of payload to be written with the message writer.</param>
            <remarks>
            This method can be called if it is important to set all the message headers before calling any of the
            write methods on the <paramref name="messageWriter"/>.
            If it is sufficient to set the headers when the write methods on the <paramref name="messageWriter"/>
            are called, you don't have to call this method and setting the headers will happen automatically.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataUtils.GetReadFormat(Microsoft.OData.ODataMessageReader)">
            <summary>Returns the format used by the message reader for reading the payload.</summary>
            <returns>The format used by the messageReader for reading the payload.</returns>
            <param name="messageReader">The <see cref="T:Microsoft.OData.ODataMessageReader" /> to get the read format from.</param>
            <remarks>This method must only be called once reading has started.
            This means that a read method has been called on the <paramref name="messageReader"/> or that a reader (for entries, resource sets, collections, etc.) has been created.
            If the method is called prior to that it will throw.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataUtils.NullValueReadBehaviorKind(Microsoft.OData.Edm.IEdmModel,Microsoft.OData.Edm.IEdmProperty)">
            <summary>
            Gets the reader behavior for null property value on the specified property.
            </summary>
            <param name="model">The model containing the annotation.</param>
            <param name="property">The property to check.</param>
            <returns>The behavior to use when reading null value for this property.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataUtils.SetNullValueReaderBehavior(Microsoft.OData.Edm.IEdmModel,Microsoft.OData.Edm.IEdmProperty,Microsoft.OData.ODataNullValueBehaviorKind)">
            <summary>
            Adds a transient annotation to indicate how null values for the specified property should be read.
            </summary>
            <param name="model">The <see cref="T:Microsoft.OData.Edm.IEdmModel"/> containing the annotations.</param>
            <param name="property">The <see cref="T:Microsoft.OData.Edm.IEdmProperty"/> to modify.</param>
            <param name="nullValueReadBehaviorKind">The new behavior for reading null values for this property.</param>
        </member>
        <member name="M:Microsoft.OData.ODataUtils.ODataVersionToString(Microsoft.OData.ODataVersion)">
            <summary>Displays the OData version to string representation.</summary>
            <returns>The OData version.</returns>
            <param name="version">The OData version.</param>
        </member>
        <member name="M:Microsoft.OData.ODataUtils.StringToODataVersion(System.String)">
            <summary>Displays a string to OData version representation.</summary>
            <returns>The OData version.</returns>
            <param name="version">The OData version.</param>
        </member>
        <member name="M:Microsoft.OData.ODataUtils.CreateAnnotationFilter(System.String)">
             <summary>
             Translates the <paramref name="annotationFilter"/> to a func that would evalutate whether the filter would match a given annotation name.
             The func would evaluate to true if the <paramref name="annotationFilter"/> matches the annotation name that's passed to the it, and false otherwise.
             </summary>
             <param name="annotationFilter">
             The filter string may be a comma delimited list of any of the following supported patterns:
               "*" -- Matches all annotation names.
               "ns.*" -- Matches all annotation names under the namespace "ns".
               "ns.name" -- Matches only the annotation name "ns.name".
               "-" -- The exclude operator may be used with any of the supported pattern, for example:
                             "-ns.*" -- Excludes all annotation names under the namespace "ns".
                             "-ns.name" -- Excludes only the annotation name "ns.name".
             Null or empty filter is equivalent to "-*".
             
             The relative priority of the pattern is base on the relative specificity of the patterns being compared. If pattern1 is under the namespace pattern2,
             pattern1 is more specific than pattern2 because pattern1 matches a subset of what pattern2 matches. We give higher priority to the pattern that is more specific.
             For example:
              "ns.*" has higher priority than "*"
              "ns.name" has higher priority than "ns.*"
              "ns1.name" has same priority as "ns2.*"
             
             Patterns with the exclude operator takes higher precedence than the same pattern without.
             For example: "-ns.name" has higher priority than "ns.name".
             
             Examples:
               "ns1.*,ns.name" -- Matches any annotation name under the "ns1" namespace and the "ns.name" annotation.
               "*,-ns.*,ns.name" -- Matches any annotation name outside of the "ns" namespace and only "ns.name" under the "ns" namespace.
             </param>
             <returns>Returns a func which would evaluate to true if the <paramref name="annotationFilter"/> matches the annotation name that's passed to the it,
             and false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataUtils.GenerateServiceDocument(Microsoft.OData.Edm.IEdmModel)">
            <summary>
            Generate a default ODataServiceDocument instance from model.
            </summary>
            <param name="model">The Edm Model frm which to generate the service document.</param>
            <returns>The generated service document.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataUtils.AppendDefaultHeaderValue(System.String,System.String)">
             <summary>
             Append default values required by OData to specified HTTP header.
             
             When header name is ODataConstants.ContentTypeHeader:
                 If header value is application/json, append the following default values:
                     (odata.)metadata=minimal
                     (odata.)streaming=true
                     IEEE754Compatible=false
             </summary>
             <param name="headerName">The name of the header to append default values.</param>
             <param name="headerValue">The original header value string.</param>
             <returns>The header value string with appended default values.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataUtils.AppendDefaultHeaderValue(System.String,System.String,Microsoft.OData.ODataVersion)">
             <summary>
             Append default values required by OData to specified HTTP header.
             
             When header name is ODataConstants.ContentTypeHeader, if header value is application/json
                 append the following default values for 4.0:
                     odata.metadata=minimal
                     odata.streaming=true
                     IEEE754Compatible=false
                 append the following default values for 4.01:
                     metadata=minimal
                     streaming=true
                     IEEE754Compatible=false
             </summary>
             <param name="headerName">The name of the header to append default values.</param>
             <param name="headerValue">The original header value string.</param>
             <param name="version">The ODataVersion for which to create the default header value</param>
             <returns>The header value string with appended default values.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataUtilsInternal">
            <summary>
            Internal utility methods used in the OData library.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataUtilsInternal.SetODataVersion(Microsoft.OData.ODataMessage,Microsoft.OData.ODataMessageWriterSettings)">
            <summary>
            Sets the 'OData-Version' HTTP header on the message based on the protocol version specified in the settings.
            </summary>
            <param name="message">The message to set the OData-Version header on.</param>
            <param name="settings">The <see cref="T:Microsoft.OData.ODataMessageWriterSettings"/> determining the protocol version to use.</param>
        </member>
        <member name="M:Microsoft.OData.ODataUtilsInternal.GetODataVersion(Microsoft.OData.ODataMessage,Microsoft.OData.ODataVersion)">
            <summary>
            Reads the OData-Version header from the <paramref name="message"/> and parses it.
            If no OData-Version header is found it sets the default version to be used for reading.
            </summary>
            <param name="message">The message to get the OData-Version header from.</param>
            <param name="defaultVersion">The default version to use if the header was not specified.</param>
            <returns>
            The <see cref="T:Microsoft.OData.ODataVersion"/> retrieved from the OData-Version header of the message.
            The default version if none is specified in the header.
            </returns>
        </member>
        <member name="M:Microsoft.OData.ODataUtilsInternal.IsPayloadKindSupported(Microsoft.OData.ODataPayloadKind,System.Boolean)">
            <summary>
            Checks whether a payload kind is supported in a request or a response.
            </summary>
            <param name="payloadKind">The <see cref="T:Microsoft.OData.ODataPayloadKind"/> to check.</param>
            <param name="inRequest">true if the check is for a request; false for a response.</param>
            <returns>true if the <paramref name="payloadKind"/> is valid in a request or response respectively based on <paramref name="inRequest"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataUtilsInternal.ConcatEnumerables``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Concats two enumerables.
            </summary>
            <typeparam name="T">Element type of the enumerable.</typeparam>
            <param name="enumerable1">Enumerable 1 to concat.</param>
            <param name="enumerable2">Enumerable 2 to concat.</param>
            <returns>Returns the combined enumerable.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataUtilsInternal.IsNullable(Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Returns true if this reference refers to a nullable type.
            </summary>
            <param name="type">Type reference.</param>
            <returns>This reference refers to a nullable type.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataValue">
            <summary>
            Represents the value of a property.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataValue.IsNullValue">
            <summary>
            Indicates whether the given value is a null value.
            </summary>
            <value> true if the value is an ODataNullValue, false otherwise. </value>
        </member>
        <member name="T:Microsoft.OData.ODataValueUtils">
            <summary>
            Class with utility methods to deal with values in ODataLib.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataValueUtils.ToODataValue(System.Object)">
            <summary>
            Converts an object to an ODataValue. If the given object is already an ODataValue (such as an ODataCollectionValue, etc.), the original object will be returned.
            </summary>
            <param name="objectToConvert">The object to convert to an ODataValue</param>
            <returns>The given object as an ODataValue.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataValueUtils.FromODataValue(Microsoft.OData.ODataValue)">
            <summary>
            Converts an ODataValue to the old style of representing values, where null values are null and primitive values are just the direct primitive (no longer wrapped by ODataPrimitiveValue).
            All other value types, such as ODataCollectionValue are returned unchanged.
            </summary>
            <param name="odataValue">The value to convert.</param>
            <returns>The value behind the given ODataValue.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataVersion">
            <summary>
            Enumeration representing the OData protocol version.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataVersion.V4">
            <summary>Version 4.0.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataVersion.V401">
            <summary>Version 4.01.</summary>
        </member>
        <member name="T:Microsoft.OData.ODataVersionCache`1">
            <summary>
            Simple ODataVersion specific cache.
            </summary>
            <typeparam name="T">The type of the item being cached.</typeparam>
        </member>
        <member name="F:Microsoft.OData.ODataVersionCache`1.v4">
            <summary>
            Lazy constructing T for ODataVersion.V4.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataVersionCache`1.v401">
            <summary>
            Lazy constructing T for ODataVersion.V401.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataVersionCache`1.#ctor(System.Func{Microsoft.OData.ODataVersion,`0})">
            <summary>
            Constructs an instance of the ODataVersionCache.
            </summary>
            <param name="factory">The method to call to create a new instance of <typeparamref name="T"/> for a given ODataVersion.</param>
        </member>
        <member name="P:Microsoft.OData.ODataVersionCache`1.Item(Microsoft.OData.ODataVersion)">
            <summary>
            Indexer to get the cached item when given the ODataVersion.
            </summary>
            <param name="version">The ODataVersion to look up.</param>
            <returns>The cached item.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataWriter">
            <summary>
            Base class for OData writers.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.WriteStart(Microsoft.OData.ODataResourceSet)">
            <summary>Starts the writing of a resource set.</summary>
            <param name="resourceSet">The resource set or collection to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.Write(Microsoft.OData.ODataResourceSet)">
            <summary>Writes a resource set.</summary>
            <param name="resourceSet">The resource set or collection to write.</param>
            <returns>This ODataWriter, allowing for chaining operations.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.Write(Microsoft.OData.ODataResourceSet,System.Action)">
            <summary>Writes a resource set and performs an action in-between.</summary>
            <param name="resourceSet">The resource set or collection to write.</param>
            <param name="nestedAction">The action to perform in-between writing the resource set.</param>
            <returns>This ODataWriter, allowing for chaining operations.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.WriteStartAsync(Microsoft.OData.ODataResourceSet)">
            <summary> Asynchronously start writing a resource set. </summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
            <param name="resourceSet">The resource set or collection to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.WriteStart(Microsoft.OData.ODataDeltaResourceSet)">
            <summary>Starts the writing of a delta resource set.</summary>
            <param name="deltaResourceSet">The resource set or collection to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.Write(Microsoft.OData.ODataDeltaResourceSet)">
            <summary>Writes a delta resource set.</summary>
            <param name="deltaResourceSet">The delta resource set or collection to write.</param>
            <returns>This ODataWriter, allowing for chaining operations.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.Write(Microsoft.OData.ODataDeltaResourceSet,System.Action)">
            <summary>Writes a delta resource set and performs an action in-between.</summary>
            <param name="deltaResourceSet">The delta resource set or collection to write.</param>
            <param name="nestedAction">The action to perform in-between writing the resource set.</param>
            <returns>This ODataWriter, allowing for chaining operations.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.WriteStartAsync(Microsoft.OData.ODataDeltaResourceSet)">
            <summary> Asynchronously start writing a resource set. </summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
            <param name="deltaResourceSet">The resource set or collection to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.WriteStart(Microsoft.OData.ODataResource)">
            <summary>Starts the writing of a resource.</summary>
            <param name="resource">The resource or item to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.Write(Microsoft.OData.ODataResource)">
            <summary>Writes a resource.</summary>
            <param name="resource">The resource or item to write.</param>
            <returns>This ODataWriter, allowing for chaining operations.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.Write(Microsoft.OData.ODataResource,System.Action)">
            <summary>Writes a resource and performs an action in-between.</summary>
            <param name="resource">The resource or item to write.</param>
            <param name="nestedAction">The action to perform in-between the writing.</param>
            <returns>This ODataWriter, allowing for chaining operations.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.Write(Microsoft.OData.ODataDeletedResource)">
            <summary>Writes a deleted resource.</summary>
            <param name="deletedResource">The deleted resource to write.</param>
            <returns>This ODataWriter, allowing for chaining operations.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.Write(Microsoft.OData.ODataDeletedResource,System.Action)">
            <summary>Writes a deleted resource and performs an action in-between.</summary>
            <param name="deletedResource">The deletedresource to write.</param>
            <param name="nestedAction">The action to perform in-between the writing.</param>
            <returns>This ODataWriter, allowing for chaining operations.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.Write(Microsoft.OData.ODataDeltaLink)">
            <summary>Writes a delta link.</summary>
            <param name="deltaLink">The delta link to write.</param>
            <returns>This ODataWriter, allowing for chaining operations.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.Write(Microsoft.OData.ODataDeltaDeletedLink)">
            <summary>Writes a deleted link.</summary>
            <param name="deltaDeletedLink">The delta deleted link to write.</param>
            <returns>This ODataWriter, allowing for chaining operations.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.WriteStartAsync(Microsoft.OData.ODataResource)">
            <summary> Asynchronously start writing a resource. </summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
            <param name="resource">The resource or item to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.WriteStart(Microsoft.OData.ODataDeletedResource)">
            <summary> Starts writing a deleted resource.</summary>
            <param name="deletedResource">The deleted resource to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.WriteStartAsync(Microsoft.OData.ODataDeletedResource)">
            <summary>
            Asynchronously writing a delta deleted resource.
            </summary>
            <param name="deletedResource">The deleted resource to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.WriteDeltaLink(Microsoft.OData.ODataDeltaLink)">
            <summary>
            Write a delta link.
            </summary>
            <param name="deltaLink">The delta link to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.WriteDeltaLinkAsync(Microsoft.OData.ODataDeltaLink)">
            <summary>
            Asynchronously writing a delta link.
            </summary>
            <param name="deltaLink">The delta link to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.WriteDeltaDeletedLink(Microsoft.OData.ODataDeltaDeletedLink)">
            <summary>
            Write a delta deleted link.
            </summary>
            <param name="deltaDeletedLink">The delta deleted link to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.WriteDeltaDeletedLinkAsync(Microsoft.OData.ODataDeltaDeletedLink)">
            <summary>
            Asynchronously write a delta deleted link.
            </summary>
            <param name="deltaDeletedLink">The delta link to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.WriteStart(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>Starts the writing of a nested resource info.</summary>
            <param name="nestedResourceInfo">The nested resource info to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.Write(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>Writes a nested resource info.</summary>
            <param name="nestedResourceInfo">The nested resource info to write.</param>
            <returns>This ODataWriter, allowing for chaining operations.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.Write(Microsoft.OData.ODataNestedResourceInfo,System.Action)">
            <summary>Writes a nested resource info and performs an action in-between.</summary>
            <param name="nestedResourceInfo">The nested resource info to write.</param>
            <param name="nestedAction">The action to perform in-between the writing.</param>
            <returns>This ODataWriter, allowing for chaining operations.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.WriteStartAsync(Microsoft.OData.ODataNestedResourceInfo)">
            <summary> Asynchronously start writing a nested resource info. </summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
            <param name="nestedResourceInfo">The nested resource info to writer.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.WritePrimitive(Microsoft.OData.ODataPrimitiveValue)">
            <summary>Writes a primitive value within an untyped collection.</summary>
            <param name="primitiveValue">The primitive value to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.Write(Microsoft.OData.ODataPrimitiveValue)">
            <summary>Writes a primitive value within an untyped collection.</summary>
            <param name="primitiveValue">The primitive value to write.</param>
            <returns>This ODataWriter, allowing for chaining operations.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.WritePrimitiveAsync(Microsoft.OData.ODataPrimitiveValue)">
            <summary> Asynchronously write a primitive value within an untyped collection. </summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
            <param name="primitiveValue">The primitive value to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.WriteEnd">
            <summary>Finishes the writing of a resource set, a resource, or a nested resource info.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.WriteEndAsync">
            <summary> Asynchronously finish writing a resource set, resource, or nested resource info. </summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.WriteEntityReferenceLink(Microsoft.OData.ODataEntityReferenceLink)">
            <summary> Writes an entity reference link, which is used to represent binding to an existing resource in a request payload. </summary>
            <param name="entityReferenceLink">The entity reference link to write.</param>
            <remarks>
            This method can only be called for writing request messages. The entity reference link must be surrounded
            by a nested resource info written through WriteStart/WriteEnd.
            The <see cref="P:Microsoft.OData.ODataNestedResourceInfo.Url"/> will be ignored in that case and the Uri from the <see cref="P:Microsoft.OData.ODataEntityReferenceLink.Url"/> will be used
            as the binding URL to be written.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.WriteEntityReferenceLinkAsync(Microsoft.OData.ODataEntityReferenceLink)">
            <summary> Asynchronously writes an entity reference link, which is used to represent binding to an existing resource in a request payload. </summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
            <param name="entityReferenceLink">The entity reference link to write.</param>
            <remarks>
            This method can only be called for writing request messages. The entity reference link must be surrounded
            by a nested resource info written through WriteStart/WriteEnd.
            The <see cref="P:Microsoft.OData.ODataNestedResourceInfo.Url"/> will be ignored in that case and the Uri from the <see cref="P:Microsoft.OData.ODataEntityReferenceLink.Url"/> will be used
            as the binding URL to be written.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.Flush">
            <summary>Flushes the write buffer to the underlying stream.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriter.FlushAsync">
            <summary>Flushes the write buffer to the underlying stream asynchronously.</summary>
            <returns>A task instance that represents the asynchronous operation.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataWriterCore">
            <summary>
            Base class for OData writers that verifies a proper sequence of write calls on the writer.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.WriterValidator">
            <summary>The writer validator to use.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.outputContext">
            <summary>The output context to write to.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.writingResourceSet">
            <summary>True if the writer was created for writing a resourceSet; false when it was created for writing a resource.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.writingDelta">
            <summary>True if the writer was created for writing a delta response; false otherwise.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.listener">
            <summary>If not null, the writer will notify the implementer of the interface of relevant state changes in the writer.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.scopeStack">
            <summary>Stack of writer scopes to keep track of the current context of the writer.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.currentResourceDepth">
            <summary>The number of entries which have been started but not yet ended.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.#ctor(Microsoft.OData.ODataOutputContext,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,System.Boolean,Microsoft.OData.IODataReaderWriterListener)">
            <summary>
            Constructor.
            </summary>
            <param name="outputContext">The output context to write to.</param>
            <param name="navigationSource">The navigation source we are going to write resource set for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="writingResourceSet">True if the writer is created for writing a resourceSet; false when it is created for writing a resource.</param>
            <param name="writingDelta">True if the writer is created for writing a delta response; false otherwise.</param>
            <param name="listener">If not null, the writer will notify the implementer of the interface of relevant state changes in the writer.</param>
        </member>
        <member name="T:Microsoft.OData.ODataWriterCore.WriterState">
            <summary>
            An enumeration representing the current state of the writer.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.WriterState.Start">
            <summary>The writer is at the start; nothing has been written yet.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.WriterState.Resource">
            <summary>The writer is currently writing a resource.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.WriterState.ResourceSet">
            <summary>The writer is currently writing a resourceSet.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.WriterState.DeltaResourceSet">
            <summary>The writer is currently writing a delta resource set.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.WriterState.DeletedResource">
            <summary>The writer is currently writing a deleted resource.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.WriterState.DeltaLink">
            <summary>The writer is currently writing a delta link.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.WriterState.DeltaDeletedLink">
            <summary>The writer is currently writing a delta deleted link.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.WriterState.NestedResourceInfo">
            <summary>The writer is currently writing a nested resource info (possibly an expanded link but we don't know yet).</summary>
            <remarks>
            This state is used when a nested resource info was started but we didn't see any children for it yet.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.WriterState.NestedResourceInfoWithContent">
            <summary>The writer is currently writing a nested resource info with content.</summary>
            <remarks>
            This state is used when a nested resource info with either an entity reference link or expanded resourceSet/resource was written.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.WriterState.Primitive">
            <summary>The writer is currently writing a primitive value.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.WriterState.Completed">
            <summary>The writer has completed; nothing can be written anymore.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.WriterState.Error">
            <summary>The writer is in error state; nothing can be written anymore.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.Version">
            <summary>
            OData Version being written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.CurrentScope">
            <summary>
            The current scope for the writer.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.State">
            <summary>
            The current state of the writer.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.SkipWriting">
            <summary>
            true if the writer should not write any input specified and should just skip it.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.IsTopLevel">
            <summary>
            A flag indicating whether the writer is at the top level.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.ScopeLevel">
            <summary>
            The scope level the writer is writing.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.ParentNestedResourceInfo">
            <summary>
            Returns the immediate parent link which is being expanded, or null if no such link exists
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.BelongingNestedResourceInfo">
            <summary>
            Returns the nested info that current resource belongs to.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.ParentResourceType">
            <summary>
            Returns the resource type of the immediate parent resource for which a nested resource info is being written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.ParentResourceNavigationSource">
            <summary>
            Returns the navigation source of the immediate parent resource for which a nested resource info is being written.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.ParentScope">
            <summary>
            Returns the parent scope of current scope.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.ResourceSetScopeResourceCount">
            <summary>
            Returns the number of items seen so far on the current resource set scope.
            </summary>
            <remarks>Can only be accessed on a resource set scope.</remarks>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.DuplicatePropertyNameChecker">
            <summary>
            Checker to detect duplicate property names.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.ResourceType">
            <summary>
            The structured type of the current resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.ParentNestedResourceInfoScope">
            <summary>
            Returns the parent nested resource info scope of a resource in an expanded link (if it exists).
            The resource can either be the content of the expanded link directly or nested inside a resourceSet.
            </summary>
            <returns>The parent navigation scope of a resource in an expanded link (if it exists).</returns>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.CurrentResourceSetValidator">
            <summary>
            Validator to validate consistency of collection items (or null if no such validator applies to the current scope).
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.Flush">
            <summary>
            Flushes the write buffer to the underlying stream.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.FlushAsync">
            <summary>
            Asynchronously flushes the write buffer to the underlying stream.
            </summary>
            <returns>A task instance that represents the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteStart(Microsoft.OData.ODataResourceSet)">
            <summary>
            Start writing a resourceSet.
            </summary>
            <param name="resourceSet">Resource Set/collection to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteStartAsync(Microsoft.OData.ODataResourceSet)">
            <summary>
            Asynchronously start writing a resourceSet.
            </summary>
            <param name="resourceSet">Resource Set/collection to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteStart(Microsoft.OData.ODataDeltaResourceSet)">
            <summary>
            Start writing a delta resource Set.
            </summary>
            <param name="deltaResourceSet">Resource Set/collection to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteStartAsync(Microsoft.OData.ODataDeltaResourceSet)">
            <summary>
            Asynchronously start writing a delta resourceSet.
            </summary>
            <param name="deltaResourceSet">Resource Set/collection to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteStart(Microsoft.OData.ODataResource)">
            <summary>
            Start writing a resource.
            </summary>
            <param name="resource">Resource/item to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteStartAsync(Microsoft.OData.ODataResource)">
            <summary>
            Asynchronously start writing a resource.
            </summary>
            <param name="resource">Resource/item to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteStart(Microsoft.OData.ODataDeletedResource)">
            <summary>
            Start writing a delta deleted resource.
            </summary>
            <param name="deletedResource">The delta deleted resource to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteStartAsync(Microsoft.OData.ODataDeletedResource)">
            <summary>
            Asynchronously write a delta deleted resource.
            </summary>
            <param name="deletedResource">The delta deleted resource to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteDeltaLink(Microsoft.OData.ODataDeltaLink)">
            <summary>
            Writing a delta link.
            </summary>
            <param name="deltaLink">The delta link to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteDeltaLinkAsync(Microsoft.OData.ODataDeltaLink)">
            <summary>
            Asynchronously writing a delta link.
            </summary>
            <param name="deltaLink">The delta link to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteDeltaDeletedLink(Microsoft.OData.ODataDeltaDeletedLink)">
            <summary>
            Writing a delta deleted link.
            </summary>
            <param name="deltaLink">The delta link to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteDeltaDeletedLinkAsync(Microsoft.OData.ODataDeltaDeletedLink)">
            <summary>
            Asynchronously writing a delta link.
            </summary>
            <param name="deltaLink">The delta link to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WritePrimitive(Microsoft.OData.ODataPrimitiveValue)">
            <summary>
            Write a primitive value within an untyped collection.
            </summary>
            <param name="primitiveValue">Primitive value to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WritePrimitiveAsync(Microsoft.OData.ODataPrimitiveValue)">
            <summary>
            Asynchronously write a primitive value.
            </summary>
            <param name="primitiveValue"> Primitive value to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteStart(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            Start writing a nested resource info.
            </summary>
            <param name="nestedResourceInfo">Navigation link to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteStartAsync(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            Asynchronously start writing a nested resource info.
            </summary>
            <param name="nestedResourceInfo">Navigation link to writer.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteEnd">
            <summary>
            Finish writing a resourceSet/resource/nested resource info.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteEndAsync">
            <summary>
            Asynchronously finish writing a resourceSet/resource/nested resource info.
            </summary>
            <returns>A task instance that represents the asynchronous write operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteEntityReferenceLink(Microsoft.OData.ODataEntityReferenceLink)">
            <summary>
            Writes an entity reference link, which is used to represent binding to an existing resource in a request payload.
            </summary>
            <param name="entityReferenceLink">The entity reference link to write.</param>
            <remarks>
            This method can only be called for writing request messages. The entity reference link must be surrounded
            by a navigation link written through WriteStart/WriteEnd.
            The <see cref="P:Microsoft.OData.ODataNestedResourceInfo.Url"/> will be ignored in that case and the Uri from the <see cref="P:Microsoft.OData.ODataEntityReferenceLink.Url"/> will be used
            as the binding URL to be written.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteEntityReferenceLinkAsync(Microsoft.OData.ODataEntityReferenceLink)">
            <summary>
            Asynchronously writes an entity reference link, which is used to represent binding to an existing resource in a request payload.
            </summary>
            <param name="entityReferenceLink">The entity reference link to write.</param>
            <returns>A task instance that represents the asynchronous write operation.</returns>
            <remarks>
            This method can only be called for writing request messages. The entity reference link must be surrounded
            by a navigation link written through WriteStart/WriteEnd.
            The <see cref="P:Microsoft.OData.ODataNestedResourceInfo.Url"/> will be ignored in that case and the Uri from the <see cref="P:Microsoft.OData.ODataEntityReferenceLink.Url"/> will be used
            as the binding URL to be written.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.Microsoft#OData#IODataOutputInStreamErrorListener#OnInStreamError">
            <summary>
            This method notifies the listener, that an in-stream error is to be written.
            </summary>
            <remarks>
            This listener can choose to fail, if the currently written payload doesn't support in-stream error at this position.
            If the listener returns, the writer should not allow any more writing, since the in-stream error is the last thing in the payload.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.GetParentResourceScope">
            <summary>
            Get instance of the parent resource scope
            </summary>
            <returns>
            The parent resource scope
            Or null if there is no parent resource scope
            </returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.IsErrorState(Microsoft.OData.ODataWriterCore.WriterState)">
            <summary>
            Determines whether a given writer state is considered an error state.
            </summary>
            <param name="state">The writer state to check.</param>
            <returns>True if the writer state is an error state; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.VerifyNotDisposed">
            <summary>
            Check if the object has been disposed; called from all public API methods. Throws an ObjectDisposedException if the object
            has already been disposed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.FlushSynchronously">
            <summary>
            Flush the output.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.FlushAsynchronously">
            <summary>
            Flush the output.
            </summary>
            <returns>Task representing the pending flush operation.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.StartPayload">
            <summary>
            Start writing an OData payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.StartResource(Microsoft.OData.ODataResource)">
            <summary>
            Start writing a resource.
            </summary>
            <param name="resource">The resource to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.EndResource(Microsoft.OData.ODataResource)">
            <summary>
            Finish writing a resource.
            </summary>
            <param name="resource">The resource to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.StartResourceSet(Microsoft.OData.ODataResourceSet)">
            <summary>
            Start writing a resourceSet.
            </summary>
            <param name="resourceSet">The resourceSet to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.StartDeltaResourceSet(Microsoft.OData.ODataDeltaResourceSet)">
            <summary>
            Start writing a delta resource set.
            </summary>
            <param name="deltaResourceSet">The delta resource set to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.StartDeletedResource(Microsoft.OData.ODataDeletedResource)">
            <summary>
            Start writing a deleted resource.
            </summary>
            <param name="deletedEntry">The deleted entry to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.StartDeltaLink(Microsoft.OData.ODataDeltaLinkBase)">
            <summary>
            Write a delta link or delta deleted link.
            </summary>
            <param name="deltaLink">The deleted entry to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.EndPayload">
            <summary>
            Finish writing an OData payload.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.EndResourceSet(Microsoft.OData.ODataResourceSet)">
            <summary>
            Finish writing a resourceSet.
            </summary>
            <param name="resourceSet">The resourceSet to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.EndDeltaResourceSet(Microsoft.OData.ODataDeltaResourceSet)">
            <summary>
            Finish writing a delta resource set.
            </summary>
            <param name="deltaResourceSet">The delta resource set to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.EndDeletedResource(Microsoft.OData.ODataDeletedResource)">
            <summary>
            Finish writing a deleted resource.
            </summary>
            <param name="deletedResource">The delta resource set to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WritePrimitiveValue(Microsoft.OData.ODataPrimitiveValue)">
            <summary>
            Write a primitive value within an untyped collection.
            </summary>
            <param name="primitiveValue">The primitive value to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteDeferredNestedResourceInfo(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            Write a deferred (non-expanded) nested resource info.
            </summary>
            <param name="nestedResourceInfo">The nested resource info to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.StartNestedResourceInfoWithContent(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            Start writing a nested resource info with content.
            </summary>
            <param name="nestedResourceInfo">The nested resource info to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.EndNestedResourceInfoWithContent(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            Finish writing a nested resource info with content.
            </summary>
            <param name="nestedResourceInfo">The nested resource info to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteEntityReferenceInNavigationLinkContent(Microsoft.OData.ODataNestedResourceInfo,Microsoft.OData.ODataEntityReferenceLink)">
            <summary>
            Write an entity reference link into a navigation link content.
            </summary>
            <param name="parentNestedResourceInfo">The parent navigation link which is being written around the entity reference link.</param>
            <param name="entityReferenceLink">The entity reference link to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.CreateResourceSetScope(Microsoft.OData.ODataResourceSet,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri,System.Boolean)">
            <summary>
            Create a new resource set scope.
            </summary>
            <param name="resourceSet">The resource set for the new scope.</param>
            <param name="navigationSource">The navigation source we are going to write resource set for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="skipWriting">true if the content of the scope to create should not be written.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
            <param name="isUndeclared">true if the resource set is for an undeclared property</param>
            <returns>The newly create scope.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.CreateDeltaResourceSetScope(Microsoft.OData.ODataDeltaResourceSet,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri,System.Boolean)">
            <summary>
            Create a new delta resource set scope.
            </summary>
            <param name="deltaResourceSet">The delta resource set for the new scope.</param>
            <param name="navigationSource">The navigation source we are going to write resource set for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="skipWriting">true if the content of the scope to create should not be written.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
            <param name="isUndeclared">true if the resource set is for an undeclared property</param>
            <returns>The newly create scope.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.CreateResourceScope(Microsoft.OData.ODataResource,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri,System.Boolean)">
            <summary>
            Create a new resource scope.
            </summary>
            <param name="resource">The resource for the new scope.</param>
            <param name="navigationSource">The navigation source we are going to write resource set for.</param>
            <param name="resourceType">The structured type for the resources in the resourceSet to be written (or null if the entity set base type should be used).</param>
            <param name="skipWriting">true if the content of the scope to create should not be written.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
            <param name="isUndeclared">true if the resource is for an undeclared property</param>
            <returns>The newly create scope.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.CreateDeletedResourceScope(Microsoft.OData.ODataDeletedResource,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmEntityType,System.Boolean,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri,System.Boolean)">
            <summary>
            Create a new resource scope.
            </summary>
            <param name="resource">The (deleted) resource for the new scope.</param>
            <param name="navigationSource">The navigation source we are going to write resource set for.</param>
            <param name="resourceType">The structured type for the resources in the resourceSet to be written (or null if the entity set base type should be used).</param>
            <param name="skipWriting">true if the content of the scope to create should not be written.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
            <param name="isUndeclared">true if the resource is for an undeclared property</param>
            <returns>The newly create scope.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.CreateDeltaLinkScope(Microsoft.OData.ODataDeltaLinkBase,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmEntityType,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri)">
            <summary>
            Create a new delta link scope.
            </summary>
            <param name="link">The link for the new scope.</param>
            <param name="navigationSource">The navigation source we are going to write entities for.</param>
            <param name="entityType">The entity type for the entries in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
            <returns>The newly create scope.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.GetResourceSerializationInfo(Microsoft.OData.ODataResourceBase)">
            <summary>
            Gets the serialization info for the given resource.
            </summary>
            <param name="resource">The resource to get the serialization info for.</param>
            <returns>The serialization info for the given resource.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.GetLinkSerializationInfo(Microsoft.OData.ODataItem)">
            <summary>
            Gets the serialization info for the given delta link.
            </summary>
            <param name="item">The resource to get the serialization info for.</param>
            <returns>The serialization info for the given resource.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.CreateNestedResourceInfoScope(Microsoft.OData.ODataWriterCore.WriterState,Microsoft.OData.ODataNestedResourceInfo,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri)">
            <summary>
            Creates a new nested resource info scope.
            </summary>
            <param name="writerState">The writer state for the new scope.</param>
            <param name="navLink">The nested resource info for the new scope.</param>
            <param name="navigationSource">The navigation source we are going to write entities for.</param>
            <param name="resourceType">The resource type for the items in the resourceSet to be written (or null if the resource set base type should be used).</param>
            <param name="skipWriting">true if the content of the scope to create should not be written.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
            <returns>The newly created nested resource info scope.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.PrepareResourceForWriteStart(Microsoft.OData.ODataWriterCore.ResourceScope,Microsoft.OData.ODataResource,System.Boolean,Microsoft.OData.SelectedPropertiesNode)">
            <summary>
            Place where derived writers can perform custom steps before the resource is writen, at the begining of WriteStartEntryImplementation.
            </summary>
            <param name="resourceScope">The ResourceScope.</param>
            <param name="resource">Resource to write.</param>
            <param name="writingResponse">True if writing response.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.PrepareDeletedResourceForWriteStart(Microsoft.OData.ODataWriterCore.DeletedResourceScope,Microsoft.OData.ODataDeletedResource,System.Boolean,Microsoft.OData.SelectedPropertiesNode)">
            <summary>
            Place where derived writers can perform custom steps before the deleted resource is writen, at the begining of WriteStartEntryImplementation.
            </summary>
            <param name="resourceScope">The ResourceScope.</param>
            <param name="deletedResource">Resource to write.</param>
            <param name="writingResponse">True if writing response.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.GetResourceType(Microsoft.OData.ODataResourceBase)">
            <summary>
            Gets the type of the resource and validates it against the model.
            </summary>
            <param name="resource">The resource to get the type for.</param>
            <returns>The validated structured type.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.GetResourceSetType(Microsoft.OData.ODataResourceSetBase)">
            <summary>
            Gets the element type of the resource set and validates it against the model.
            </summary>
            <param name="resourceSet">The resource set to get the element type for.</param>
            <returns>The validated structured element type.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.ValidateNoDeltaLinkForExpandedResourceSet(Microsoft.OData.ODataResourceSet)">
            <summary>
            Validates that the ODataResourceSet.DeltaLink is null for the given expanded resourceSet.
            </summary>
            <param name="resourceSet">The expanded resourceSet in question.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.VerifyCanWriteStartResourceSet(System.Boolean,Microsoft.OData.ODataResourceSet)">
            <summary>
            Verifies that calling WriteStart resourceSet is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
            <param name="resourceSet">Resource Set/collection to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteStartResourceSetImplementation(Microsoft.OData.ODataResourceSet)">
            <summary>
            Start writing a resourceSet - implementation of the actual functionality.
            </summary>
            <param name="resourceSet">The resource set to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.VerifyCanWriteStartDeltaResourceSet(System.Boolean,Microsoft.OData.ODataDeltaResourceSet)">
            <summary>
            Verifies that calling WriteStart deltaResourceSet is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
            <param name="deltaResourceSet">Resource Set/collection to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteStartDeltaResourceSetImplementation(Microsoft.OData.ODataDeltaResourceSet)">
            <summary>
            Start writing a delta resource set - implementation of the actual functionality.
            </summary>
            <param name="deltaResourceSet">The delta resource Set to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.VerifyCanWriteStartResource(System.Boolean,Microsoft.OData.ODataResource)">
            <summary>
            Verifies that calling WriteStart resource is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
            <param name="resource">Resource/item to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.VerifyCanWriteStartDeletedResource(System.Boolean,Microsoft.OData.ODataDeletedResource)">
            <summary>
            Verifies that calling WriteDeletedResource is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
            <param name="resource">Resource/item to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteStartResourceImplementation(Microsoft.OData.ODataResource)">
            <summary>
            Start writing a resource - implementation of the actual functionality.
            </summary>
            <param name="resource">Resource/item to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteStartDeletedResourceImplementation(Microsoft.OData.ODataDeletedResource)">
            <summary>
            Start writing a delta deleted resource - implementation of the actual functionality.
            </summary>
            <param name="resource">Resource/item to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteDeltaLinkImplementation(Microsoft.OData.ODataDeltaLinkBase)">
            <summary>
            Start writing a delta link or delta delted link - implementation of the actual functionality.
            </summary>
            <param name="deltaLink">Delta (deleted) link to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.VerifyCanWriteStartNestedResourceInfo(System.Boolean,Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            Verifies that calling WriteStart nested resource info is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
            <param name="nestedResourceInfo">Navigation link to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteStartNestedResourceInfoImplementation(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            Start writing a nested resource info - implementation of the actual functionality.
            </summary>
            <param name="nestedResourceInfo">Navigation link to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.VerifyCanWritePrimitive(System.Boolean,Microsoft.OData.ODataPrimitiveValue)">
            <summary>
            Verifies that calling WritePrimitive is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
            <param name="primitiveValue">Primitive value to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WritePrimitiveValueImplementation(Microsoft.OData.ODataPrimitiveValue)">
            <summary>
            Write primitive value within an untyped collection - implementation of the actual functionality.
            </summary>
            <param name="primitiveValue">Primitive value to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.VerifyCanWriteEnd(System.Boolean)">
            <summary>
            Verify that calling WriteEnd is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteEndImplementation">
            <summary>
            Finish writing a resourceSet/resource/nested resource info.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.MarkNestedResourceInfoAsProcessed(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            Marks the navigation currently being written as processed in the parent entity's metadata builder.
            This is needed so that at the end of writing the resource we can query for all the unwritten navigation properties
            defined on the entity type and write out their metadata in fullmetadata mode.
            </summary>
            <param name="link">The nested resource info being written.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.VerifyCanWriteEntityReferenceLink(Microsoft.OData.ODataEntityReferenceLink,System.Boolean)">
            <summary>
            Verifies that calling WriteEntityReferenceLink is valid.
            </summary>
            <param name="entityReferenceLink">The entity reference link to write.</param>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.VerifyCanWriteLink(System.Boolean,Microsoft.OData.ODataDeltaLinkBase)">
            <summary>
            Verifies that calling Write(Deleted)DeltaLink is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
            <param name="deltaLink">Delta link to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.WriteEntityReferenceLinkImplementation(Microsoft.OData.ODataEntityReferenceLink)">
            <summary>
            Write an entity reference link.
            </summary>
            <param name="entityReferenceLink">The entity reference link to write.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.VerifyCanFlush(System.Boolean)">
            <summary>
            Verifies that calling Flush is valid.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.VerifyCallAllowed(System.Boolean)">
            <summary>
            Verifies that a call is allowed to the writer.
            </summary>
            <param name="synchronousCall">true if the call is to be synchronous; false otherwise.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.VerifyWritingDelta">
            <summary>
            Verifies that the writer is a delta writer.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.ThrowODataException(System.String,Microsoft.OData.ODataItem)">
            <summary>
            Enters the 'ExceptionThrown' state and then throws an ODataException with the specified error message.
            </summary>
            <param name="errorMessage">The error message for the exception.</param>
            <param name="item">The OData item to associate with the 'ExceptionThrown' state.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.StartPayloadInStartState">
            <summary>
            Checks whether we are currently writing the first top-level element; if so call StartPayload
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.CheckForNestedResourceInfoWithContent(Microsoft.OData.ODataPayloadKind,Microsoft.OData.ODataItem)">
            <summary>
            Checks whether we are currently writing a nested resource info and switches to NestedResourceInfoWithContent state if we do.
            </summary>
            <param name="contentPayloadKind">
            What kind of payload kind is being written as the content of a nested resource info.
            Only Resource Set, Resource or EntityReferenceLink are allowed.
            </param>
            <param name="contentPayload">The ODataResource or ODataResourceSet to write, or null for ODataEntityReferenceLink.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.ValidateResourceForResourceSet(Microsoft.OData.ODataResourceBase,Microsoft.OData.ODataWriterCore.ResourceBaseScope)">
            <summary>
            Verifies that the (deleted) resource has the correct type for the (delta) resource set.
            </summary>
            <param name="resource">The resource to be validated.</param>
            <param name="resourceScope">The scope for the resource to be validated.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.HasKeyProperties(Microsoft.OData.Edm.IEdmEntityType,System.Collections.Generic.IEnumerable{Microsoft.OData.ODataProperty})">
            <summary>
            Determines whether a collection contains all key properties for a particular entity type.
            </summary>
            <param name="entityType">The entity type.</param>
            <param name="properties">The set of properties.</param>
            <returns>True if the set of properties include all key properties for the entity type; otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.InterceptException(System.Action)">
            <summary>
            Catch any exception thrown by the action passed in; in the exception case move the writer into
            state ExceptionThrown and then rethrow the exception.
            </summary>
            <param name="action">The action to execute.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.IncreaseResourceDepth">
            <summary>
            Increments the nested resource count by one and fails if the new value exceeds the maxiumum nested resource depth limit.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.DecreaseResourceDepth">
            <summary>
            Decrements the nested resource count by one.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.NotifyListener(Microsoft.OData.ODataWriterCore.WriterState)">
            <summary>
            Notifies the implementer of the <see cref="T:Microsoft.OData.IODataReaderWriterListener"/> interface of relevant state changes in the writer.
            </summary>
            <param name="newState">The new writer state.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.EnterScope(Microsoft.OData.ODataWriterCore.WriterState,Microsoft.OData.ODataItem)">
            <summary>
            Enter a new writer scope; verifies that the transition from the current state into new state is valid
            and attaches the item to the new scope.
            </summary>
            <param name="newState">The writer state to transition into.</param>
            <param name="item">The item to associate with the new scope.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.AppendEntitySetKeySegment(Microsoft.OData.UriParser.ODataPath,System.Boolean)">
            <summary>
            Attempt to append key segment to ODataPath.
            </summary>
            <param name="odataPath">The ODataPath to be evaluated.</param>
            <param name="throwIfFail">Whether throw if fails to append key segment.</param>
            <returns>The new odata path.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.LeaveScope">
            <summary>
            Leave the current writer scope and return to the previous scope.
            When reaching the top-level replace the 'Started' scope with a 'Completed' scope.
            </summary>
            <remarks>Note that this method is never called once an error has been written or a fatal exception has been thrown.</remarks>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.PromoteNestedResourceInfoScope(Microsoft.OData.ODataItem)">
            <summary>
            Promotes the current nested resource info scope to a nested resource info scope with content.
            </summary>
            <param name="content">The nested content to write. May be of either ODataResource or ODataResourceSet type.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.ValidateTransition(Microsoft.OData.ODataWriterCore.WriterState)">
            <summary>
            Verify that the transition from the current state into new state is valid .
            </summary>
            <param name="newState">The new writer state to transition into.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.PushScope(Microsoft.OData.ODataWriterCore.WriterState,Microsoft.OData.ODataItem,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri)">
            <summary>
            Create a new writer scope.
            </summary>
            <param name="state">The writer state of the scope to create.</param>
            <param name="item">The item attached to the scope to create.</param>
            <param name="navigationSource">The navigation source we are going to write resource set for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the navigationSource base type should be used).</param>
            <param name="skipWriting">true if the content of the scope to create should not be written.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The OdataUri info of this scope.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.IsUndeclared(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            Test to see if <paramref name="nestedResourceInfo"/> for a complex property or a collection of complex property, or a navigation property is declared or not.
            </summary>
            <param name="nestedResourceInfo">The nested info in question</param>
            <returns>true if the nested info is undeclared; false if it is not, or if it cannot be determined</returns>
        </member>
        <member name="T:Microsoft.OData.ODataWriterCore.ScopeStack">
            <summary>
            Lightweight wrapper for the stack of scopes which exposes a few helper properties for getting parent scopes.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.ScopeStack.scopes">
            <summary>
            Use a list to store the scopes instead of a true stack so that parent/grandparent lookups will be fast.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.ScopeStack.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.OData.ODataWriterCore.ScopeStack"/> class.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.ScopeStack.Count">
            <summary>
            Gets the count of items in the stack.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.ScopeStack.Parent">
            <summary>
            Gets the scope below the current scope on top of the stack.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.ScopeStack.ParentOfParent">
            <summary>
            Gets the scope below the parent of the current scope on top of the stack.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.ScopeStack.ParentOrNull">
            <summary>
            Gets the scope below the current scope on top of the stack or null if there is only one item on the stack or the stack is empty.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.ScopeStack.Push(Microsoft.OData.ODataWriterCore.Scope)">
            <summary>
            Pushes the specified scope onto the stack.
            </summary>
            <param name="scope">The scope.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.ScopeStack.Pop">
            <summary>
            Pops the current scope off the stack.
            </summary>
            <returns>The popped scope.</returns>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.ScopeStack.Peek">
            <summary>
            Peeks at the current scope on the top of the stack.
            </summary>
            <returns>The current scope at the top of the stack.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataWriterCore.Scope">
            <summary>
            A writer scope; keeping track of the current writer state and an item associated with this state.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.Scope.state">
            <summary>The writer state of this scope.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.Scope.item">
            <summary>The item attached to this scope.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.Scope.skipWriting">
            <summary>Set to true if the content of the scope should not be written.</summary>
            <remarks>This is used when writing navigation links which were not projected on the owning resource.</remarks>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.Scope.selectedProperties">
            <summary>The selected properties for the current scope.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.Scope.navigationSource">
            <summary>The navigation source we are going to write entities for.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.Scope.resourceType">
            <summary>The structured type for the resources in the resourceSet to be written (or null if the entity set base type should be used).</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.Scope.odataUri">
            <summary>The odata uri info for current scope.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.Scope.#ctor(Microsoft.OData.ODataWriterCore.WriterState,Microsoft.OData.ODataItem,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri)">
            <summary>
            Constructor creating a new writer scope.
            </summary>
            <param name="state">The writer state of this scope.</param>
            <param name="item">The item attached to this scope.</param>
            <param name="navigationSource">The navigation source we are going to write resource set for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="skipWriting">true if the content of this scope should not be written.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.Scope.ResourceType">
            <summary>
            The structured type for the items in the resource set to be written (or null if the entity set base type should be used).
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.Scope.State">
            <summary>
            The writer state of this scope.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.Scope.Item">
            <summary>
            The item attached to this scope.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.Scope.NavigationSource">
            <summary>The navigation source we are going to write entities for.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.Scope.SelectedProperties">
            <summary>The selected properties for the current scope.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.Scope.ODataUri">
            <summary>The odata Uri for the current scope.</summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.Scope.SkipWriting">
            <summary>
            Set to true if the content of this scope should not be written.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataWriterCore.ResourceSetBaseScope">
            <summary>
            A base scope for a resourceSet.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.ResourceSetBaseScope.serializationInfo">
            <summary>The serialization info for the current resourceSet.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.ResourceSetBaseScope.resourceTypeValidator">
            <summary>
            The <see cref="T:Microsoft.OData.ResourceSetWithoutExpectedTypeValidator"/> to use for entries in this resourceSet.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.ResourceSetBaseScope.resourceCount">
            <summary>The number of entries in this resourceSet seen so far.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.ResourceSetBaseScope.instanceAnnotationWriteTracker">
            <summary>Maintains the write status for each annotation using its key.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.ResourceSetBaseScope.typeContext">
            <summary>The type context to answer basic questions regarding the type info of the resource.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.ResourceSetBaseScope.#ctor(Microsoft.OData.ODataWriterCore.WriterState,Microsoft.OData.ODataResourceSetBase,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri)">
            <summary>
            Constructor to create a new resource set scope.
            </summary>
            <param name="writerState">The writer state for the scope.</param>
            <param name="resourceSet">The resourceSet for the new scope.</param>
            <param name="navigationSource">The navigation source we are going to write resource set for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="skipWriting">true if the content of the scope to create should not be written.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.ResourceSetBaseScope.ResourceCount">
            <summary>
            The number of entries in this resource Set seen so far.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.ResourceSetBaseScope.InstanceAnnotationWriteTracker">
            <summary>
            Tracks the write status of the annotations.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.ResourceSetBaseScope.ResourceTypeValidator">
            <summary>
            Validator for resource type.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.ResourceSetBaseScope.GetOrCreateTypeContext(System.Boolean)">
            <summary>
            Gets or creates the type context to answer basic questions regarding the type info of the resource.
            </summary>
            <param name="writingResponse">True if writing a response payload, false otherwise.</param>
            <returns>The type context to answer basic questions regarding the type info of the resource.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataWriterCore.ResourceSetScope">
            <summary>
            A scope for a resource set.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.ResourceSetScope.#ctor(Microsoft.OData.ODataResourceSet,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri)">
            <summary>
            Constructor to create a new resource set scope.
            </summary>
            <param name="item">The resource set for the new scope.</param>
            <param name="navigationSource">The navigation source we are going to write resource set for.</param>
            <param name="resourceType">The structured type of the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="skipWriting">true if the content of the scope to create should not be written.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
        </member>
        <member name="T:Microsoft.OData.ODataWriterCore.DeltaResourceSetScope">
            <summary>
            A scope for a delta resource set.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.DeltaResourceSetScope.#ctor(Microsoft.OData.ODataDeltaResourceSet,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri)">
            <summary>
            Constructor to create a new resource set scope.
            </summary>
            <param name="item">The resource set for the new scope.</param>
            <param name="navigationSource">The navigation source we are going to write resource set for.</param>
            <param name="resourceType">The structured type of the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.DeltaResourceSetScope.ContextUriInfo">
            <summary>
            The context uri info created for this scope.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ODataWriterCore.ResourceBaseScope">
            <summary>
            A base scope for a resource.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.ResourceBaseScope.duplicatePropertyNameChecker">
            <summary>Checker to detect duplicate property names.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.ResourceBaseScope.serializationInfo">
            <summary>The serialization info for the current resource.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.ResourceBaseScope.resourceTypeFromMetadata">
            <summary>The resource type which was derived from the model (may be either the same as structured type or its base type.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.ResourceBaseScope.typeContext">
            <summary>The type context to answer basic questions regarding the type info of the resource.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.ResourceBaseScope.instanceAnnotationWriteTracker">
            <summary>Maintains the write status for each annotation using its key.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.ResourceBaseScope.#ctor(Microsoft.OData.ODataWriterCore.WriterState,Microsoft.OData.ODataResourceBase,Microsoft.OData.ODataResourceSerializationInfo,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,Microsoft.OData.ODataMessageWriterSettings,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri)">
            <summary>
            Constructor to create a new resource scope.
            </summary>
            <param name="state">The writer state of this scope.</param>
            <param name="resource">The resource for the new scope.</param>
            <param name="serializationInfo">The serialization info for the current resource.</param>
            <param name="navigationSource">The navigation source we are going to write resource set for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="skipWriting">true if the content of the scope to create should not be written.</param>
            <param name="writerSettings">The <see cref="T:Microsoft.OData.ODataMessageWriterSettings"/> The settings of the writer.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.ResourceBaseScope.ResourceTypeFromMetadata">
            <summary>
            The structured type which was derived from the model, i.e. the expected structured type, which may be either the same as structured type or its base type.
            For example, if we are writing a resource set of Customers and the current resource is of DerivedCustomer, this.ResourceTypeFromMetadata would be Customer and this.ResourceType would be DerivedCustomer.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.ResourceBaseScope.SerializationInfo">
            <summary>
            The serialization info for the current resource.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.ResourceBaseScope.DuplicatePropertyNameChecker">
            <summary>
            Checker to detect duplicate property names.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ODataWriterCore.ResourceBaseScope.InstanceAnnotationWriteTracker">
            <summary>
            Tracks the write status of the annotations.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.ResourceBaseScope.GetOrCreateTypeContext(System.Boolean)">
            <summary>
            Gets or creates the type context to answer basic questions regarding the type info of the resource.
            </summary>
            <param name="writingResponse">True if writing a response payload, false otherwise.</param>
            <returns>The type context to answer basic questions regarding the type info of the resource.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataWriterCore.ResourceScope">
            <summary>
            A base scope for a resource.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.ResourceScope.#ctor(Microsoft.OData.ODataResource,Microsoft.OData.ODataResourceSerializationInfo,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,Microsoft.OData.ODataMessageWriterSettings,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri)">
            <summary>
            Constructor to create a new resource scope.
            </summary>
            <param name="resource">The resource for the new scope.</param>
            <param name="serializationInfo">The serialization info for the current resource.</param>
            <param name="navigationSource">The navigation source we are going to write resource set for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="skipWriting">true if the content of the scope to create should not be written.</param>
            <param name="writerSettings">The <see cref="T:Microsoft.OData.ODataMessageWriterSettings"/> The settings of the writer.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
        </member>
        <member name="T:Microsoft.OData.ODataWriterCore.DeletedResourceScope">
            <summary>
            Base class for DeletedResourceScope.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.DeletedResourceScope.#ctor(Microsoft.OData.ODataDeletedResource,Microsoft.OData.ODataResourceSerializationInfo,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmEntityType,Microsoft.OData.ODataMessageWriterSettings,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri)">
            <summary>
            Constructor to create a new resource scope.
            </summary>
            <param name="resource">The resource for the new scope.</param>
            <param name="serializationInfo">The serialization info for the current resource.</param>
            <param name="navigationSource">The navigation source we are going to write entities for.</param>
            <param name="entityType">The entity type for the entries in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="writerSettings">The <see cref="T:Microsoft.OData.ODataMessageWriterSettings"/> The settings of the writer.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
        </member>
        <member name="T:Microsoft.OData.ODataWriterCore.DeltaLinkScope">
            <summary>
            A scope for a delta link.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.DeltaLinkScope.serializationInfo">
            <summary>The serialization info for the current link.</summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.DeltaLinkScope.fakeEntityType">
            <summary>
            Fake entity type to be passed to context.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ODataWriterCore.DeltaLinkScope.typeContext">
            <summary>The type context to answer basic questions regarding the type info of the link.</summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.DeltaLinkScope.#ctor(Microsoft.OData.ODataWriterCore.WriterState,Microsoft.OData.ODataItem,Microsoft.OData.ODataResourceSerializationInfo,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmEntityType,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri)">
            <summary>
            Constructor to create a new delta link scope.
            </summary>
            <param name="state">The writer state of this scope.</param>
            <param name="link">The link for the new scope.</param>
            <param name="serializationInfo">The serialization info for the current resource.</param>
            <param name="navigationSource">The navigation source we are going to write entities for.</param>
            <param name="entityType">The entity type for the entries in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.DeltaLinkScope.GetOrCreateTypeContext(System.Boolean)">
            <summary>
            Gets or creates the type context to answer basic questions regarding the type info of the resource.
            </summary>
            <param name="writingResponse">Whether writing Json payload. Should always be true.</param>
            <returns>The type context to answer basic questions regarding the type info of the resource.</returns>
        </member>
        <member name="T:Microsoft.OData.ODataWriterCore.NestedResourceInfoScope">
            <summary>
            A scope for a nested resource info.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.NestedResourceInfoScope.#ctor(Microsoft.OData.ODataWriterCore.WriterState,Microsoft.OData.ODataNestedResourceInfo,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataUri)">
            <summary>
            Constructor to create a new nested resource info scope.
            </summary>
            <param name="writerState">The writer state for the new scope.</param>
            <param name="navLink">The nested resource info for the new scope.</param>
            <param name="navigationSource">The navigation source we are going to write resource set for.</param>
            <param name="resourceType">The structured type for the items in the resource set to be written (or null if the entity set base type should be used).</param>
            <param name="skipWriting">true if the content of the scope to create should not be written.</param>
            <param name="selectedProperties">The selected properties of this scope.</param>
            <param name="odataUri">The ODataUri info of this scope.</param>
        </member>
        <member name="M:Microsoft.OData.ODataWriterCore.NestedResourceInfoScope.Clone(Microsoft.OData.ODataWriterCore.WriterState)">
            <summary>
            Clones this nested resource info scope and sets a new writer state.
            </summary>
            <param name="newWriterState">The <see cref="T:Microsoft.OData.ODataWriterCore.WriterState"/> to set.</param>
            <returns>The cloned nested resource info scope with the specified writer state.</returns>
        </member>
        <member name="T:Microsoft.OData.PrimitiveConverter">
            <summary>
            Handles serialization and deserialization for a specified set of primitive types.
            </summary>
        </member>
        <member name="F:Microsoft.OData.PrimitiveConverter.geographyTypeConverter">
            <summary>Instance of GeographyTypeConverter to register for all Geography types.</summary>
        </member>
        <member name="F:Microsoft.OData.PrimitiveConverter.geometryTypeConverter">
            <summary>Instance of GeographyTypeConverter to register for all Geography types.</summary>
        </member>
        <member name="F:Microsoft.OData.PrimitiveConverter.primitiveConverter">
            <summary>Set of type converters that implement their own conversion using IPrimitiveTypeConverter.</summary>
        </member>
        <member name="F:Microsoft.OData.PrimitiveConverter.spatialPrimitiveTypeConverters">
            <summary>Set of type converters that are known to this instance which convert values based on the ISpatial type.</summary>
        </member>
        <member name="M:Microsoft.OData.PrimitiveConverter.#ctor(System.Collections.Generic.KeyValuePair{System.Type,Microsoft.OData.IPrimitiveTypeConverter}[])">
            <summary>
            Create a new instance of the converter.
            </summary>
            <param name="spatialPrimitiveTypeConverters">Set of type converters to register for the ISpatial based values.</param>
        </member>
        <member name="P:Microsoft.OData.PrimitiveConverter.Instance">
            <summary>PrimitiveConverter instance for use by the Atom and Json readers and writers.</summary>
        </member>
        <member name="M:Microsoft.OData.PrimitiveConverter.WriteJsonLight(System.Object,Microsoft.OData.Json.IJsonWriter)">
            <summary>
            Try to write the JSON Lite representation of <paramref name="instance"/> using a registered primitive type converter
            </summary>
            <param name="instance">Object to convert to JSON representation.</param>
            <param name="jsonWriter">JsonWriter instance to write to.</param>
        </member>
        <member name="M:Microsoft.OData.PrimitiveConverter.TryGetConverter(System.Type,Microsoft.OData.IPrimitiveTypeConverter@)">
            <summary>
            Get the primitive type converter for the given type.
            </summary>
            <param name="type">Clr type whose primitive type converter needs to be returned.</param>
            <param name="primitiveTypeConverter">Converter for the given clr type.</param>
            <returns>True if a converter was found for the given type, otherwise returns false.</returns>
        </member>
        <member name="T:Microsoft.OData.PropertyAndAnnotationCollector">
            <summary>
            This class has the following responsibilities:
              1) Validates that no duplicate OData scope/property annotations exist.
                 Duplicate custom scope/property annotations are allowed.
              2) Collects OData and custom scope/property annotations.
              3) Validates that no duplicate properties exist.
              4) Validates that property annotations come in group and immediately precede the annotated property.
            </summary>
            <remarks>
            Scope annotations are those that do not apply to specific properties, and start directly with "@".
            </remarks>
        </member>
        <member name="F:Microsoft.OData.PropertyAndAnnotationCollector.throwOnDuplicateProperty">
            <summary>
            Whether to enable duplicate property validation so that an exception is thrown when detected.
            </summary>
            <remarks>
            If disabled and duplicate properties exist, the behavior is unspecified.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.PropertyAndAnnotationCollector.odataScopeAnnotations">
            <summary>
            Caches OData scope annotations.
            </summary>
        </member>
        <member name="F:Microsoft.OData.PropertyAndAnnotationCollector.customScopeAnnotations">
            <summary>
            Caches custom scope annotations.
            </summary>
        </member>
        <member name="F:Microsoft.OData.PropertyAndAnnotationCollector.propertyData">
            <summary>
            Caches property data.
            </summary>
        </member>
        <member name="M:Microsoft.OData.PropertyAndAnnotationCollector.#ctor(System.Boolean)">
            <summary>
            Creates a PropertyAndAnnotationCollector instance.
            </summary>
            <param name="throwOnDuplicateProperty">Whether to enable duplicate property validation.</param>
        </member>
        <member name="T:Microsoft.OData.PropertyAndAnnotationCollector.PropertyState">
            <summary>
            Processing state of a property.
            </summary>
            <remarks>
            Models a state machine.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.PropertyAndAnnotationCollector.PropertyState.AnnotationSeen">
            <summary>
            Initial state or when property annotations have been processed.
            </summary>
        </member>
        <member name="F:Microsoft.OData.PropertyAndAnnotationCollector.PropertyState.SimpleProperty">
            <summary>
            Non-nested non-navigation property value has been processed.
            </summary>
        </member>
        <member name="F:Microsoft.OData.PropertyAndAnnotationCollector.PropertyState.NavigationProperty">
            <summary>
            1) Nested property value has been processed.
            2) Navigation property value has been processed.
            3) Association link has been processed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.PropertyAndAnnotationCollector.CheckForDuplicatePropertyNames(Microsoft.OData.ODataProperty)">
            <summary>
            Validates that no duplicate property exists.
            </summary>
            <param name="property">The property to be validated.</param>
        </member>
        <member name="M:Microsoft.OData.PropertyAndAnnotationCollector.ValidatePropertyUniquenessOnNestedResourceInfoStart(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            Validates that no duplicate property exists when the nested resource info has started,
            but we don't know yet if it's expanded or not.
            </summary>
            <param name="nestedResourceInfo">The nested resource info to be validated.</param>
        </member>
        <member name="M:Microsoft.OData.PropertyAndAnnotationCollector.ValidatePropertyUniquenessAndGetAssociationLink(Microsoft.OData.ODataNestedResourceInfo)">
            <summary>
            Validates that no duplicate property exists and gets the corresponding association link if available.
            </summary>
            <param name="nestedResourceInfo">The nested resource info to be checked.</param>
            <returns>Corresponding association link if available.</returns>
        </member>
        <member name="M:Microsoft.OData.PropertyAndAnnotationCollector.ValidatePropertyOpenForAssociationLinkAndGetNestedResourceInfo(System.String,System.Uri)">
            <summary>
            Validates that no duplicate "odata.assocationLink" annotation exists and gets the corresponding
            ODataNestedResourceInfo of the annotated property if available.
            </summary>
            <param name="propertyName">Name of the annotated property.</param>
            <param name="associationLinkUrl">Annotation value.</param>
            <returns>Corresponding ODataNestedResourceInfo of the annotated property if available.</returns>
        </member>
        <member name="M:Microsoft.OData.PropertyAndAnnotationCollector.Reset">
            <summary>
            Resets to initial state for reuse.
            </summary>
        </member>
        <member name="M:Microsoft.OData.PropertyAndAnnotationCollector.AddODataScopeAnnotation(System.String,System.Object)">
            <summary>
            Adds an OData scope annotation.
            </summary>
            <param name="annotationName">Name of the annotation.</param>
            <param name="annotationValue">Value of the annotation.</param>
            <remarks>
            Scope annotations are those that do not apply to specific properties, and start directly with "@".
            </remarks>
        </member>
        <member name="M:Microsoft.OData.PropertyAndAnnotationCollector.AddCustomScopeAnnotation(System.String,System.Object)">
            <summary>
            Adds a custom scope annotation.
            </summary>
            <param name="annotationName">Name of the annotation.</param>
            <param name="annotationValue">Value of the annotation.</param>
            <remarks>
            Scope annotations are those that do not apply to specific properties, and start directly with "@".
            </remarks>
        </member>
        <member name="M:Microsoft.OData.PropertyAndAnnotationCollector.GetODataScopeAnnotation">
            <summary>
            Gets OData scope annotations.
            </summary>
            <returns>OData scope annotation key value pairs.</returns>
            <remarks>
            Scope annotations are those that do not apply to specific properties, and start directly with "@".
            </remarks>
        </member>
        <member name="M:Microsoft.OData.PropertyAndAnnotationCollector.GetCustomScopeAnnotation">
            <summary>
            Gets custom scope annotations.
            </summary>
            <returns>Custom scope annotation key value pairs.</returns>
            <remarks>
            Scope annotations are those that do not apply to specific properties, and start directly with "@".
            </remarks>
        </member>
        <member name="M:Microsoft.OData.PropertyAndAnnotationCollector.AddODataPropertyAnnotation(System.String,System.String,System.Object)">
            <summary>
            Adds an OData property annotation.
            </summary>
            <param name="propertyName">Name of the property.</param>
            <param name="annotationName">Name of the annotation.</param>
            <param name="annotationValue">Value of the annotation.</param>
        </member>
        <member name="M:Microsoft.OData.PropertyAndAnnotationCollector.AddCustomPropertyAnnotation(System.String,System.String,System.Object)">
            <summary>
            Adds a custom property annotation.
            </summary>
            <param name="propertyName">Name of the property.</param>
            <param name="annotationName">Name of the annotation.</param>
            <param name="annotationValue">Value of the annotation.</param>
        </member>
        <member name="M:Microsoft.OData.PropertyAndAnnotationCollector.GetODataPropertyAnnotations(System.String)">
            <summary>
            Returns OData annotations for a property.
            </summary>
            <param name="propertyName">Name of the property.</param>
            <returns>OData property annotation name value pairs.</returns>
        </member>
        <member name="M:Microsoft.OData.PropertyAndAnnotationCollector.GetCustomPropertyAnnotations(System.String)">
            <summary>
            Returns custom annotations for a property.
            </summary>
            <param name="propertyName">Name of the property.</param>
            <returns>Custom property annotation name value pairs.</returns>
        </member>
        <member name="M:Microsoft.OData.PropertyAndAnnotationCollector.MarkPropertyAsProcessed(System.String)">
            <summary>
            Marks a property to note that all its annotations should have been processed by now.
            </summary>
            <param name="propertyName">Name of the property.</param>
            <remarks>
            It's an error if more annotations for a marked property are found later in the payload.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.PropertyAndAnnotationCollector.CheckIfPropertyOpenForAnnotations(System.String,System.String)">
            <summary>
            Validates that the property is open to be added more annotations.
            </summary>
            <param name="propertyName">Name of the property.</param>
            <param name="annotationName">Name of the annotation.</param>
            <remarks>
            A property is no longer open for annotations when it has been marked as processed.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.PropertyAndAnnotationCollector.CheckNestedResourceInfoDuplicateNameForExistingDuplicationRecord(System.String,Microsoft.OData.PropertyAndAnnotationCollector.PropertyData)">
            <summary>
            Validates that no duplicate property exists (dry run).
            </summary>
            <param name="propertyName">Name of the property.</param>
            <param name="propertyData">Corresponding property data.</param>
        </member>
        <member name="M:Microsoft.OData.PropertyAndAnnotationCollector.PropertyData.#ctor(Microsoft.OData.PropertyAndAnnotationCollector.PropertyState)">
            <summary>
            Constructor.
            </summary>
            <param name="propertyState">Initial property state.</param>
        </member>
        <member name="P:Microsoft.OData.PropertyAndAnnotationCollector.PropertyData.State">
            <summary>
            Current processing state.
            </summary>
        </member>
        <member name="P:Microsoft.OData.PropertyAndAnnotationCollector.PropertyData.NestedResourceInfo">
            <summary>
            The nested resource info of the property if found.
            </summary>
        </member>
        <member name="P:Microsoft.OData.PropertyAndAnnotationCollector.PropertyData.AssociationLinkUrl">
            <summary>
            The association link for the property if found.
            </summary>
        </member>
        <member name="P:Microsoft.OData.PropertyAndAnnotationCollector.PropertyData.ODataAnnotations">
            <summary>
            OData property annotations.
            </summary>
            <remarks>
            The key is the fully qualified annotation name like "odata.type".
            The value is the parsed value of the annotation, which is annotation specific.
            </remarks>
        </member>
        <member name="P:Microsoft.OData.PropertyAndAnnotationCollector.PropertyData.CustomAnnotations">
            <summary>
            Custom property annotations.
            </summary>
            <remarks>
            The key is the fully qualified annotation name.
            The value is the parsed value of the annotation, which is annotation specific.
            </remarks>
        </member>
        <member name="P:Microsoft.OData.PropertyAndAnnotationCollector.PropertyData.Processed">
            <summary>
            Denotes whether the property has been marked as processed.
            </summary>
        </member>
        <member name="T:Microsoft.OData.PropertyCache">
            <summary>
            The cache to store property info during serialization.
            </summary>
        </member>
        <member name="T:Microsoft.OData.PropertyCacheHandler">
            <summary>
            Manage PropertyCache for ODataResourceSet in serialization.
            One ODataResourceSet has one PropertyCache.
            ODataResourceSets with same resource type share the same PropertyCache.
            </summary>
        </member>
        <member name="T:Microsoft.OData.PropertyMetadataTypeInfo">
            <summary>
            The class to present a property type info which is resolved from metadata.
            </summary>
        </member>
        <member name="T:Microsoft.OData.PropertySerializationInfo">
            <summary>
            The class to hold all the info needed for a property in serialization.
            </summary>
        </member>
        <member name="P:Microsoft.OData.PropertySerializationInfo.PropertyName">
            <summary>Name of current property.</summary>
        </member>
        <member name="P:Microsoft.OData.PropertySerializationInfo.ValueType">
            <summary>
            The type info resolved from property value.
            The value type info might change for a property in different ODataResource of an ODataResourceSet.
            </summary>
        </member>
        <member name="P:Microsoft.OData.PropertySerializationInfo.MetadataType">
            <summary>The type info resolved from metadata.</summary>
        </member>
        <member name="P:Microsoft.OData.PropertySerializationInfo.TypeNameToWrite">
            <summary>
            The value of '@odata.type' for current property, if the value is null, no type annotation needed.
            </summary>
        </member>
        <member name="P:Microsoft.OData.PropertySerializationInfo.WireName">
            <summary>The property name written in the wire.</summary>
        </member>
        <member name="P:Microsoft.OData.PropertySerializationInfo.IsTopLevel">
            <summary>Whether the property is top level.</summary>
        </member>
        <member name="T:Microsoft.OData.PropertyValueTypeInfo">
            <summary>
            The class to present the property type info which is resolved from property value.
            </summary>
        </member>
        <member name="T:Microsoft.OData.RawValueWriter">
            <summary>
            Class that hanldes writing top level raw values to a stream.
            </summary>
        </member>
        <member name="F:Microsoft.OData.RawValueWriter.settings">
            <summary>
            Writer settings.
            </summary>
        </member>
        <member name="F:Microsoft.OData.RawValueWriter.stream">
            <summary>
            Underlying stream.
            </summary>
        </member>
        <member name="F:Microsoft.OData.RawValueWriter.encoding">
            <summary>
            Encoding that the TextWriter should use.
            </summary>
        </member>
        <member name="F:Microsoft.OData.RawValueWriter.textWriter">
            <summary>
            TextWriter instance for writing values.
            </summary>
        </member>
        <member name="F:Microsoft.OData.RawValueWriter.jsonWriter">
            <summary>
            JsonWriter instance for writing values.
            </summary>
        </member>
        <member name="M:Microsoft.OData.RawValueWriter.#ctor(Microsoft.OData.ODataMessageWriterSettings,System.IO.Stream,System.Text.Encoding)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.OData.RawValueWriter"/> class.
            Initializes the TextWriter.
            </summary>
            <param name="settings">The writer settings.</param>
            <param name="stream">The stream. It should be the same underlying stream the TextWriter uses.</param>
            <param name="encoding">The encoding to use in the text writer.</param>
        </member>
        <member name="P:Microsoft.OData.RawValueWriter.TextWriter">
            <summary>
            Gets the text writer.
            </summary>
        </member>
        <member name="P:Microsoft.OData.RawValueWriter.JsonWriter">
            <summary>
            Gets the json writer.
            </summary>
        </member>
        <member name="M:Microsoft.OData.RawValueWriter.Dispose">
            <summary>
            Disposes the RawValueWriter. It flushes itself and then disposes its inner TextWriter.
            </summary>
        </member>
        <member name="M:Microsoft.OData.RawValueWriter.Start">
            <summary>
            Start writing a raw output. This should only be called once.
            </summary>
        </member>
        <member name="M:Microsoft.OData.RawValueWriter.End">
            <summary>
            End the writing of a raw output. This should be the last thing called.
            </summary>
        </member>
        <member name="M:Microsoft.OData.RawValueWriter.WriteRawValue(System.Object)">
            <summary>
            Converts the specified <paramref name="value"/> into its raw format and writes it to the output.
            The value has to be of enumeration or primitive type. Only one WriteRawValue call should be made before this object gets disposed.
            </summary>
            <param name="value">The (non-binary) value to write.</param>
            <remarks>We do not accept binary values here; WriteBinaryValue should be used for binary data.</remarks>
        </member>
        <member name="M:Microsoft.OData.RawValueWriter.Flush">
            <summary>
            Flushes the RawValueWriter.
            The call gets pushed to the TextWriter (if there is one). In production code, this is StreamWriter.Flush, which turns into Stream.Flush.
            In the synchronous case the underlying stream is the message stream itself, which will then Flush as well.
            In the async case the underlying stream is the async buffered stream, which ignores Flush call.
            </summary>
        </member>
        <member name="M:Microsoft.OData.RawValueWriter.InitializeTextWriter">
            <summary>
            Initialized a new text writer over the message payload stream.
            </summary>
            <remarks>This can only be called if the text writer was not yet initialized or it has been closed.
            It can be called several times with CloseWriter calls in between though.</remarks>
        </member>
        <member name="T:Microsoft.OData.ReaderUtils">
            <summary>
            Class with utility methods for reading OData content.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ReaderUtils.GetExpectedTypeKind(Microsoft.OData.Edm.IEdmTypeReference,System.Boolean)">
            <summary>
            Gets the expected type kind based on the given <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/>, or EdmTypeKind.None if no specific type should be expected.
            </summary>
            <param name="expectedTypeReference">The expected type reference.</param>
            <param name="enablePrimitiveTypeConversion">Whether primitive type conversion is enabled.</param>
            <returns>The expected type kind based on the settings and type reference, or EdmTypeKind.None if no specific type should be expected.</returns>
        </member>
        <member name="M:Microsoft.OData.ReaderUtils.CreateNewResource">
            <summary>
            Creates a new <see cref="T:Microsoft.OData.ODataResource"/> instance to return to the user.
            </summary>
            <returns>The newly created resource.</returns>
            <remarks>The method populates the Properties property with an empty read only enumeration.</remarks>
        </member>
        <member name="M:Microsoft.OData.ReaderUtils.CreateDeletedResource(System.Uri,Microsoft.OData.DeltaDeletedEntryReason)">
            <summary>
            Creates a new <see cref="T:Microsoft.OData.ODataDeletedResource"/> instance to return to the user.
            </summary>
            <param name="id">The id of the deleted resource, or null if not yet known.</param>
            <param name="reason">The <see cref="T:Microsoft.OData.DeltaDeletedEntryReason"/> for the deleted resource.</param>
            <returns>The newly created deleted resource.</returns>
            <remarks>The method populates the Properties property with an empty read only enumeration.</remarks>
        </member>
        <member name="M:Microsoft.OData.ReaderUtils.CheckForDuplicateNestedResourceInfoNameAndSetAssociationLink(Microsoft.OData.PropertyAndAnnotationCollector,Microsoft.OData.ODataNestedResourceInfo)">
            <summary>Checks for duplicate navigation links and if there already is an association link with the same name
            sets the association link URL on the nested resource info.</summary>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker for the current scope.</param>
            <param name="nestedResourceInfo">The nested resource info to be checked.</param>
        </member>
        <member name="M:Microsoft.OData.ReaderUtils.CheckForDuplicateAssociationLinkAndUpdateNestedResourceInfo(Microsoft.OData.PropertyAndAnnotationCollector,System.String,System.Uri)">
            <summary>Checks that for duplicate association links and if there already is a nested resource info with the same name
            sets the association link URL on that nested resource info.</summary>
            <param name="propertyAndAnnotationCollector">The duplicate property names checker for the current scope.</param>
            <param name="associationLinkName">The name of association link to be checked.</param>
            <param name="associationLinkUrl">The url of association link to be checked.</param>
        </member>
        <member name="M:Microsoft.OData.ReaderUtils.GetExpectedPropertyName(Microsoft.OData.Edm.IEdmStructuralProperty)">
            <summary>
            Gets the expected property name from the specified property or operation import.
            </summary>
            <param name="expectedProperty">The <see cref="T:Microsoft.OData.Edm.IEdmProperty"/> to get the expected property name for (or null if none is specified).</param>
            <returns>The expected name of the property to be read from the payload.</returns>
        </member>
        <member name="M:Microsoft.OData.ReaderUtils.RemovePrefixOfTypeName(System.String)">
            <summary>
            Remove the prefix (#) from type name if there is.
            </summary>
            <param name="typeName">The type name which may be prefixed (#).</param>
            <returns>The type name with prefix removed, if there is.</returns>
        </member>
        <member name="M:Microsoft.OData.ReaderUtils.AddEdmPrefixOfTypeName(System.String)">
            <summary>
            Add the Edm. prefix to the primitive type if there isn't.
            </summary>
            <param name="typeName">The type name which may be not prefixed (Edm.).</param>
            <returns>The type name with Edm. prefix</returns>
        </member>
        <member name="T:Microsoft.OData.ReaderValidationUtils">
            <summary>
            Class with utility methods for validating OData content when reading.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.ValidateMessageReaderSettings(Microsoft.OData.ODataMessageReaderSettings,System.Boolean)">
            <summary>
            Validates that message reader settings are correct.
            </summary>
            <param name="messageReaderSettings">The message reader settings to validate.</param>
            <param name="readingResponse">true if the settings were specified when reading a response, false when reading a request.</param>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.ValidateEntityReferenceLink(Microsoft.OData.ODataEntityReferenceLink)">
            <summary>
            Validates an entity reference link.
            </summary>
            <param name="link">The entity reference link to check.</param>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.ValidateStreamReferenceProperty(Microsoft.OData.ODataProperty,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.Edm.IEdmProperty,System.Boolean)">
            <summary>
            Validates a stream reference property.
            </summary>
            <param name="streamProperty">The stream property to check.</param>
            <param name="structuredType">The owning type of the stream property or null if no metadata is available.</param>
            <param name="streamEdmProperty">The stream property defined by the model.</param>
            <param name="throwOnUndeclaredLinkProperty">Whether ThrowOnUndeclaredLinkProperty validation setting is enabled.</param>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.ValidateNullValue(Microsoft.OData.Edm.IEdmTypeReference,System.Boolean,System.Boolean,System.String,System.Nullable{System.Boolean})">
            <summary>
            Validate a null value.
            </summary>
            <param name="expectedTypeReference">The expected type of the null value.</param>
            <param name="enablePrimitiveTypeConversion">Whether primitive type conversion is enabled.</param>
            <param name="validateNullValue">true to validate the null value; false to only check whether the type is supported.</param>
            <param name="propertyName">The name of the property whose value is being read, if applicable (used for error reporting).</param>
            <param name="isDynamicProperty">Indicates whether the property is dynamic or unknown.</param>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.ValidatePropertyDefined(System.String,Microsoft.OData.Edm.IEdmStructuredType,System.Boolean)">
            <summary>
            Validates that a property with the specified name exists on a given structured type.
            The structured type can be null if no metadata is available.
            </summary>
            <param name="propertyName">The name of the property to validate.</param>
            <param name="owningStructuredType">The owning type of the property with name <paramref name="propertyName"/>
            or null if no metadata is available.</param>
            <param name="throwOnUndeclaredPropertyForNonOpenType">Whether ThrowOnUndeclaredPropertyForNonOpenType validation setting is enabled.</param>
            <returns>The <see cref="T:Microsoft.OData.Edm.IEdmProperty"/> instance representing the property with name <paramref name="propertyName"/>
            or null if no metadata is available.</returns>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.GetPrimitiveTypeConversionException(Microsoft.OData.Edm.IEdmPrimitiveTypeReference,System.Exception,System.String)">
            <summary>
            Creates an exception used when primitive type conversion fails.
            </summary>
            <param name="targetTypeReference">The target type reference to which the conversion failed.</param>
            <param name="innerException">Possible inner exception with more information about the failure.</param>
            <param name="stringValue">The string representation for the value.</param>
            <returns>The exception object to throw.</returns>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.ResolvePayloadTypeName(Microsoft.OData.Edm.IEdmModel,Microsoft.OData.Edm.IEdmTypeReference,System.String,Microsoft.OData.Edm.EdmTypeKind,System.Func{Microsoft.OData.Edm.IEdmType,System.String,Microsoft.OData.Edm.IEdmType},Microsoft.OData.Edm.EdmTypeKind@)">
            <summary>
            Resolved the payload type name to the type.
            </summary>
            <param name="model">The model to use for the resolution.</param>
            <param name="expectedTypeReference">The expected type reference, or null if no expected type is available.</param>
            <param name="payloadTypeName">The payload type name to resolve.</param>
            <param name="expectedTypeKind">The default payload type kind, this is used when the resolution is not possible,
            but the type name is not empty. (Should be either Complex or Entity).</param>
            <param name="clientCustomTypeResolver">The function of client custom type resolver.</param>
            <param name="payloadTypeKind">This is set to the detected payload type kind, or None if the type was not specified.</param>
            <returns>The resolved type. This may be null if either no user-specified model is specified, or the type name is not recognized by the model.</returns>
            <remarks>The method detects the payload kind even if the model does not recognize the type. It figures out primitive and collection types always,
            and uses the <paramref name="expectedTypeKind"/> for the rest.</remarks>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.ResolvePayloadTypeNameAndComputeTargetType(Microsoft.OData.Edm.EdmTypeKind,System.Nullable{System.Boolean},Microsoft.OData.Edm.IEdmType,Microsoft.OData.Edm.IEdmTypeReference,System.String,Microsoft.OData.Edm.IEdmModel,System.Func{Microsoft.OData.Edm.IEdmType,System.String,Microsoft.OData.Edm.IEdmType},System.Boolean,System.Boolean,System.Func{Microsoft.OData.Edm.EdmTypeKind},Microsoft.OData.Edm.EdmTypeKind@,Microsoft.OData.ODataTypeAnnotation@)">
            <summary>
            Resolves and validates the payload type against the expected type and returns the target type.
            </summary>
            <param name="expectedTypeKind">The expected type kind for the value.</param>
            <param name="expectStructuredType">This value indicates if a structured type is expected to be return.
            True for structured type, false for non-structured type, null for indetermination.</param>
            <param name="defaultPrimitivePayloadType">The default payload type if none is specified in the payload;
            for ATOM this is Edm.String, for JSON it is null since there is no payload type name for primitive types in the payload.</param>
            <param name="expectedTypeReference">The expected type reference, or null if no expected type is available.</param>
            <param name="payloadTypeName">The payload type name, or null if no payload type was specified.</param>
            <param name="model">The model to use.</param>
            <param name="clientCustomTypeResolver">Custom type resolver used by the client.</param>
            <param name="throwIfTypeConflictsWithMetadata">Whether ThrowIfTypeConflictsWithMetadata is enabled.</param>
            <param name="enablePrimitiveTypeConversion">Whether primitive type conversion is enabled.</param>
            <param name="typeKindFromPayloadFunc">A func to compute the type kind from the payload shape if it could not be determined from the expected type or the payload type.</param>
            <param name="targetTypeKind">The target type kind to be used to read the payload.</param>
            <param name="typeAnnotation">Potentially non-null instance of an annotation to put on the value reported from the reader.</param>
            <returns>
            The target type reference to use for parsing the value.
            If there is no user specified model, this will return null.
            If there is a user specified model, this method never returns null.
            </returns>
            <remarks>
            This method cannot be used for primitive type resolution. Primitive type resolution is format dependent and format specific methods should be used instead.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.ResolveAndValidatePrimitiveTargetType(Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.Edm.EdmTypeKind,Microsoft.OData.Edm.IEdmType,System.String,Microsoft.OData.Edm.IEdmType,Microsoft.OData.Edm.IEdmModel,System.Func{Microsoft.OData.Edm.IEdmType,System.String,Microsoft.OData.Edm.IEdmType},System.Boolean,System.Boolean)">
            <summary>
            Resolves the primitive payload type versus the expected type and validates that such combination is allowed.
            </summary>
            <param name="expectedTypeReference">The expected type reference, if any.</param>
            <param name="payloadTypeKind">The kind of the payload type, or None if the detection was not possible.</param>
            <param name="payloadType">The resolved payload type, or null if no payload type was specified.</param>
            <param name="payloadTypeName">The name of the payload type, or null if no payload type was specified.</param>
            <param name="defaultPayloadType">The default payload type if none is specified in the payload;
            for ATOM this is Edm.String, for JSON it is null since there is no payload type name for primitive types in the payload.</param>
            <param name="model">The model to use.</param>
            <param name="clientCustomTypeResolver">Custom type resolver used by client, or null if none.</param>
            <param name="enablePrimitiveTypeConversion">Whether primitive type conversion is enabled.</param>
            <param name="throwIfTypeConflictsWithMetadata">Whether ThrowIfTypeConflictsWithMetadata is enabled.</param>
            <returns>The target type reference to use for parsing the value. This method never returns null.</returns>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.ResolveAndValidateNonPrimitiveTargetType(Microsoft.OData.Edm.EdmTypeKind,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.Edm.EdmTypeKind,Microsoft.OData.Edm.IEdmType,System.String,Microsoft.OData.Edm.IEdmModel,System.Func{Microsoft.OData.Edm.IEdmType,System.String,Microsoft.OData.Edm.IEdmType},System.Boolean)">
            <summary>
            Resolves the payload type versus the expected type and validates that such combination is allowed.
            </summary>
            <param name="expectedTypeKind">The expected type kind for the value.</param>
            <param name="expectedTypeReference">The expected type reference, or null if no expected type is available.</param>
            <param name="payloadTypeKind">The payload type kind, this may be the one from the type itself, or one detected without resolving the type.</param>
            <param name="payloadType">The payload type, or null if the payload type was not specified, or it didn't resolve against the model.</param>
            <param name="payloadTypeName">The payload type name, or null if no payload type was specified.</param>
            <param name="model">The model to use.</param>
            <param name="clientCustomTypeResolver">Custom type resolver used by client, or null if none.</param>
            <param name="throwIfTypeConflictsWithMetadata">Whether ThrowIfTypeConflictsWithMetadata is enabled.</param>
            <returns>
            The target type reference to use for parsing the value.
            If there is no user specified model, this will return null.
            If there is a user specified model, this method never returns null.
            </returns>
            <remarks>
            This method cannot be used for primitive type resolution. Primitive type resolution is format dependent and format specific methods should be used instead.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.ValidateEncodingSupportedInBatch(System.Text.Encoding)">
            <summary>
            Validates that the specified encoding is supported in batch/changeset envelopes (headers, boundaries, preamble, etc.).
            </summary>
            <param name="encoding">The <see cref="T:System.Text.Encoding"/> to check.</param>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.ValidateEncodingSupportedInAsync(System.Text.Encoding)">
            <summary>
            Validates that the specified encoding is supported in async envelopes (headers, preamble, etc.).
            </summary>
            <param name="encoding">The <see cref="T:System.Text.Encoding"/> to check.</param>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.ValidateResourceSetOrResourceContextUri(Microsoft.OData.JsonLight.ODataJsonLightContextUriParseResult,Microsoft.OData.ODataReaderCore.Scope,System.Boolean)">
            <summary>
            Validates that the parsed context URI from the payload is consistent with the expected
            entity set and entity type when reading a resource set or resource payload.
            </summary>
            <param name="contextUriParseResult">The parse result of the context URI from the payload.</param>
            <param name="scope">The top-level scope representing the reader state.</param>
            <param name="updateScope">Whether to update scope when validating.</param>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.ValidateCollectionContextUriAndGetPayloadItemTypeReference(Microsoft.OData.JsonLight.ODataJsonLightContextUriParseResult,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Validates that the parsed context URI from the payload is consistent with the expected
            collection item type when reading collection payloads.
            </summary>
            <param name="contextUriParseResult">The parse result of the context URI from the payload.</param>
            <param name="expectedItemTypeReference">The expected item type of the collection items.</param>
            <returns>The actual item type of the collection items.</returns>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.ValidateOperationProperty(System.Object,System.String,System.String,System.String)">
            <summary>
            Validates that the property in an operation (an action or a function) is valid.
            </summary>
            <param name="propertyValue">The value of the property.</param>
            <param name="propertyName">The name of the property (used for error reporting).</param>
            <param name="metadata">The metadata value for the operation (used for error reporting).</param>
            <param name="operationsHeader">The header for the operation, either 'actions' or 'functions'.</param>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.ResolveAndValidateTargetTypeWithNoExpectedType(Microsoft.OData.Edm.EdmTypeKind,Microsoft.OData.Edm.IEdmType)">
            <summary>
            Resolves the payload type if there's no expected type.
            </summary>
            <param name="expectedTypeKind">The expected type kind for the value.</param>
            <param name="payloadType">The payload type, or null if the payload type was not specified, or it didn't resolve against the model.</param>
            <returns>The target type reference to use for parsing the value.</returns>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.ResolveAndValidateTargetTypeStrictValidationDisabled(Microsoft.OData.Edm.EdmTypeKind,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.Edm.IEdmType)">
            <summary>
            Resolves the payload type versus the expected type and validates that such combination is allowed when the strict validation is disabled.
            </summary>
            <param name="expectedTypeKind">The expected type kind for the value.</param>
            <param name="expectedTypeReference">The expected type reference, or null if no expected type is available.</param>
            <param name="payloadType">The payload type, or null if the payload type was not specified, or it didn't resolve against the model.</param>
            <returns>The target type reference to use for parsing the value.</returns>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.ResolveAndValidateTargetTypeStrictValidationEnabled(Microsoft.OData.Edm.EdmTypeKind,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.Edm.IEdmType)">
            <summary>
            Resolves the payload type versus the expected type and validates that such combination is allowed when strict validation is enabled.
            </summary>
            <param name="expectedTypeKind">The expected type kind for the value.</param>
            <param name="expectedTypeReference">The expected type reference, or null if no expected type is available.</param>
            <param name="payloadType">The payload type, or null if the payload type was not specified, or it didn't resolve against the model.</param>
            <returns>The target type reference to use for parsing the value.</returns>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.VerifyPayloadTypeDefined(System.String,Microsoft.OData.Edm.IEdmType)">
            <summary>
            Verifies that payload type is defined if the payload type name is present.
            </summary>
            <param name="payloadTypeName">The type name from the payload.</param>
            <param name="payloadType">The resolved type from the model.</param>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.VerifyComplexType(Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.Edm.IEdmType,System.Boolean)">
            <summary>
            Verifies that complex type is valid against the expected type.
            </summary>
            <param name="expectedTypeReference">The expected type reference.</param>
            <param name="payloadType">The payload type.</param>
            <param name="failIfNotRelated">true if the method should fail if the <paramref name="payloadType"/> doesn't match the <paramref name="expectedTypeReference"/>;
            false if the method should just return in that case.</param>
            <remarks>
            The method verifies that the <paramref name="payloadType"/> equals to or derives from the <paramref name="expectedTypeReference"/>
            and always fails in other cases.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.VerifyCollectionComplexItemType(Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.Edm.IEdmType)">
            <summary>
            Verifies that in case of collection types, the item type is valid.
            </summary>
            <param name="expectedTypeReference">The expected type reference.</param>
            <param name="payloadType">The payload type.</param>
            <remarks>
            This method verifies that item type is compatible with expected type.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.CreateODataTypeAnnotation(System.String,Microsoft.OData.Edm.IEdmType,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Conditionally creates the annotation to put on the read value in order to retain the type name from the payload.
            </summary>
            <param name="payloadTypeName">The payload type name.</param>
            <param name="payloadType">The payload type.</param>
            <param name="targetTypeReference">The type reference into which we're going to parse.</param>
            <returns>The annotation to report to the reader for adding on the read value.</returns>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.ComputeTargetTypeKind(Microsoft.OData.Edm.IEdmTypeReference,System.Boolean,System.String,Microsoft.OData.Edm.EdmTypeKind,System.Func{Microsoft.OData.Edm.IEdmType,System.String,Microsoft.OData.Edm.IEdmType},System.Boolean,System.Boolean,System.Func{Microsoft.OData.Edm.EdmTypeKind})">
            <summary>
            Computes the type kind to be used to read the payload from the expected type, the payload type and
            possibly the payload shape.
            </summary>
            <param name="expectedTypeReference">The expected type reference used to read the payload value.</param>
            <param name="forResource">true when resolving a type name for a resource; false for a non-resource.</param>
            <param name="payloadTypeName">The type name read from the payload.</param>
            <param name="payloadTypeKind">The type kind of the payload value.</param>
            <param name="clientCustomTypeResolver">Custom type resolver used by the client.</param>
            <param name="throwIfTypeConflictsWithMetadata">Whether ThrowIfTypeConflictsWithMetadata is enabled.</param>
            <param name="enablePrimitiveTypeConversion">Whether primitive type conversion is disabled.</param>
            <param name="typeKindFromPayloadFunc">A func to determine the type kind of the value by analyzing the payload data.</param>
            <returns>The type kind to be used to read the payload.</returns>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.ShouldValidatePayloadTypeKind(System.Func{Microsoft.OData.Edm.IEdmType,System.String,Microsoft.OData.Edm.IEdmType},System.Boolean,System.Boolean,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.Edm.EdmTypeKind)">
            <summary>
            Determines if the expect value type and the current settings mandate us to validate type kinds of payload values.
            </summary>
            <param name="clientCustomTypeResolver">Custom type resolver used by the client.</param>
            <param name="throwIfTypeConflictsWithMetadata">Whether ThrowIfTypeConflictsWithMetadata is enabled.</param>
            <param name="enablePrimitiveTypeConversion">Whether primitive type conversion is enabled.</param>
            <param name="expectedValueTypeReference">The expected type reference for the value inferred from the model.</param>
            <param name="payloadTypeKind">The type kind of the payload value.</param>
            <returns>true if the payload value kind must be verified, false otherwise.</returns>
            <remarks>This method deals with the strict versus lax behavior, as well as with the behavior when primitive type conversion is disabled.</remarks>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.ValidateNullValueAllowed(Microsoft.OData.Edm.IEdmTypeReference,System.Boolean,System.String,System.Nullable{System.Boolean})">
            <summary>
            Validates that the specified <paramref name="expectedValueTypeReference"/> allows null values.
            </summary>
            <param name="expectedValueTypeReference">The expected type for the value, or null if no such type is available.</param>
            <param name="validateNullValue">true to validate the null value; otherwise false.</param>
            <param name="propertyName">The name of the property whose value is being read, if applicable (used for error reporting).</param>
            <param name="isDynamicProperty">Indicates whether the property is dynamic or unknown.</param>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.ThrowNullValueForNonNullableTypeException(Microsoft.OData.Edm.IEdmTypeReference,System.String)">
            <summary>
            Create and throw exception that a null value was found when the expected type is non-nullable.
            </summary>
            <param name="expectedValueTypeReference">The expected type for this value.</param>
            <param name="propertyName">The name of the property whose value is being read, if applicable.</param>
        </member>
        <member name="M:Microsoft.OData.ReaderValidationUtils.ValidateResourceSetContextUri(Microsoft.OData.JsonLight.ODataJsonLightContextUriParseResult,Microsoft.OData.ODataReaderCore.Scope,System.Boolean)">
            <summary>
            The validate resource set context uri.
            </summary>
            <param name="contextUriParseResult">
            The context uri parse result.
            </param>
            <param name="scope">
            The scope.
            </param>
            <param name="updateScope">
            The update scope.
            </param>
        </member>
        <member name="T:Microsoft.OData.ReaderValidator">
            <summary>
            Reader validator that binds to an ODataMessageReaderSettings instance.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ReaderValidator.settings">
            <summary>
            References the bound ODataMessageReaderSettings instance.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ReaderValidator.#ctor(Microsoft.OData.ODataMessageReaderSettings)">
            <summary>
            Constructs a ReaderValidator instance that binds to settings.
            </summary>
            <param name="settings">The ODataMessageReaderSettings instance to bind to.</param>
        </member>
        <member name="M:Microsoft.OData.ReaderValidator.ValidateMediaResource(Microsoft.OData.ODataResourceBase,Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Validates that the specified <paramref name="resource"/> is a valid resource as per the specified type.
            </summary>
            <param name="resource">The resource to validate.</param>
            <param name="resourceType">Optional entity type to validate the resource against.</param>
            <remarks>If the <paramref name="resourceType"/> is available only resource-level tests are performed,
            properties and such are not validated.</remarks>
        </member>
        <member name="M:Microsoft.OData.ReaderValidator.CreatePropertyAndAnnotationCollector">
            <summary>
            Creates a PropertyAndAnnotationCollector instance.
            </summary>
            <returns>The created instance.</returns>
        </member>
        <member name="M:Microsoft.OData.ReaderValidator.ValidateNullValue(Microsoft.OData.Edm.IEdmTypeReference,System.Boolean,System.String,System.Nullable{System.Boolean})">
            <summary>
            Validate a null value.
            </summary>
            <param name="expectedTypeReference">The expected type of the null value.</param>
            <param name="validateNullValue">true to validate the null value; false to only check whether the type is
            supported.</param>
            <param name="propertyName">The name of the property whose value is being read, if applicable
            (used for error reporting).</param>
            <param name="isDynamicProperty">Indicates whether the property is dynamic or unknown.</param>
        </member>
        <member name="M:Microsoft.OData.ReaderValidator.ResolvePayloadTypeNameAndComputeTargetType(Microsoft.OData.Edm.EdmTypeKind,System.Nullable{System.Boolean},Microsoft.OData.Edm.IEdmType,Microsoft.OData.Edm.IEdmTypeReference,System.String,Microsoft.OData.Edm.IEdmModel,System.Func{Microsoft.OData.Edm.EdmTypeKind},Microsoft.OData.Edm.EdmTypeKind@,Microsoft.OData.ODataTypeAnnotation@)">
            <summary>
            Resolves and validates the payload type against the expected type and returns the target type.
            </summary>
            <param name="expectedTypeKind">The expected type kind for the value.</param>
            <param name="expectStructuredType">This value indicates if a structured type is expected to be return.
            True for structured type, false for non-structured type, null for indetermination.</param>
            <param name="defaultPrimitivePayloadType">The default payload type if none is specified in the payload;
            for ATOM this is Edm.String, for JSON it is null since there is no payload type name for primitive types in the payload.</param>
            <param name="expectedTypeReference">The expected type reference, or null if no expected type is available.</param>
            <param name="payloadTypeName">The payload type name, or null if no payload type was specified.</param>
            <param name="model">The model to use.</param>
            <param name="typeKindFromPayloadFunc">A func to compute the type kind from the payload shape if it could not be determined from the expected type or the payload type.</param>
            <param name="targetTypeKind">The target type kind to be used to read the payload.</param>
            <param name="typeAnnotation">Potentially non-null instance of an annotation to put on the value reported from the reader.</param>
            <returns>
            The target type reference to use for parsing the value.
            If there is no user specified model, this will return null.
            If there is a user specified model, this method never returns null.
            </returns>
            <remarks>
            This method cannot be used for primitive type resolution. Primitive type resolution is format dependent and format specific methods should be used instead.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.ReaderValidator.ValidatePropertyDefined(System.String,Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Validates that a property with the specified name exists on a given structured type.
            The structured type can be null if no metadata is available.
            </summary>
            <param name="propertyName">The name of the property to validate.</param>
            <param name="owningStructuredType">The owning type of the property with name <paramref name="propertyName"/>
            or null if no metadata is available.</param>
            <returns>The <see cref="T:Microsoft.OData.Edm.IEdmProperty"/> instance representing the property with name <paramref name="propertyName"/>
            or null if no metadata is available.</returns>
        </member>
        <member name="M:Microsoft.OData.ReaderValidator.ValidateStreamReferenceProperty(Microsoft.OData.ODataProperty,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.Edm.IEdmProperty)">
            <summary>
            Validates a stream reference property.
            </summary>
            <param name="streamProperty">The stream property to check.</param>
            <param name="structuredType">The owning type of the stream property or null if no metadata is available.</param>
            <param name="streamEdmProperty">The stream property defined by the model.</param>
        </member>
        <member name="T:Microsoft.OData.ReadOnlyEnumerable">
            <summary>
            Implementation of IEnumerable which is based on another IEnumerable
            but only exposes readonly access to that collection. This class doesn't implement
            any other public interfaces or public API unlike most other IEnumerable implementations
            which also implement other public interfaces.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ReadOnlyEnumerable.sourceEnumerable">
            <summary>
            The IEnumerable to wrap.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ReadOnlyEnumerable.#ctor(System.Collections.IEnumerable)">
            <summary>
            Constructor.
            </summary>
            <param name="sourceEnumerable">The enumerable to wrap.</param>
        </member>
        <member name="M:Microsoft.OData.ReadOnlyEnumerable.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Returns the enumerator to iterate through the items.
            </summary>
            <returns>The enumerator object to use.</returns>
        </member>
        <member name="T:Microsoft.OData.ReadOnlyEnumerableExtensions">
            <summary>
            Extension methods for ReadOnlyEnumerable and ReadOnlyEnumerableOfT
            </summary>
        </member>
        <member name="M:Microsoft.OData.ReadOnlyEnumerableExtensions.IsEmptyReadOnlyEnumerable``1(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            true if <paramref name="source"/> is the same instance as ReadOnlyEnumerableOfT.Empty(). false otherwise.
            </summary>
            <typeparam name="T">The element type of the enumerable.</typeparam>
            <param name="source">The enumerable in question.</param>
            <returns>Returns true if <paramref name="source"/> is the empty ReadOnlyEnumerableOfT. false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.ReadOnlyEnumerableExtensions.ToReadOnlyEnumerable``1(System.Collections.Generic.IEnumerable{``0},System.String)">
            <summary>
            Casts an IEnumerableOfT to ReadOnlyEnumerableOfT.
            </summary>
            <typeparam name="T">The element type of the enumerable.</typeparam>
            <param name="source">The source enumerable.</param>
            <param name="collectionName">The name of the collection to report in case there's an error.</param>
            <returns>The casted ReadOnlyEnumerableOfT.</returns>
        </member>
        <member name="M:Microsoft.OData.ReadOnlyEnumerableExtensions.GetOrCreateReadOnlyEnumerable``1(System.Collections.Generic.IEnumerable{``0},System.String)">
            <summary>
            Returns the <paramref name="source"/> as ReadOnlyEnumerableOfT or
            a new instance of ReadOnlyEnumerableOfT if <paramref name="source"/> is the same instance as ReadOnlyEnumerableOfT.Empty().
            </summary>
            <typeparam name="T">The element type of the enumerable.</typeparam>
            <param name="source">The source enumerable in question.</param>
            <param name="collectionName">The name of the collection to report in case there's an error.</param>
            <returns>Returns the <paramref name="source"/> as ReadOnlyEnumerableOfT or
            a new instance of ReadOnlyEnumerableOfT if <paramref name="source"/> is the same instance as ReadOnlyEnumerableOfT.Empty().</returns>
        </member>
        <member name="M:Microsoft.OData.ReadOnlyEnumerableExtensions.ConcatToReadOnlyEnumerable``1(System.Collections.Generic.IEnumerable{``0},System.String,``0)">
            <summary>
            Returns a ReadOnlyEnumerableOfT that is the result of <paramref name="source"/> plus <paramref name="item"/>.
            </summary>
            <typeparam name="T">The element type of the enumerable.</typeparam>
            <param name="source">The source enumerable to concat.</param>
            <param name="collectionName">The name of the collection to report in case there's an error.</param>
            <param name="item">Item to concat to the source enumerable.</param>
            <returns>Returns a ReadOnlyEnumerableOfT that is the result of <paramref name="source"/> plus <paramref name="item"/>.</returns>
        </member>
        <member name="T:Microsoft.OData.ReadOnlyEnumerable`1">
            <summary>
            Implementation of IEnumerable&gt;T&lt; which is based on a List&gt;T&lt;
            but only exposes readonly access to that collection. This class doesn't implement
            any other public interfaces or public API unlike most other IEnumerable implementations
            which also implement other public interfaces.
            </summary>
            <typeparam name="T">The type of a single item in the enumeration.</typeparam>
        </member>
        <member name="F:Microsoft.OData.ReadOnlyEnumerable`1.sourceList">
            <summary>
            The IEnumerable to wrap.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ReadOnlyEnumerable`1.EmptyInstance">
            <summary>
            The empty instance of ReadOnlyEnumerableOfT.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ReadOnlyEnumerable`1.#ctor">
            <summary>
            Constructor which initializes the enumerable with an empty list storage.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ReadOnlyEnumerable`1.#ctor(System.Collections.Generic.IList{`0})">
            <summary>
            Constructor.
            </summary>
            <param name="sourceList">The list of values to wrap.</param>
        </member>
        <member name="M:Microsoft.OData.ReadOnlyEnumerable`1.System#Collections#Generic#IEnumerable{T}#GetEnumerator">
            <summary>
            Returns the enumerator to iterate through the items.
            </summary>
            <returns>The enumerator object to use.</returns>
        </member>
        <member name="M:Microsoft.OData.ReadOnlyEnumerable`1.Empty">
            <summary>
            Gets the empty instance of ReadOnlyEnumerableOfT.
            </summary>
            <returns>Returns the empty instance of ReadOnlyEnumerableOfT.</returns>
        </member>
        <member name="M:Microsoft.OData.ReadOnlyEnumerable`1.AddToSourceList(`0)">
            <summary>
            This internal method adds <paramref name="itemToAdd"/> to the wrapped source list. From the public's perspective, this enumerable is still readonly.
            </summary>
            <param name="itemToAdd">Item to add to the source list.</param>
        </member>
        <member name="T:Microsoft.OData.ReferenceEqualityComparer`1">
            <summary>
            Use this class to compare objects by reference in collections such as
            dictionary or hashsets.
            </summary>
            <typeparam name="T">Type of objects to compare.</typeparam>
            <remarks>
            Typically accessed statically as eg
            ReferenceEqualityComparer&lt;Expression&gt;.Instance.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.ReferenceEqualityComparer`1.instance">
            <summary>
            Single instance per 'T' for comparison.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ReferenceEqualityComparer`1.#ctor">
            <summary>
            Initializes a new ReferenceEqualityComparer instance.
            </summary>
        </member>
        <member name="P:Microsoft.OData.ReferenceEqualityComparer`1.Instance">
            <summary>
            Returns a singleton instance for this comparer type.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ReferenceEqualityComparer`1.Equals(`0,`0)">
            <summary>
            Determines whether two objects are the same.
            </summary>
            <param name="x">First object to compare.</param>
            <param name="y">Second object to compare.</param>
            <returns>true if both are the same; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.ReferenceEqualityComparer`1.GetHashCode(`0)">
            <summary>
            Serves as hashing function for collections.
            </summary>
            <param name="obj">Object to hash.</param>
            <returns>
            Hash code for the object; shouldn't change through the lifetime
            of <paramref name="obj"/>.
            </returns>
        </member>
        <member name="T:Microsoft.OData.ResourceSetWithoutExpectedTypeValidator">
            <summary>
            Helper class to verify that all items of a collection are of the same kind and type.
            </summary>
            <remarks>This class is only used if no expected item type is specified for the collection;
            otherwise all items are already validated against the expected item type.</remarks>
        </member>
        <member name="F:Microsoft.OData.ResourceSetWithoutExpectedTypeValidator.itemType">
            <summary>
            The base type for all items in the resource set.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ResourceSetWithoutExpectedTypeValidator.#ctor(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Constructor.
            </summary>
            <param name="memberType">The type of the resource set, or null.</param>
        </member>
        <member name="M:Microsoft.OData.ResourceSetWithoutExpectedTypeValidator.ValidateResource(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Validates the type of a resource in a top-level resource set.
            </summary>
            <param name="resourceType">The type of the resource.</param>
        </member>
        <member name="T:Microsoft.OData.SelectedPropertiesNode">
            <summary>
            Represents a tree of selected properties based on the $select query option.
            </summary>
            <remarks>
            When reading, it controls the template expansion in JSON Light.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.SelectedPropertiesNode.Empty">
            <summary>Singleton which indicates that the nothing is selected.</summary>
        </member>
        <member name="F:Microsoft.OData.SelectedPropertiesNode.EntireSubtree">
            <summary>Singleton which indicates that the entire subtree is selected.</summary>
        </member>
        <member name="F:Microsoft.OData.SelectedPropertiesNode.EmptyStreamProperties">
            <summary>An empty set of stream properties to return when nothing is selected.</summary>
        </member>
        <member name="F:Microsoft.OData.SelectedPropertiesNode.EmptyNavigationProperties">
            <summary>An empty set of navigation properties to return when nothing is selected.</summary>
        </member>
        <member name="F:Microsoft.OData.SelectedPropertiesNode.selectionType">
            <summary>The type of the current node.</summary>
        </member>
        <member name="F:Microsoft.OData.SelectedPropertiesNode.PathSeparator">
            <summary>The separator character used to separate property names in a path.</summary>
        </member>
        <member name="F:Microsoft.OData.SelectedPropertiesNode.ItemSeparator">
            <summary>The separator character used to separate paths from each other.</summary>
        </member>
        <member name="F:Microsoft.OData.SelectedPropertiesNode.StarSegment">
            <summary>The special '*' segment indicating that all properties are selected.</summary>
        </member>
        <member name="F:Microsoft.OData.SelectedPropertiesNode.selectedProperties">
            <summary>The list of selected properties at the current level.</summary>
        </member>
        <member name="F:Microsoft.OData.SelectedPropertiesNode.children">
            <summary>A dictionary of property name to child nodes.</summary>
        </member>
        <member name="F:Microsoft.OData.SelectedPropertiesNode.hasWildcard">
            <summary>Indicates that this node had a wildcard selection and all properties at this level should be reported.</summary>
        </member>
        <member name="F:Microsoft.OData.SelectedPropertiesNode.nodeName">
            <summary>Current node name, null if root node.</summary>
        </member>
        <member name="M:Microsoft.OData.SelectedPropertiesNode.#ctor(System.String)">
            <summary>
            Constructor.
            TODO: Update SelectedPropertiesNode class to adapt to V4, get rid of old style constructor
            </summary>
            <param name="selectClause">The string representation of the selected property hierarchy using
            the same format as in the $select query option.</param>
        </member>
        <member name="M:Microsoft.OData.SelectedPropertiesNode.#ctor(Microsoft.OData.SelectedPropertiesNode.SelectionType)">
            <summary>
            Prevents a default instance of the <see cref="T:Microsoft.OData.SelectedPropertiesNode"/> class from being created.
            </summary>
            <param name="selectionType">Type of the selection.</param>
        </member>
        <member name="T:Microsoft.OData.SelectedPropertiesNode.SelectionType">
            <summary>
            Enum representing the different special cases of selection.
            </summary>
        </member>
        <member name="F:Microsoft.OData.SelectedPropertiesNode.SelectionType.Empty">
            <summary>
            Represents the case where no properties are selected.
            </summary>
        </member>
        <member name="F:Microsoft.OData.SelectedPropertiesNode.SelectionType.EntireSubtree">
            <summary>
            Represents the case where an entire subtree is selected.
            TODO: Update SelectedPropertiesNode class to adapt to V4, fix EntireSubtree logic for V4
            </summary>
        </member>
        <member name="F:Microsoft.OData.SelectedPropertiesNode.SelectionType.PartialSubtree">
            <summary>
            The normal case where a partial subtree has been selected.
            </summary>
        </member>
        <member name="M:Microsoft.OData.SelectedPropertiesNode.Create(System.String)">
            <summary>
            Creates a node from the given raw $select query option value.
            </summary>
            <param name="selectQueryOption">The value of the $select query option.</param>
            <returns>A tree representation of the selected properties specified in the query option.</returns>
        </member>
        <member name="M:Microsoft.OData.SelectedPropertiesNode.Create(Microsoft.OData.UriParser.SelectExpandClause,Microsoft.OData.ODataVersion)">
            <summary>
            Creates a node from the given SelectExpandClause.
            </summary>
            <param name="selectExpandClause">The value of the $select query option.</param>
            <param name="version">OData version</param>
            <returns>A tree representation of the selected properties specified in the query option.</returns>
        </member>
        <member name="M:Microsoft.OData.SelectedPropertiesNode.CombineNodes(Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.SelectedPropertiesNode)">
            <summary>
            Recursively combines the left and right nodes. Used when there are type segments present in the select paths which
            causes there to be multiple children for the same property/navigation.
            </summary>
            <param name="left">The left node.</param>
            <param name="right">The right node.</param>
            <returns>The combined node.</returns>
        </member>
        <member name="M:Microsoft.OData.SelectedPropertiesNode.GetSelectedPropertiesForNavigationProperty(Microsoft.OData.Edm.IEdmStructuredType,System.String)">
            <summary>
            Gets the selected properties node for the specified navigation property.
            </summary>
            <param name="structuredType">The current structured type.</param>
            <param name="navigationPropertyName">The name of the navigation property.</param>
            <returns>The selected properties node for the property with name <paramref name="navigationPropertyName"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.SelectedPropertiesNode.GetSelectedNavigationProperties(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Gets the selected navigation properties for the current node.
            </summary>
            <param name="structuredType">The current structured type.</param>
            <returns>The set of selected navigation properties.</returns>
        </member>
        <member name="M:Microsoft.OData.SelectedPropertiesNode.GetSelectedStreamProperties(Microsoft.OData.Edm.IEdmEntityType)">
            <summary>
            Gets the selected stream properties for the current node.
            </summary>
            <param name="entityType">The current entity type.</param>
            <returns>The selected stream properties.</returns>
        </member>
        <member name="M:Microsoft.OData.SelectedPropertiesNode.IsOperationSelected(Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.Edm.IEdmOperation,System.Boolean)">
            <summary>
            Determines whether or not the given operation is selected and takes type-segments into account.
            </summary>
            <param name="structuredType">The current resource type.</param>
            <param name="operation">The operation.</param>
            <param name="mustBeNamespaceQualified">Whether or not the operation name must be container qualified in the $select string.</param>
            <returns>
              <c>true</c> if the operation is selected; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:Microsoft.OData.SelectedPropertiesNode.GetBaseTypesAndSelf(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Gets an enumerable containing the given type and all of its base/ancestor types.
            </summary>
            <param name="structuredType">The starting resource type. Will be included in the returned enumeration.</param>
            <returns>An enumerable containing the given type and all of its base/ancestor types.</returns>
        </member>
        <member name="M:Microsoft.OData.SelectedPropertiesNode.CreateSelectedPropertiesHashSet(System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Creates a new hash set for storing the names of selected properties.
            </summary>
            <param name="properties">The initial set of selected properties to store in the hash set.</param>
            <returns>The hash set.</returns>
        </member>
        <member name="M:Microsoft.OData.SelectedPropertiesNode.CreateSelectedPropertiesHashSet">
            <summary>
            Creates a new hash set for storing the names of selected properties.
            </summary>
            <returns>The hash set.</returns>
        </member>
        <member name="M:Microsoft.OData.SelectedPropertiesNode.GetPossibleMatchesForSelectedOperation(Microsoft.OData.Edm.IEdmOperation,System.Boolean)">
            <summary>
            Gets the possible identifiers that could cause the given operation to be selected.
            </summary>
            <param name="operation">The operation.</param>
            <param name="mustBeNamespaceQualified">Whether the operations must be namespace qualified.</param>
            <returns>The identifiers to look for in the $select string when determining if this action is selected.</returns>
        </member>
        <member name="M:Microsoft.OData.SelectedPropertiesNode.GetMatchingTypeSegments(Microsoft.OData.Edm.IEdmStructuredType)">
            <summary>
            Gets the matching type segments for the given type based on this node's children.
            </summary>
            <param name="structuredType">The structured type to match.</param>
            <returns>All child nodes which start with a type segment in the given types hierarchy.</returns>
        </member>
        <member name="M:Microsoft.OData.SelectedPropertiesNode.ParsePathSegment(System.String[],System.Int32)">
            <summary>
            Parses the segments of a path in the select clause.
            </summary>
            <param name="segments">The segments of the select path.</param>
            <param name="index">The index of the segment to parse.</param>
        </member>
        <member name="M:Microsoft.OData.SelectedPropertiesNode.EnsureChildAnnotation(System.String)">
            <summary>
            Ensures that a child annotation for the specified segment name already exists; if not creates one.
            </summary>
            <param name="segmentName">The segment name to get the child annotation for.</param>
            <returns>The existing or newly created child annotation for the <paramref name="segmentName"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.SelectedPropertiesNode.IsOperationSelectedAtThisLevel(Microsoft.OData.Edm.IEdmOperation,System.Boolean)">
            <summary>
            Determines whether or not the given operation is selected without taking type segments into account.
            </summary>
            <param name="operation">The operation.</param>
            <param name="mustBeNamespaceQualified">Whether the operations must be container qualified.</param>
            <returns>
              <c>true</c> if the operation is selected; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:Microsoft.OData.SelectedPropertiesNode.CreateFromSelectExpandClause(Microsoft.OData.UriParser.SelectExpandClause,Microsoft.OData.ODataVersion)">
            <summary>Create SelectedPropertiesNode from SelectExpandClause.</summary>
            <param name="selectExpandClause">The SelectExpandClause representing $select and $expand clauses.</param>
            <param name="version">OData version</param>
            <returns>SelectedPropertiesNode generated using <paramref name="selectExpandClause"/></returns>
        </member>
        <member name="M:Microsoft.OData.SelectedPropertiesNode.ProcessSubExpand(System.String,Microsoft.OData.SelectedPropertiesNode,Microsoft.OData.ODataVersion)">
            <summary>Process sub expand node, set name for the node.</summary>
            <param name="nodeName">Node name for the subexpandnode.</param>
            <param name="subExpandNode">Generated sub expand node.</param>
            <param name="version">OData version.</param>
            <returns>The sub expanded node passed in.</returns>
        </member>
        <member name="M:Microsoft.OData.SelectedPropertiesNode.CombineSelectAndExpandResult(System.Collections.Generic.IList{System.String},System.Collections.Generic.IList{Microsoft.OData.SelectedPropertiesNode})">
            <summary>Create SelectedPropertiesNode using selected name list and expand node list.</summary>
            <param name="selectList">A list of selected item names.</param>
            <param name="expandList">A list of sub expanded nodes.</param>
            <returns>The generated SelectedPropertiesNode.</returns>
        </member>
        <member name="T:Microsoft.OData.ServiceLifetime">
            <summary>
            Enumerates all kinds of lifetime of a service in an <see cref="T:Microsoft.OData.IContainerBuilder"/>.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ServiceLifetime.Singleton">
            <summary>
            Indicates that a single instance of the service will be created.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ServiceLifetime.Scoped">
            <summary>
            Indicates that a new instance of the service will be created for each scope.
            </summary>
        </member>
        <member name="F:Microsoft.OData.ServiceLifetime.Transient">
            <summary>
            Indicates that a new instance of the service will be created every time it is requested.
            </summary>
        </member>
        <member name="T:Microsoft.OData.ServiceProviderExtensions">
            <summary>
            Extension methods for <see cref="T:System.IServiceProvider" />.
            </summary>
        </member>
        <member name="M:Microsoft.OData.ServiceProviderExtensions.GetService``1(System.IServiceProvider)">
            <summary>
            Gets a service of type <typeparamref name="T"/> from the <see cref="T:System.IServiceProvider"/>.
            </summary>
            <typeparam name="T">The type of service object to get.</typeparam>
            <param name="container">The <see cref="T:System.IServiceProvider"/> to retrieve the service object from.</param>
            <returns>A service object of type <typeparamref name="T"/> or null if there is no such service.</returns>
        </member>
        <member name="M:Microsoft.OData.ServiceProviderExtensions.GetRequiredService(System.IServiceProvider,System.Type)">
            <summary>
            Gets a service of type <paramref name="serviceType"/> from the <see cref="T:System.IServiceProvider"/>.
            </summary>
            <param name="container">The <see cref="T:System.IServiceProvider"/> to retrieve the service object from.</param>
            <param name="serviceType">An object that specifies the type of service object to get.</param>
            <returns>A service object of type <paramref name="serviceType"/>.</returns>
            <exception cref="T:System.InvalidOperationException">There is no service of type <paramref name="serviceType"/>.</exception>
        </member>
        <member name="M:Microsoft.OData.ServiceProviderExtensions.GetRequiredService``1(System.IServiceProvider)">
            <summary>
            Gets a service of type <typeparamref name="T"/> from the <see cref="T:System.IServiceProvider"/>.
            </summary>
            <typeparam name="T">The type of service object to get.</typeparam>
            <param name="container">The <see cref="T:System.IServiceProvider"/> to retrieve the service object from.</param>
            <returns>A service object of type <typeparamref name="T"/>.</returns>
            <exception cref="T:System.InvalidOperationException">There is no service of type <typeparamref name="T"/>.</exception>
        </member>
        <member name="M:Microsoft.OData.ServiceProviderExtensions.GetServices``1(System.IServiceProvider)">
            <summary>
            Gets an enumeration of services of type <typeparamref name="T"/> from the <see cref="T:System.IServiceProvider"/>.
            </summary>
            <typeparam name="T">The type of service object to get.</typeparam>
            <param name="container">The <see cref="T:System.IServiceProvider"/> to retrieve the services from.</param>
            <returns>An enumeration of services of type <typeparamref name="T"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ServiceProviderExtensions.GetServices(System.IServiceProvider,System.Type)">
            <summary>
            Gets an enumeration of services of type <paramref name="serviceType"/> from the <see cref="T:System.IServiceProvider"/>.
            </summary>
            <param name="container">The <see cref="T:System.IServiceProvider"/> to retrieve the services from.</param>
            <param name="serviceType">An object that specifies the type of service object to get.</param>
            <returns>An enumeration of services of type <paramref name="serviceType"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.ServiceProviderExtensions.GetServicePrototype``1(System.IServiceProvider)">
            <summary>
            Gets the service prototype of type <typeparamref name="TService"/> from the <see cref="T:System.IServiceProvider"/>.
            </summary>
            <typeparam name="TService">The type of service prototype to get.</typeparam>
            <param name="container">The <see cref="T:System.IServiceProvider"/> to retrieve the services from.</param>
            <returns>The service prototype of type <typeparamref name="TService"/>.</returns>
        </member>
        <member name="T:Microsoft.OData.SimpleLazy`1">
            <summary>
            A simple implementation of LazyOfT since the framework version is not available in all platforms we compile this code in...
            </summary>
            <typeparam name="T">Type to lazy create.</typeparam>
        </member>
        <member name="F:Microsoft.OData.SimpleLazy`1.mutex">
            <summary>
            For thread safty in creating the value.
            </summary>
        </member>
        <member name="F:Microsoft.OData.SimpleLazy`1.factory">
            <summary>
            The factory method to create the lazy instance.
            </summary>
        </member>
        <member name="F:Microsoft.OData.SimpleLazy`1.value">
            <summary>
            Holds the lazy instance to create.
            </summary>
        </member>
        <member name="F:Microsoft.OData.SimpleLazy`1.valueCreated">
            <summary>
            true if the factory method has been called, false otherwise.
            </summary>
        </member>
        <member name="M:Microsoft.OData.SimpleLazy`1.#ctor(System.Func{`0})">
            <summary>
            Creates an instance of ODataLazyOfT.
            </summary>
            <param name="factory">The factory method to create the lazy instance.</param>
        </member>
        <member name="M:Microsoft.OData.SimpleLazy`1.#ctor(System.Func{`0},System.Boolean)">
            <summary>
            Creates an instance of ODataLazyOfT.
            </summary>
            <param name="factory">The factory method to create the lazy instance.</param>
            <param name="isThreadSafe">true if the value will be created in a thread safety, false assume single thread access to Value.</param>
        </member>
        <member name="P:Microsoft.OData.SimpleLazy`1.Value">
            <summary>
            Creates the value if it hasn't already been created and returns the created value.
            </summary>
        </member>
        <member name="M:Microsoft.OData.SimpleLazy`1.CreateValue">
            <summary>
            Creates the value.
            </summary>
        </member>
        <member name="T:Microsoft.OData.TaskUtils">
            <summary>
            Class with utility methods for working with and implementing Task based APIs
            </summary>
        </member>
        <member name="F:Microsoft.OData.TaskUtils.completedTask">
            <summary>
            Already completed task.
            </summary>
        </member>
        <member name="P:Microsoft.OData.TaskUtils.CompletedTask">
            <summary>
            Returns already completed task instance.
            </summary>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.GetCompletedTask``1(``0)">
            <summary>
            Returns an already completed task instance with the specified result.
            </summary>
            <typeparam name="T">Type of the result.</typeparam>
            <param name="value">The value of the result.</param>
            <returns>An already completed task with the specified result.</returns>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.GetFaultedTask(System.Exception)">
            <summary>
            Returns an already completed task instance with the specified error.
            </summary>
            <param name="exception">The exception of the faulted result.</param>
            <returns>An already completed task with the specified exception.</returns>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.GetFaultedTask``1(System.Exception)">
            <summary>
            Returns an already completed task instance with the specified error.
            </summary>
            <typeparam name="T">Type of the result.</typeparam>
            <param name="exception">The exception of the faulted result.</param>
            <returns>An already completed task with the specified exception.</returns>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.GetTaskForSynchronousOperation(System.Action)">
            <summary>
            Returns an already completed task for the specified synchronous operation.
            </summary>
            <param name="synchronousOperation">The synchronous operation to perform.</param>
            <returns>An already completed task. If the <paramref name="synchronousOperation"/> succeeded this will be a successfully completed task,
            otherwise it will be a faulted task holding the exception thrown.</returns>
            <remarks>The advantage of this method over CompletedTask property is that if the <paramref name="synchronousOperation"/> fails
            this method returns a faulted task, instead of throwing exception.</remarks>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.GetTaskForSynchronousOperation``1(System.Func{``0})">
            <summary>
            Returns an already completed task for the specified synchronous operation.
            </summary>
            <typeparam name="T">The type of the result returned by the operation. This MUST NOT be a Task type.</typeparam>
            <param name="synchronousOperation">The synchronous operation to perform.</param>
            <returns>An already completed task. If the <paramref name="synchronousOperation"/> succeeded this will be a successfully completed task,
            otherwise it will be a faulted task holding the exception thrown.</returns>
            <remarks>The advantage of this method over GetCompletedTask property is that if the <paramref name="synchronousOperation"/> fails
            this method returns a faulted task, instead of throwing exception.</remarks>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.GetTaskForSynchronousOperationReturningTask(System.Func{System.Threading.Tasks.Task})">
            <summary>
            Returns an already completed task for the specified synchronous operation which returns a task.
            </summary>
            <param name="synchronousOperation">The synchronous operation to perform.</param>
            <returns>The task returned by the <paramref name="synchronousOperation"/> or a faulted task if the operation failed.</returns>
            <remarks>The advantage of this method over direct call is that if the <paramref name="synchronousOperation"/> fails
            this method returns a faulted task, instead of throwing exception.</remarks>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.GetTaskForSynchronousOperationReturningTask``1(System.Func{System.Threading.Tasks.Task{``0}})">
            <summary>
            Returns an already completed task for the specified synchronous operation which returns a task.
            </summary>
            <typeparam name="TResult">The type of the task result.</typeparam>
            <param name="synchronousOperation">The synchronous operation to perform.</param>
            <returns>The task returned by the <paramref name="synchronousOperation"/> or a faulted task if the operation failed.</returns>
            <remarks>The advantage of this method over direct call is that if the <paramref name="synchronousOperation"/> fails
            this method returns a faulted task, instead of throwing exception.</remarks>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.FollowOnSuccessWith(System.Threading.Tasks.Task,System.Action{System.Threading.Tasks.Task})">
            <summary>
            Returns a new task which will consist of the <paramref name="antecedentTask"/> followed by a call to the <paramref name="operation"/>
            which will only be invoked if the antecendent task succeeded.
            </summary>
            <param name="antecedentTask">The task to "append" the operation to.</param>
            <param name="operation">The operation to execute if the <paramref name="antecedentTask"/> succeeded.</param>
            <returns>A new task which represents the antecedent task followed by a conditional invoke to the operation.</returns>
            <remarks>This method unlike ContinueWith will return a task which will fail if the antecedent task fails, thus it propagates failures.</remarks>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.FollowOnSuccessWith``1(System.Threading.Tasks.Task,System.Func{System.Threading.Tasks.Task,``0})">
            <summary>
            Returns a new task which will consist of the <paramref name="antecedentTask"/> followed by a call to the <paramref name="operation"/>
            which will only be invoked if the antecendent task succeeded.
            </summary>
            <typeparam name="TFollowupTaskResult">The result type of the operation. This MUST NOT be a Task or a type derived from Task.</typeparam>
            <param name="antecedentTask">The task to "append" the operation to.</param>
            <param name="operation">The operation to execute if the <paramref name="antecedentTask"/> succeeded.</param>
            <returns>A new task which represents the antecedent task followed by a conditional invoke to the operation.</returns>
            <remarks>
            This method unlike ContinueWith will return a task which will fail if the antecedent task fails, thus it propagates failures.
            This method doesn't support operations which return another Task instance, to use that call FollowOnSuccessWithTask instead.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.FollowOnSuccessWith``1(System.Threading.Tasks.Task{``0},System.Action{System.Threading.Tasks.Task{``0}})">
            <summary>
            Returns a new task which will consist of the <paramref name="antecedentTask"/> followed by a call to the <paramref name="operation"/>
            which will only be invoked if the antecendent task succeeded.
            </summary>
            <typeparam name="TAntecedentTaskResult">The result type of the antecedent task.</typeparam>
            <param name="antecedentTask">The task to "append" the operation to.</param>
            <param name="operation">The operation to execute if the <paramref name="antecedentTask"/> succeeded.</param>
            <returns>A new task which represents the antecedent task followed by a conditional invoke to the operation.</returns>
            <remarks>This method unlike ContinueWith will return a task which will fail if the antecedent task fails, thus it propagates failures.</remarks>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.FollowOnSuccessWith``2(System.Threading.Tasks.Task{``0},System.Func{System.Threading.Tasks.Task{``0},``1})">
            <summary>
            Returns a new task which will consist of the <paramref name="antecedentTask"/> followed by a call to the <paramref name="operation"/>
            which will only be invoked if the antecendent task succeeded.
            </summary>
            <typeparam name="TAntecedentTaskResult">The result type of the antecedent task.</typeparam>
            <typeparam name="TFollowupTaskResult">The result type of the operation. This MUST NOT be a Task or a type derived from Task.</typeparam>
            <param name="antecedentTask">The task to "append" the operation to.</param>
            <param name="operation">The operation to execute if the <paramref name="antecedentTask"/> succeeded.</param>
            <returns>A new task which represents the antecedent task followed by a conditional invoke to the operation.</returns>
            <remarks>
            This method unlike ContinueWith will return a task which will fail if the antecedent task fails, thus it propagates failures.
            This method doesn't support operations which return another Task instance, to use that call FollowOnSuccessWithTask instead.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.FollowOnSuccessWithTask(System.Threading.Tasks.Task,System.Func{System.Threading.Tasks.Task,System.Threading.Tasks.Task})">
            <summary>
            Returns a new task which will consist of the <paramref name="antecedentTask"/> followed by a call to the <paramref name="operation"/>
            which will only be invoked if the antecendent task succeeded.
            </summary>
            <param name="antecedentTask">The task to "append" the operation to.</param>
            <param name="operation">The operation to execute if the <paramref name="antecedentTask"/> succeeded.</param>
            <returns>A new task which represents the antecedent task followed by a conditional invoke to the operation.</returns>
            <remarks>
            This method unlike ContinueWith will return a task which will fail if the antecedent task fails, thus it propagates failures.
            This method handles operation which returns another task. The method will unwrap and return a task which finishes when both
            the antecedent task, the operation as well as the task returned by that operation finished.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.FollowOnSuccessWithTask``1(System.Threading.Tasks.Task,System.Func{System.Threading.Tasks.Task,System.Threading.Tasks.Task{``0}})">
            <summary>
            Returns a new task which will consist of the <paramref name="antecedentTask"/> followed by a call to the <paramref name="operation"/>
            which will only be invoked if the antecendent task succeeded.
            </summary>
            <typeparam name="TFollowupTaskResult">The result type of the operation. This MUST NOT be a Task or a type derived from Task.</typeparam>
            <param name="antecedentTask">The task to "append" the operation to.</param>
            <param name="operation">The operation to execute if the <paramref name="antecedentTask"/> succeeded.</param>
            <returns>A new task which represents the antecedent task followed by a conditional invoke to the operation.</returns>
            <remarks>
            This method unlike ContinueWith will return a task which will fail if the antecedent task fails, thus it propagates failures.
            This method handles operation which returns another task. The method will unwrap and return a task which finishes when both
            the antecedent task, the operation as well as the task returned by that operation finished.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.FollowOnSuccessWithTask``1(System.Threading.Tasks.Task{``0},System.Func{System.Threading.Tasks.Task{``0},System.Threading.Tasks.Task})">
            <summary>
            Returns a new task which will consist of the <paramref name="antecedentTask"/> followed by a call to the <paramref name="operation"/>
            which will only be invoked if the antecendent task succeeded.
            </summary>
            <typeparam name="TAntecedentTaskResult">The result type of the antecedent task.</typeparam>
            <param name="antecedentTask">The task to "append" the operation to.</param>
            <param name="operation">The operation to execute if the <paramref name="antecedentTask"/> succeeded.</param>
            <returns>A new task which represents the antecedent task followed by a conditional invoke to the operation.</returns>
            <remarks>
            This method unlike ContinueWith will return a task which will fail if the antecedent task fails, thus it propagates failures.
            This method handles operation which returns another task. The method will unwrap and return a task which finishes when both
            the antecedent task, the operation as well as the task returned by that operation finished.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.FollowOnSuccessWithTask``2(System.Threading.Tasks.Task{``0},System.Func{System.Threading.Tasks.Task{``0},System.Threading.Tasks.Task{``1}})">
            <summary>
            Returns a new task which will consist of the <paramref name="antecedentTask"/> followed by a call to the <paramref name="operation"/>
            which will only be invoked if the antecendent task succeeded.
            </summary>
            <typeparam name="TAntecedentTaskResult">The result type of the antecedent task.</typeparam>
            <typeparam name="TFollowupTaskResult">The result type of the operation. This MUST NOT be a Task or a type derived from Task.</typeparam>
            <param name="antecedentTask">The task to "append" the operation to.</param>
            <param name="operation">The operation to execute if the <paramref name="antecedentTask"/> succeeded.</param>
            <returns>A new task which represents the antecedent task followed by a conditional invoke to the operation.</returns>
            <remarks>
            This method unlike ContinueWith will return a task which will fail if the antecedent task fails, thus it propagates failures.
            This method handles operation which returns another task. The method will unwrap and return a task which finishes when both
            the antecedent task, the operation as well as the task returned by that operation finished.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.FollowOnFaultWith(System.Threading.Tasks.Task,System.Action{System.Threading.Tasks.Task})">
            <summary>
            Returns a new task which will consist of the <paramref name="antecedentTask"/> followed by a call to the <paramref name="operation"/>
            which will only be invoked if the antecendent task faulted.
            </summary>
            <param name="antecedentTask">The task to "append" the operation to.</param>
            <param name="operation">The operation to execute if the <paramref name="antecedentTask"/> faulted.</param>
            <returns>A new task which represents the antecedent task followed by a conditional invoke to the operation.</returns>
            <remarks>This method unlike ContinueWith will return a task which will fail if the antecedent task fails, thus it propagates failures.</remarks>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.FollowOnFaultWith``1(System.Threading.Tasks.Task{``0},System.Action{System.Threading.Tasks.Task{``0}})">
            <summary>
            Returns a new task which will consist of the <paramref name="antecedentTask"/> followed by a call to the <paramref name="operation"/>
            which will only be invoked if the antecendent task faulted.
            </summary>
            <typeparam name="TResult">The type of the result of the task.</typeparam>
            <param name="antecedentTask">The task to "append" the operation to.</param>
            <param name="operation">The operation to execute if the <paramref name="antecedentTask"/> faulted.</param>
            <returns>A new task which represents the antecedent task followed by a conditional invoke to the operation.</returns>
            <remarks>This method unlike ContinueWith will return a task which will fail if the antecedent task fails, thus it propagates failures.</remarks>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.FollowOnFaultAndCatchExceptionWith``2(System.Threading.Tasks.Task{``0},System.Func{``1,``0})">
            <summary>
            Returns a new task which will consist of the <paramref name="antecedentTask"/> followed by a call to the <paramref name="catchBlock"/>
            which will only be invoked if the antecendent task faulted and it failed with exception of type TExceptionType.
            </summary>
            <typeparam name="TResult">The type of the result of the task.</typeparam>
            <typeparam name="TExceptionType">The exception type to catch.</typeparam>
            <param name="antecedentTask">The task to "append" the operation to.</param>
            <param name="catchBlock">The operation to execute if the <paramref name="antecedentTask"/> faulted with an exception of type TExceptionType.</param>
            <returns>A new task which represents the antecedent task followed by a conditional invoke to the operation.</returns>
            <remarks>This method unlike ContinueWith will return a task which will fail if the antecedent task fails and the exception is not of the TExceptionType,
            if the exception type matches, the task will return the value returned by the catchBlock.</remarks>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.FollowAlwaysWith(System.Threading.Tasks.Task,System.Action{System.Threading.Tasks.Task})">
            <summary>
            Returns a new task which will consist of the <paramref name="antecedentTask"/> followed by a call to the <paramref name="operation"/>
            which will get called no matter what the result of the antecedent task was.
            </summary>
            <param name="antecedentTask">The task to "append" the operation to.</param>
            <param name="operation">The operation to execute after the <paramref name="antecedentTask"/> finished.</param>
            <returns>A new task which represents the antecedent task followed by an invoke to the operation.</returns>
            <remarks>
            This method unlike ContinueWith will return a task which will fail if the antecedent task fails, thus it propagates failures.
            Note that the operation may not return any value, since the original result of the antecedent task will be used always.
            Also if the operation fails, the resulting task fails. If both tasks fail, the antecedent task failure is reported only.</remarks>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.FollowAlwaysWith``1(System.Threading.Tasks.Task{``0},System.Action{System.Threading.Tasks.Task{``0}})">
            <summary>
            Returns a new task which will consist of the <paramref name="antecedentTask"/> followed by a call to the <paramref name="operation"/>
            which will get called no matter what the result of the antecedent task was.
            </summary>
            <typeparam name="TResult">The type of the result of the task.</typeparam>
            <param name="antecedentTask">The task to "append" the operation to.</param>
            <param name="operation">The operation to execute after the <paramref name="antecedentTask"/> finished.</param>
            <returns>A new task which represents the antecedent task followed by an invoke to the operation.</returns>
            <remarks>
            This method unlike ContinueWith will return a task which will fail if the antecedent task fails, thus it propagates failures.
            Note that the operation may not return any value, since the original result of the antecedent task will be used always.
            Also if the operation fails, the resulting task fails. If both tasks fail, the antecedent task failure is reported only.</remarks>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.IgnoreExceptions(System.Threading.Tasks.Task)">
            <summary>Suppresses default exception handling of a Task that would otherwise reraise the exception on the finalizer thread.</summary>
            <param name="task">The Task to be monitored.</param>
            <returns>The original Task.</returns>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.GetTargetScheduler(System.Threading.Tasks.TaskFactory)">
            <summary>Gets the TaskScheduler instance that should be used to schedule tasks.</summary>
            <param name="factory">Factory to get the scheduler for.</param>
            <returns>The scheduler for the specified factory.</returns>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.Iterate(System.Threading.Tasks.TaskFactory,System.Collections.Generic.IEnumerable{System.Threading.Tasks.Task})">
            <summary>Asynchronously iterates through an enumerable of tasks.</summary>
            <param name="factory">The target factory.</param>
            <param name="source">The enumerable containing the tasks to be iterated through.</param>
            <returns>A Task that represents the complete asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.FollowOnSuccessWithContinuation``1(System.Threading.Tasks.Task,System.Threading.Tasks.TaskCompletionSource{``0},System.Func{System.Threading.Tasks.Task,``0})">
            <summary>
            The func used as the continuation (the func in the ContinueWith) for FollowOnSuccess implementations.
            </summary>
            <typeparam name="TResult">The type of the result of the operation to follow up with.</typeparam>
            <param name="antecedentTask">The task which just finished.</param>
            <param name="taskCompletionSource">The task completion source to apply the result to.</param>
            <param name="operation">The func to execute as the follow up action in case of success of the <paramref name="antecedentTask"/>.</param>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.FollowOnSuccessWithImplementation``1(System.Threading.Tasks.Task,System.Func{System.Threading.Tasks.Task,``0})">
            <summary>
            The implementation helper for FollowOnSuccess methods which don't allow result type of Task.
            </summary>
            <typeparam name="TResult">The type of the result of the followup operation, this MUST NOT be a Task type.</typeparam>
            <param name="antecedentTask">The task to follow with operation.</param>
            <param name="operation">The operation to follow up with.</param>
            <returns>A new Task which wraps both the <paramref name="antecedentTask"/> and the conditional execution of <paramref name="operation"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.FollowOnFaultWithImplementation``1(System.Threading.Tasks.Task,System.Func{System.Threading.Tasks.Task,``0},System.Action{System.Threading.Tasks.Task})">
            <summary>
            The implementation helper for FollowOnFault methods.
            </summary>
            <typeparam name="TResult">The type of the result of the task.</typeparam>
            <param name="antecedentTask">The task to follow with operation in case of fault.</param>
            <param name="getTaskResult">Func which gets a task result value.</param>
            <param name="operation">The operation to follow up with.</param>
            <returns>A new Task which wraps both the <paramref name="antecedentTask"/> and the conditional execution of <paramref name="operation"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.FollowOnFaultAndCatchExceptionWithImplementation``2(System.Threading.Tasks.Task,System.Func{System.Threading.Tasks.Task,``0},System.Func{``1,``0})">
            <summary>
            The implementation helper for FollowOnFaultAndCatchException methods.
            </summary>
            <typeparam name="TResult">The type of the result of the task.</typeparam>
            <typeparam name="TExceptionType">The type of the exception to catch.</typeparam>
            <param name="antecedentTask">The task to follow with operation in case of fault.</param>
            <param name="getTaskResult">Func which gets a task result value.</param>
            <param name="catchBlock">The operation to follow up with.</param>
            <returns>A new Task which wraps both the <paramref name="antecedentTask"/> and the conditional execution of <paramref name="catchBlock"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.TaskUtils.FollowAlwaysWithImplementation``1(System.Threading.Tasks.Task,System.Func{System.Threading.Tasks.Task,``0},System.Action{System.Threading.Tasks.Task})">
            <summary>
            Returns a new task which will consist of the <paramref name="antecedentTask"/> followed by a call to the <paramref name="operation"/>
            which will get called no matter what the result of the antecedent task was.
            </summary>
            <typeparam name="TResult">The type of the result of the task.</typeparam>
            <param name="antecedentTask">The task to "append" the operation to.</param>
            <param name="getTaskResult">Function which gets a task result.</param>
            <param name="operation">The operation to execute after the <paramref name="antecedentTask"/> finished.</param>
            <returns>A new task which represents the antecedent task followed by an invoke to the operation.</returns>
            <remarks>
            This method unlike ContinueWith will return a task which will fail if the antecedent task fails, thus it propagates failures.
            Note that the operation may not return any value, since the original result of the antecedent task will be used always.
            Also if the operation fails, the resulting task fails. If both tasks fail, the antecedent task failure is reported only.</remarks>
        </member>
        <member name="T:Microsoft.OData.TypeNameOracle">
            <summary>
            Class to validate and resolve the type name to be serialized.
            </summary>
        </member>
        <member name="M:Microsoft.OData.TypeNameOracle.ResolveAndValidateTypeName(Microsoft.OData.Edm.IEdmModel,System.String,Microsoft.OData.Edm.EdmTypeKind,System.Nullable{System.Boolean},Microsoft.OData.IWriterValidator)">
            <summary>
            Validates a type name to ensure that it's not an empty string and resolves it against the provided <paramref name="model"/>.
            </summary>
            <param name="model">The model to use.</param>
            <param name="typeName">The type name to validate.</param>
            <param name="expectedTypeKind">The expected type kind for the given type name.</param>
            <param name="expectStructuredType">This value indicates if a structured type is expected to be return.
            True for structured type, false for non-structured type, null for indetermination.</param>
            <param name="writerValidator">The writer validator to use for validation.</param>
            <returns>The type with the given name and kind if a user model was available, otherwise null.</returns>
        </member>
        <member name="M:Microsoft.OData.TypeNameOracle.ResolveAndValidateTypeFromTypeName(Microsoft.OData.Edm.IEdmModel,Microsoft.OData.Edm.IEdmStructuredType,System.String,Microsoft.OData.IWriterValidator)">
            <summary>
            Resolve a resource type name
            </summary>
            <param name="model">The model to use.</param>
            <param name="expectedType">The type inferred from the model or null if the model is not a user model.</param>
            <param name="typeName">Name of the type to resolve.</param>
            <param name="writerValidator">The writer validator to use for validation.</param>
            <returns>A type for primitive value</returns>
        </member>
        <member name="M:Microsoft.OData.TypeNameOracle.ResolveAndValidateTypeForPrimitiveValue(Microsoft.OData.ODataPrimitiveValue)">
            <summary>
            Resolve a primitive value type name
            </summary>
            <param name="primitiveValue">The value to get the type name from.</param>
            <returns>A type for primitive value</returns>
        </member>
        <member name="M:Microsoft.OData.TypeNameOracle.ResolveAndValidateTypeForEnumValue(Microsoft.OData.Edm.IEdmModel,Microsoft.OData.ODataEnumValue,System.Boolean)">
            <summary>
            Resolve a type name against the provided <paramref name="model"/>. If not payload type name is specified,
            derive the type from the model type (if available).
            </summary>
            <param name="model">The model to use.</param>
            <param name="enumValue">The value in question to resolve the type for.</param>
            <param name="isOpenPropertyType">True if the type name belongs to an open property.</param>
            <returns>A type for the <paramref name="enumValue"/> or null if no type name is specified and no metadata is available.</returns>
        </member>
        <member name="M:Microsoft.OData.TypeNameOracle.ResolveAndValidateTypeForCollectionValue(Microsoft.OData.Edm.IEdmModel,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.ODataCollectionValue,System.Boolean,Microsoft.OData.IWriterValidator)">
            <summary>
            Resolve a type name against the provided <paramref name="model"/>. If not payload type name is specified,
            derive the type from the model type (if available).
            </summary>
            <param name="model">The model to use.</param>
            <param name="typeReferenceFromMetadata">The type inferred from the model or null if the model is not a user model.</param>
            <param name="collectionValue">The value in question to resolve the type for.</param>
            <param name="isOpenPropertyType">True if the type name belongs to an open property.</param>
            <param name="writerValidator">The writer validator to use for validation.</param>
            <returns>A type for the <paramref name="collectionValue"/> or null if no type name is specified and no metadata is available.</returns>
        </member>
        <member name="M:Microsoft.OData.TypeNameOracle.TryGetTypeNameFromAnnotation(Microsoft.OData.ODataValue,System.String@)">
            <summary>
            Try to get type name from ODataValue annotation.
            </summary>
            <param name="value">The value to get type annotation.</param>
            <param name="propertyName">The type name from annotation</param>
            <returns>True if there is type name annotation.</returns>
        </member>
        <member name="M:Microsoft.OData.TypeNameOracle.GetTypeNameFromValue(System.Object)">
            <summary>
            Gets the type name from the given <paramref name="value"/>.
            </summary>
            <param name="value">The value to get the type name from. This can be an ODataPrimitiveValue, an ODataCollectionValue or a Clr primitive object.</param>
            <returns>The type name for the given <paramref name="value"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.TypeNameOracle.ValidateIfTypeNameMissing(System.String,Microsoft.OData.Edm.IEdmModel,System.Boolean)">
            <summary>
            Validate if type name is missing
            </summary>
            <param name="typeName">Type name of the property to be validated.</param>
            <param name="model">The model to use.</param>
            <param name="isOpenPropertyType">If the property is open.</param>
        </member>
        <member name="M:Microsoft.OData.TypeNameOracle.ResolveTypeFromMetadataAndValue(Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.IWriterValidator)">
            <summary>
            Validates that the (optional) <paramref name="typeReferenceFromMetadata"/> is the same as the (optional) <paramref name="typeReferenceFromValue"/>.
            </summary>
            <param name="typeReferenceFromMetadata">The (optional) type from the metadata definition (the expected type).</param>
            <param name="typeReferenceFromValue">The (optional) type from the value (the actual type).</param>
            <param name="writerValidator">The writer validator to use for validation.</param>
            <returns>The type as derived from the <paramref name="typeReferenceFromMetadata"/> and/or <paramref name="typeReferenceFromValue"/>.</returns>
        </member>
        <member name="T:Microsoft.OData.TypeUtils">
            <summary>
            Utility methods for working with CLR types.
            </summary>
        </member>
        <member name="M:Microsoft.OData.TypeUtils.IsNullableType(System.Type)">
            <summary>Checks whether the specified type is a generic nullable type.</summary>
            <param name="type">Type to check.</param>
            <returns>true if <paramref name="type"/> is nullable; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.TypeUtils.GetNonNullableType(System.Type)">
            <summary>Gets a non-nullable version of the specified type.</summary>
            <param name="type">Type to get non-nullable version for.</param>
            <returns>
            <paramref name="type"/> if type is a reference type or a
            non-nullable type; otherwise, the underlying value type.
            </returns>
        </member>
        <member name="M:Microsoft.OData.TypeUtils.GetNullableType(System.Type)">
            <summary>
            Checks whether the specified <paramref name="type"/> can be assigned null. If it is a non-nullable
            value type it creates the corresonding nullable type and returns it.
            </summary>
            <param name="type">The type to check.</param>
            <returns>The <paramref name="type"/> if it allows null or the corresponding nullable type.</returns>
        </member>
        <member name="M:Microsoft.OData.TypeUtils.TypeAllowsNull(System.Type)">
            <summary>Checks whether the specified <paramref name='type' /> can be assigned null.</summary>
            <param name='type'>Type to check.</param>
            <returns>true if type is a reference type or a Nullable type; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.TypeUtils.AreTypesEquivalent(System.Type,System.Type)">
            <summary>
            Determines if two CLR types are equivalent.
            </summary>
            <param name="typeA">First type to compare.</param>
            <param name="typeB">Second type to compare.</param>
            <returns>true if the types are equivalent (they both represent the same type), or false otherwise.</returns>
            <remarks>This method abstracts away the necessity to call Type.IsEquivalentTo method in .NET 4 and higher but
            use simple reference equality on platforms which don't have that method (like Silverlight).</remarks>
        </member>
        <member name="M:Microsoft.OData.TypeUtils.ParseQualifiedTypeName(System.String,System.String@,System.String@,System.Boolean@)">
            <summary>
            Parses a qualified type name and returns the type namespace and type name
            </summary>
            <param name="qualifiedTypeName">The fully qualified type name.</param>
            <param name="namespaceName">The returned namespace name.</param>
            <param name="typeName">The returned type name.</param>
            <param name="isCollection">Returns whether or not the returned type is a collection.</param>
        </member>
        <member name="T:Microsoft.OData.UriParser.Aggregation.AggregateExpression">
            <summary>
            Represents an aggregate expression that aggregates a single value entity.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.AggregateExpression.#ctor(Microsoft.OData.UriParser.SingleValueNode,Microsoft.OData.UriParser.Aggregation.AggregationMethod,System.String,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Create a PropertyAggregateExpression.
            </summary>
            <param name="expression">The aggregation expression.</param>
            <param name="method">The <see cref="T:Microsoft.OData.UriParser.Aggregation.AggregationMethod"/>.</param>
            <param name="alias">The aggregation alias.</param>
            <param name="typeReference">The <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/> of this aggregate expression.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.AggregateExpression.#ctor(Microsoft.OData.UriParser.SingleValueNode,Microsoft.OData.UriParser.Aggregation.AggregationMethodDefinition,System.String,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Create a AggregateExpression.
            </summary>
            <param name="expression">The aggregation expression.</param>
            <param name="methodDefinition">The <see cref="T:Microsoft.OData.UriParser.Aggregation.AggregationMethodDefinition"/>.</param>
            <param name="alias">The aggregation alias.</param>
            <param name="typeReference">The <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/> of this aggregate expression.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.AggregateExpression.Expression">
            <summary>
            Gets the aggregation expression.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.AggregateExpression.Method">
            <summary>
            Gets the <see cref="T:Microsoft.OData.UriParser.Aggregation.AggregationMethod"/>.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.AggregateExpression.MethodDefinition">
            <summary>
            Gets the <see cref="T:Microsoft.OData.UriParser.Aggregation.AggregationMethodDefinition"/>.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.AggregateExpression.TypeReference">
            <summary>
            Gets the <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/> of this aggregate expression.
            </summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.Aggregation.AggregateExpressionKind">
            <summary>
            Enumeration of the possible types of aggregations.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.Aggregation.AggregateExpressionKind.None">
            <summary>Value used to treat non recognized aggregations.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.Aggregation.AggregateExpressionKind.PropertyAggregate">
            <summary>Aggregation of a single value property.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.Aggregation.AggregateExpressionKind.EntitySetAggregate">
            <summary>Aggregation of a entity set property.</summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.Aggregation.AggregateExpressionBase">
            <summary>
            A aggregate expression representing a aggregation transformation.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.AggregateExpressionBase.#ctor(Microsoft.OData.UriParser.Aggregation.AggregateExpressionKind,System.String)">
            <summary>Base constructor for concrete subclasses use for convenience.</summary>
            <param name="kind">The <see cref="T:Microsoft.OData.UriParser.Aggregation.AggregateExpressionKind"/> of the expression.</param>
            <param name="alias">Alias of the resulting aggregated value.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.AggregateExpressionBase.AggregateKind">
            <summary>Returns the <see cref="T:Microsoft.OData.UriParser.Aggregation.AggregateExpressionKind"/> of the expression.</summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.AggregateExpressionBase.Alias">
            <summary>Returns the alias of the expression.</summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.Aggregation.AggregateExpressionToken">
            <summary>
            Query token representing an Aggregate expression.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.AggregateExpressionToken.#ctor(Microsoft.OData.UriParser.QueryToken,Microsoft.OData.UriParser.Aggregation.AggregationMethod,System.String)">
            <summary>
            Create an AggregateExpressionToken.
            </summary>
            <param name="expression">The aggregate expression.</param>
            <param name="method">The aggregation method.</param>
            <param name="alias">The alias for this query token.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.AggregateExpressionToken.#ctor(Microsoft.OData.UriParser.QueryToken,Microsoft.OData.UriParser.Aggregation.AggregationMethodDefinition,System.String)">
            <summary>
            Create an AggregateExpressionToken.
            </summary>
            <param name="expression">The aggregate expression.</param>
            <param name="methodDefinition">The aggregate method definition.</param>
            <param name="alias">The alias for this query token.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.AggregateExpressionToken.Kind">
            <summary>
            Gets the kind of this token.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.AggregateExpressionToken.Method">
            <summary>
            Gets the AggregationMethod of this token.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.AggregateExpressionToken.Expression">
            <summary>
            Gets the expression.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.AggregateExpressionToken.MethodDefinition">
            <summary>
            Gets the aggregate method definition.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.AggregateExpressionToken.Alias">
            <summary>
            Gets the alias.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.AggregateExpressionToken.Accept``1(Microsoft.OData.UriParser.ISyntacticTreeVisitor{``0})">
            <summary>
            Accept a <see cref="T:Microsoft.OData.UriParser.ISyntacticTreeVisitor`1"/> to walk a tree of <see cref="T:Microsoft.OData.UriParser.QueryToken"/>s.
            </summary>
            <typeparam name="T">Type that the visitor will return after visiting this token.</typeparam>
            <param name="visitor">An implementation of the visitor interface.</param>
            <returns>An object whose type is determined by the type parameter of the visitor.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.Aggregation.AggregateToken">
            <summary>
            Query token representing an Aggregate token.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.AggregateToken.#ctor(System.Collections.Generic.IEnumerable{Microsoft.OData.UriParser.Aggregation.AggregateTokenBase})">
            <summary>
            Create an AggregateTransformationToken.
            </summary>
            <param name="expressions">The aggregate expressions.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.AggregateToken.Kind">
            <summary>
            Gets the kind of this token.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.AggregateToken.Expressions">
            <summary>
            Create an AggregateToken.
            </summary>
            <param name="expressions">The list of AggregateExpressionToken.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.AggregateToken.AggregateExpressions">
            <summary>
            Gets the expressions of this token.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.AggregateToken.Accept``1(Microsoft.OData.UriParser.ISyntacticTreeVisitor{``0})">
            <summary>
            Accept a <see cref="T:Microsoft.OData.UriParser.ISyntacticTreeVisitor`1"/> to walk a tree of <see cref="T:Microsoft.OData.UriParser.QueryToken"/>s.
            </summary>
            <typeparam name="T">Type that the visitor will return after visiting this token.</typeparam>
            <param name="visitor">An implementation of the visitor interface.</param>
            <returns>An object whose type is determined by the type parameter of the visitor.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.Aggregation.AggregateTokenBase">
            <summary>
            Base class for Aggregate transformation tokens
            </summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.Aggregation.AggregateTransformationNode">
            <summary>
            Node representing a aggregate transformation.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.AggregateTransformationNode.#ctor(System.Collections.Generic.IEnumerable{Microsoft.OData.UriParser.Aggregation.AggregateExpressionBase})">
            <summary>
            Create a AggregateTransformationNode.
            </summary>
            <param name="expressions">A list of <see cref="T:Microsoft.OData.UriParser.Aggregation.AggregateExpressionBase"/>.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.AggregateTransformationNode.Expressions">
            <summary>
            Property that only return <see cref="T:Microsoft.OData.UriParser.Aggregation.AggregateExpression"/>s.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.AggregateTransformationNode.AggregateExpressions">
            <summary>
            Property that returns a list of all <see cref="T:Microsoft.OData.UriParser.Aggregation.AggregateExpressionBase"/>s of this transformation node.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.AggregateTransformationNode.Kind">
            <summary>
            Gets the kind of the transformation node.
            </summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.Aggregation.AggregationMethod">
            <summary>
            Enumeration of methods used in the aggregation clause
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.Aggregation.AggregationMethod.Sum">
            <summary>The aggregation method Sum.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.Aggregation.AggregationMethod.Min">
            <summary>The aggregation method Min.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.Aggregation.AggregationMethod.Max">
            <summary>The aggregation method Max.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.Aggregation.AggregationMethod.Average">
            <summary>The aggregation method Average.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.Aggregation.AggregationMethod.CountDistinct">
            <summary>The aggregation method CountDistinct.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.Aggregation.AggregationMethod.VirtualPropertyCount">
            <summary>The aggregation method Count. Used only internally to represent the virtual property $count.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.Aggregation.AggregationMethod.Custom">
            <summary>A custom aggregation method.</summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.Aggregation.AggregationMethodDefinition">
            <summary>
            Class that encapsulates all the information needed to define a aggregation method.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.Aggregation.AggregationMethodDefinition.Sum">
            <summary>Returns a definition for the sum aggregation method.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.Aggregation.AggregationMethodDefinition.Min">
            <summary>Returns a definition for the min aggregation method.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.Aggregation.AggregationMethodDefinition.Max">
            <summary>Returns a definition for the max aggregation method.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.Aggregation.AggregationMethodDefinition.Average">
            <summary>Returns a definition for the average aggregation method.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.Aggregation.AggregationMethodDefinition.CountDistinct">
            <summary>Returns a definition for the countdistinct aggregation method.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.Aggregation.AggregationMethodDefinition.VirtualPropertyCount">
            <summary>Returns a definition for the aggregation method used to calculate $count.</summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.AggregationMethodDefinition.#ctor(Microsoft.OData.UriParser.Aggregation.AggregationMethod)">
            <summary>Private constructor. Instances should be aquired via static fields of via Custom method.</summary>
            <param name="aggregationMethodType">The <see cref="T:Microsoft.OData.UriParser.Aggregation.AggregationMethod"/> of this method definition.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.AggregationMethodDefinition.MethodKind">
            <summary>Returns the <see cref="T:Microsoft.OData.UriParser.Aggregation.AggregationMethod"/> of this method definition.</summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.AggregationMethodDefinition.MethodLabel">
            <summary>Returns the label of this method definition.</summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.AggregationMethodDefinition.Custom(System.String)">
            <summary>Creates a custom method definition from it's label.</summary>
            <param name="customMethodLabel">The label to call the custom method definition.</param>
            <returns>The custom method created.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.Aggregation.ApplyClause">
            <summary>
            Represents the set of transformations to perform as part of $apply.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.ApplyClause.#ctor(System.Collections.Generic.IList{Microsoft.OData.UriParser.Aggregation.TransformationNode})">
            <summary>
            Create a ApplyClause.
            </summary>
            <param name="transformations">The <see cref="T:Microsoft.OData.UriParser.Aggregation.TransformationNode"/>s.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.ApplyClause.Transformations">
            <summary>
            The collection of transformations to perform.
            </summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.Aggregation.ApplyTransformationToken">
            <summary>
            Base class for Apply transformation tokens
            </summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.Aggregation.ComputeTransformationNode">
            <summary>
            Node representing a compute expression.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.ComputeTransformationNode.#ctor(System.Collections.Generic.IEnumerable{Microsoft.OData.UriParser.ComputeExpression})">
            <summary>
            Create a ComputeTransformationNode.
            </summary>
            <param name="expressions">A list of <see cref="T:Microsoft.OData.UriParser.ComputeExpression"/>.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.ComputeTransformationNode.Expressions">
            <summary>
            Gets the list of <see cref="T:Microsoft.OData.UriParser.ComputeExpression"/>.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.ComputeTransformationNode.Kind">
            <summary>
            Gets the kind of the transformation node.
            </summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.Aggregation.EntitySetAggregateExpression">
            <summary>
            Represents an aggregate expression that aggregates an entity set.
            An example of a OData query that generates it can be found in example 59 of OData Extension for Data Aggregation Version 4.0.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.EntitySetAggregateExpression.#ctor(Microsoft.OData.UriParser.CollectionNavigationNode,System.Collections.Generic.IEnumerable{Microsoft.OData.UriParser.Aggregation.AggregateExpressionBase})">
            <summary>Constructor.</summary>
            <param name="expression">Navigation node used to create the expression.</param>
            <param name="children">Children of the expression.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.EntitySetAggregateExpression.Expression">
            <summary>Returns the collection navigation node of this expression.</summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.EntitySetAggregateExpression.Children">
            <summary>Returns the children expression of this expression.</summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.Aggregation.EntitySetAggregateToken">
            <summary>
            Query token representing an Entity Set Aggregate expression.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.EntitySetAggregateToken.#ctor(Microsoft.OData.UriParser.QueryToken,System.Collections.Generic.IEnumerable{Microsoft.OData.UriParser.Aggregation.AggregateTokenBase})">
            <summary>
            Create an EntitySetAggregateToken.
            </summary>
            <param name="entitySet">The entity set.</param>
            <param name="expressions">The aggregate expressions.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.EntitySetAggregateToken.Kind">
            <summary>
            Gets the kind of this token.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.EntitySetAggregateToken.Expressions">
            <summary>
            Gets the expressions associated with the aggregation token.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.EntitySetAggregateToken.EntitySet">
            <summary>
            Gets the entity set associated with the aggregation token.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.EntitySetAggregateToken.Merge(Microsoft.OData.UriParser.Aggregation.EntitySetAggregateToken,Microsoft.OData.UriParser.Aggregation.EntitySetAggregateToken)">
            <summary>
            Merges two <see cref="T:Microsoft.OData.UriParser.Aggregation.EntitySetAggregateToken"/> that have the same entity set into one.
            If the parameters do not share the the entity set, an exception is thrown.
            </summary>
            <param name="token1">First token that is going to be merged.</param>
            <param name="token2">Second token that is going to be merged.</param>
            <returns>
            Returns a token with the same entitySet as the parameters and with expressions from both objects.
            </returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.EntitySetAggregateToken.Path">
            <summary>
            Returns the path to access the entity set.
            </summary>
            <returns>Returns a <see cref="T:System.String"/> that contains the path to access the entity set.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.EntitySetAggregateToken.Accept``1(Microsoft.OData.UriParser.ISyntacticTreeVisitor{``0})">
            <summary>
            Accept a <see cref="T:Microsoft.OData.UriParser.ISyntacticTreeVisitor`1"/> to walk a tree of <see cref="T:Microsoft.OData.UriParser.QueryToken"/>s.
            </summary>
            <typeparam name="T">Type that the visitor will return after visiting this token.</typeparam>
            <param name="visitor">An implementation of the visitor interface.</param>
            <returns>An object whose type is determined by the type parameter of the visitor.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.Aggregation.FilterTransformationNode">
            <summary>
            Node representing a filter transformation.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.FilterTransformationNode.#ctor(Microsoft.OData.UriParser.FilterClause)">
            <summary>
            Create a FilterTransformationNode.
            </summary>
            <param name="filterClause">A <see cref="P:Microsoft.OData.UriParser.Aggregation.FilterTransformationNode.FilterClause"/> representing the metadata bound filter expression.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.FilterTransformationNode.FilterClause">
            <summary>
            Gets the <see cref="P:Microsoft.OData.UriParser.Aggregation.FilterTransformationNode.FilterClause"/> representing the metadata bound filter expression.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.FilterTransformationNode.Kind">
            <summary>
            Gets the kind of the transformation node.
            </summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.Aggregation.GroupByPropertyNode">
            <summary>
            A node representing a grouping property.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.GroupByPropertyNode.#ctor(System.String,Microsoft.OData.UriParser.SingleValueNode)">
            <summary>
            Create a GroupByPropertyNode.
            </summary>
            <param name="name">The name of this node.</param>
            <param name="expression">The <see cref="T:Microsoft.OData.UriParser.SingleValueNode"/> of this node.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.GroupByPropertyNode.#ctor(System.String,Microsoft.OData.UriParser.SingleValueNode,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Create a GroupByPropertyNode.
            </summary>
            <param name="name">The name of this node.</param>
            <param name="expression">The <see cref="T:Microsoft.OData.UriParser.SingleValueNode"/> of this node.</param>
            <param name="type">The <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/> of this node.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.GroupByPropertyNode.Name">
            <summary>
            Gets the name of this node.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.GroupByPropertyNode.Expression">
            <summary>
            Gets the <see cref="T:Microsoft.OData.UriParser.SingleValueNode"/> of this node.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.GroupByPropertyNode.TypeReference">
            <summary>
            Gets the <see cref="T:Microsoft.OData.Edm.IEdmTypeReference"/> of this node.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.GroupByPropertyNode.ChildTransformations">
            <summary>
            Gets or sets the child transformations <see cref="T:Microsoft.OData.UriParser.Aggregation.GroupByPropertyNode"/>s of this node.
            </summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.Aggregation.GroupByToken">
            <summary>
            Query token representing a GroupBy token.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.GroupByToken.#ctor(System.Collections.Generic.IEnumerable{Microsoft.OData.UriParser.EndPathToken},Microsoft.OData.UriParser.Aggregation.ApplyTransformationToken)">
            <summary>
            Create a GroupByToken.
            </summary>
            <param name="properties">The list of group by properties.</param>
            <param name="child">The child of this token.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.GroupByToken.Kind">
            <summary>
            Gets the kind of this token.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.GroupByToken.Properties">
            <summary>
            Gets the list of group by properties.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.GroupByToken.Child">
            <summary>
            Gets the child of this token.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.GroupByToken.Accept``1(Microsoft.OData.UriParser.ISyntacticTreeVisitor{``0})">
            <summary>
            Accept a <see cref="T:Microsoft.OData.UriParser.ISyntacticTreeVisitor`1"/> to walk a tree of <see cref="T:Microsoft.OData.UriParser.QueryToken"/>s.
            </summary>
            <typeparam name="T">Type that the visitor will return after visiting this token.</typeparam>
            <param name="visitor">An implementation of the visitor interface.</param>
            <returns>An object whose type is determined by the type parameter of the visitor.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.Aggregation.GroupByTransformationNode">
            <summary>
            Node representing a groupBy transformation.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.Aggregation.GroupByTransformationNode.#ctor(System.Collections.Generic.IList{Microsoft.OData.UriParser.Aggregation.GroupByPropertyNode},Microsoft.OData.UriParser.Aggregation.TransformationNode,Microsoft.OData.UriParser.CollectionNode)">
            <summary>
            Create a GroupByTransformationNode.
            </summary>
            <param name="groupingProperties">A list of <see cref="T:Microsoft.OData.UriParser.Aggregation.GroupByPropertyNode"/>.</param>
            <param name="childTransformations">The child <see cref="T:Microsoft.OData.UriParser.Aggregation.TransformationNode"/>.</param>
            <param name="source">The <see cref="T:Microsoft.OData.UriParser.CollectionNode"/> representing the source.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.GroupByTransformationNode.GroupingProperties">
            <summary>
            Gets the list of <see cref="T:Microsoft.OData.UriParser.Aggregation.GroupByPropertyNode"/>.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.GroupByTransformationNode.ChildTransformations">
            <summary>
            Gets the child <see cref="T:Microsoft.OData.UriParser.Aggregation.TransformationNode"/>.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.GroupByTransformationNode.Source">
            <summary>
            Gets the <see cref="T:Microsoft.OData.UriParser.CollectionNode"/> representing the source.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.GroupByTransformationNode.Kind">
            <summary>
            Gets the kind of the transformation node.
            </summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.Aggregation.TransformationNode">
            <summary>
            Base class for all transformation nodes.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.Aggregation.TransformationNode.Kind">
            <summary>
            Gets kind of transformation: groupby, aggregate, filter etc.
            </summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.Aggregation.TransformationNodeKind">
            <summary>
            Enumeration of kinds of transformation nodes.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.Aggregation.TransformationNodeKind.Aggregate">
            <summary>
            Aggregations of values
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.Aggregation.TransformationNodeKind.GroupBy">
            <summary>
            A grouping of values by properties
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.Aggregation.TransformationNodeKind.Filter">
            <summary>
            A filter clause
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.Aggregation.TransformationNodeKind.Compute">
            <summary>
            A Compute expressions
            </summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.BinaryOperatorBinder">
            <summary>
            Class that knows how to bind binary operators.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.BinaryOperatorBinder.bindMethod">
            <summary>
            Method to use for binding the parent node, if needed.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.BinaryOperatorBinder.resolver">
            <summary>
            Resolver for parsing
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.BinaryOperatorBinder.#ctor(System.Func{Microsoft.OData.UriParser.QueryToken,Microsoft.OData.UriParser.QueryNode},Microsoft.OData.UriParser.ODataUriResolver)">
            <summary>
            Constructs a BinaryOperatorBinder with the given method to be used binding the parent token if needed.
            </summary>
            <param name="bindMethod">Method to use for binding the parent token, if needed.</param>
            <param name="resolver">Resolver for parsing.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.BinaryOperatorBinder.BindBinaryOperator(Microsoft.OData.UriParser.BinaryOperatorToken)">
            <summary>
            Binds a binary operator token.
            </summary>
            <param name="binaryOperatorToken">The binary operator token to bind.</param>
            <returns>The bound binary operator token.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.BinaryOperatorBinder.PromoteOperandTypes(Microsoft.OData.UriParser.BinaryOperatorKind,Microsoft.OData.UriParser.SingleValueNode@,Microsoft.OData.UriParser.SingleValueNode@,Microsoft.OData.UriParser.TypeFacetsPromotionRules)">
            <summary>
            Promote the left and right operand types
            </summary>
            <param name="binaryOperatorKind">the operator kind</param>
            <param name="left">the left operand</param>
            <param name="right">the right operand</param>
            <param name="facetsPromotionRules">Promotion rules for type facets.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.BinaryOperatorBinder.GetOperandFromToken(Microsoft.OData.UriParser.BinaryOperatorKind,Microsoft.OData.UriParser.QueryToken)">
            <summary>
            Retrieve SingleValueNode bound with given query token.
            </summary>
            <param name="operatorKind">the query token kind</param>
            <param name="queryToken">the query token</param>
            <returns>the corresponding SingleValueNode</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.BinderBase">
            <summary>
            Base class for binders
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.BinderBase.bindMethod">
            <summary>
            Method to use for binding the parent node, if needed.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.BinderBase.state">
            <summary>
            State of metadata binding.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.BinderBase.#ctor(Microsoft.OData.UriParser.MetadataBinder.QueryTokenVisitor,Microsoft.OData.UriParser.BindingState)">
            <summary>
            Constructor for binderbase.
            </summary>
            <param name="bindMethod">Method to use for binding the parent token, if needed.</param>
            <param name="state">State of the metadata binding.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.BinderBase.Resolver">
            <summary>
            Resolver for uri parser.
            </summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.BindingState">
            <summary>
            Encapsulates the state of metadata binding.
            TODO: finish moving fields from MetadataBinder here and see if anything can be removed.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.BindingState.configuration">
            <summary>
            The configuration used for binding.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.BindingState.rangeVariables">
            <summary>
            The dictionary used to store mappings between Any visitor and corresponding segment paths
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.BindingState.implicitRangeVariable">
            <summary>
            If there is a $filter or $orderby, then this member holds the reference to the parameter node for the
            implicit parameter ($it) for all expressions.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.BindingState.BindingRecursionDepth">
            <summary>
            The current recursion depth of binding.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.BindingState.queryOptions">
            <summary>
            Collection of query option tokens associated with the current query being processed.
            If a given query option is bound it should be removed from this collection.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.BindingState.parsedSegments">
            <summary>
            The parsed segments in path and query option.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.BindingState.#ctor(Microsoft.OData.UriParser.ODataUriParserConfiguration)">
            <summary>
            Constructs a <see cref="T:Microsoft.OData.UriParser.BindingState"/> with the given <paramref name="configuration"/>.
            </summary>
            <param name="configuration">The configuration used for binding.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.BindingState.Model">
            <summary>
            The model used for binding.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.BindingState.Configuration">
            <summary>
            The configuration used for binding.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.BindingState.ImplicitRangeVariable">
            <summary>
            If there is a $filter or $orderby, then this member holds the reference to the parameter node for the
            implicit parameter ($it) for all expressions.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.BindingState.RangeVariables">
            <summary>
            The dictionary used to store mappings between Any visitor and corresponding segment paths
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.BindingState.QueryOptions">
            <summary>
            Collection of query option tokens associated with the current query being processed.
            If a given query option is bound it should be removed from this collection.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.BindingState.AggregatedPropertyNames">
            <summary>
            Collection of aggregated property names after applying an aggregate transformation.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.BindingState.ParsedSegments">
            <summary>
            The parsed segments in path and query option.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.BindingState.RecurseEnter">
            <summary>
            Marks the fact that a recursive method was entered, and checks that the depth is allowed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.BindingState.RecurseLeave">
            <summary>
            Marks the fact that a recursive method is leaving.
            </summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.DottedIdentifierBinder">
            <summary>
            Class that knows how to bind CastTokens.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.DottedIdentifierBinder.#ctor(Microsoft.OData.UriParser.MetadataBinder.QueryTokenVisitor,Microsoft.OData.UriParser.BindingState)">
            <summary>
            Constructs a DottedIdentifierBinder with the given method to be used binding the parent token if needed.
            </summary>
            <param name="bindMethod">Method to use for binding the parent token, if needed.</param>
            <param name="state">State of the metadata binding.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.DottedIdentifierBinder.BindDottedIdentifier(Microsoft.OData.UriParser.DottedIdentifierToken)">
            <summary>
            Binds a DottedIdentifierToken and it's parent node (if needed).
            </summary>
            <param name="dottedIdentifierToken">Token to bind to metadata.</param>
            <returns>A bound node representing the cast.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.EndPathBinder">
            <summary>
            Class that knows how to bind an end path token, which could be several things.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.EndPathBinder.functionCallBinder">
            <summary>
            The function call binder to use to bind this end path to a function if necessary.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.EndPathBinder.#ctor(Microsoft.OData.UriParser.MetadataBinder.QueryTokenVisitor,Microsoft.OData.UriParser.BindingState)">
            <summary>
            Constructs a EndPathBinder object using the given function to bind parent token.
            </summary>
            <param name="bindMethod">Method to bind the EndPathToken's parent, if there is one.</param>
            <param name="state">State of the metadata binding.</param>am>
            <remarks>
            Make bindMethod of return type SingleValueQueryNode.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.UriParser.EndPathBinder.GeneratePropertyAccessQueryNode(Microsoft.OData.UriParser.SingleResourceNode,Microsoft.OData.Edm.IEdmProperty,Microsoft.OData.UriParser.BindingState)">
            <summary>
            Generates a bound query node representing an <see cref="T:Microsoft.OData.Edm.IEdmProperty"/> given an already semantically bound parent node.
            </summary>
            <param name="parentNode">The semantically bound source node of this end path token</param>
            <param name="property">The <see cref="T:Microsoft.OData.Edm.IEdmProperty"/> that will be bound to this node. Must not be primitive collection</param>
            <param name="state">The state of binding.</param>
            <returns>QueryNode bound to this property.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.EndPathBinder.CreateParentFromImplicitRangeVariable(Microsoft.OData.UriParser.BindingState)">
            <summary>
            Constructs parent node from binding state
            </summary>
            <param name="state">Current binding state</param>
            <returns>The parent node.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.EndPathBinder.GeneratePropertyAccessQueryForOpenType(Microsoft.OData.UriParser.EndPathToken,Microsoft.OData.UriParser.SingleValueNode)">
            <summary>
            This method generates a <see cref="T:Microsoft.OData.UriParser.SingleValueOpenPropertyAccessNode"/> for properties of open type
            </summary>
            <param name="endPathToken">EndPathToken to bind into an open property node.</param>
            <param name="parentNode">Parent node of this open property</param>
            <returns>Will return a <see cref="T:Microsoft.OData.UriParser.SingleValueOpenPropertyAccessNode"/> when open types are supported</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.EndPathBinder.BindEndPath(Microsoft.OData.UriParser.EndPathToken)">
            <summary>
            Binds an end path token into a PropertyAccessToken, OpenPropertyToken, or FunctionCallToken.
            </summary>
            <param name="endPathToken">The property access token to bind.</param>
            <returns>A Query node representing this endpath token, bound to metadata.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.EndPathBinder.DetermineParentNode(Microsoft.OData.UriParser.EndPathToken)">
            <summary>
            Determines the parent node. If the token has a parent, that token is bound. If not, then we
            use the implicit parameter from the BindingState as the parent node.
            </summary>
            <param name="segmentToken">Token to determine the parent node for.</param>
            <returns>A SingleValueQueryNode that is the parent node of the <paramref name="segmentToken"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.EndPathBinder.IsAggregatedProperty(System.String)">
            <summary>
            Determines the token if represents an aggregated property or not.
            </summary>
            <param name="identifier">Tokon identifier.</param>
            <returns>Whether the token represents an aggregated property.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.EnumBinder">
            <summary>
            Enum binder
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.EnumBinder.TryBindDottedIdentifierAsEnum(Microsoft.OData.UriParser.DottedIdentifierToken,Microsoft.OData.UriParser.SingleValueNode,Microsoft.OData.UriParser.BindingState,Microsoft.OData.UriParser.QueryNode@)">
            <summary>
            Try to bind a dotted identifier as enum node
            </summary>
            <param name="dottedIdentifierToken">a dotted identifier token</param>
            <param name="parent">the parent node</param>
            <param name="state">the current state of the binding algorithm</param>
            <param name="boundEnum">the output bound enum node</param>
            <returns>true if we bound an enum node, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.EnumBinder.TryBindIdentifier(System.String,Microsoft.OData.Edm.IEdmEnumTypeReference,Microsoft.OData.Edm.IEdmModel,Microsoft.OData.UriParser.QueryNode@)">
            <summary>
            Try to bind an identifier to a EnumNode
            </summary>
            <param name="identifier">the identifier to bind</param>
            <param name="typeReference">the enum typeReference</param>
            <param name="modelWhenNoTypeReference">the current model when no enum typeReference.</param>
            <param name="boundEnum">an enum node .</param>
            <returns>true if we bound an enum for this token.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.EnumBinder.TryParseEnum(Microsoft.OData.Edm.IEdmEnumType,System.String,Microsoft.OData.ODataEnumValue@)">
            <summary>
            Parse string or integer to enum value
            </summary>
            <param name="enumType">edm enum type</param>
            <param name="value">input string value</param>
            <param name="enumValue">output edm enum value</param>
            <returns>true if parse succeeds, false if fails</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.ExpandTreeNormalizer">
            <summary>
            Translator from the old expand syntax tree to the new Expand Option syntax tree
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpandTreeNormalizer.NormalizeExpandTree(Microsoft.OData.UriParser.ExpandToken)">
            <summary>
            Normalize an expand syntax tree into the new ExpandOption syntax.
            </summary>
            <param name="treeToNormalize">the tree to normalize</param>
            <returns>a new tree, in the new ExpandOption syntax</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpandTreeNormalizer.NormalizePaths(Microsoft.OData.UriParser.ExpandToken)">
            <summary>
            Invert the all of the paths in an expandToken, such that they are now in the same order as they are present in the
            base url
            </summary>
            <param name="treeToInvert">the tree to invert paths on</param>
            <returns>a new tree with all of its paths inverted</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpandTreeNormalizer.CombineTerms(Microsoft.OData.UriParser.ExpandToken)">
            <summary>
            Collapse all redundant terms in an expand tree
            </summary>
            <param name="treeToCollapse">the tree to collapse</param>
            <returns>A new tree with all redundant terms collapsed.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpandTreeNormalizer.CombineTerms(Microsoft.OData.UriParser.ExpandTermToken,Microsoft.OData.UriParser.ExpandTermToken)">
            <summary>
            add a new expandTermToken into an exisiting token, adding any additional levels and trees along the way.
            </summary>
            <param name="existingToken">the exisiting (already expanded) token</param>
            <param name="newToken">the new (already expanded) token</param>
            <returns>the combined token, or, if the two are mutually exclusive, the same tokens</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpandTreeNormalizer.CombineChildNodes(Microsoft.OData.UriParser.ExpandTermToken,Microsoft.OData.UriParser.ExpandTermToken)">
            <summary>
            Combine the child nodes of twoExpandTermTokens into one list of tokens
            </summary>
            <param name="existingToken">the existing token to to</param>
            <param name="newToken">the new token containing terms to add</param>
            <returns>a combined list of the all child nodes of the two tokens.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpandTreeNormalizer.AddChildOptionsToDictionary(Microsoft.OData.UriParser.ExpandTermToken,System.Collections.Generic.Dictionary{Microsoft.OData.UriParser.PathSegmentToken,Microsoft.OData.UriParser.ExpandTermToken})">
            <summary>
            Add child options to a new dictionary
            </summary>
            <param name="newToken">the token with child nodes to add to the dictionary</param>
            <param name="combinedTerms">dictionary to add child nodes to</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpandTreeNormalizer.AddOrCombine(System.Collections.Generic.IDictionary{Microsoft.OData.UriParser.PathSegmentToken,Microsoft.OData.UriParser.ExpandTermToken},Microsoft.OData.UriParser.ExpandTermToken)">
            <summary>
            Adds the expand token to the dictionary or combines it with an existing or combines it with another existing token with an equivalent path.
            </summary>
            <param name="combinedTerms">The combined terms dictionary.</param>
            <param name="expandedTerm">The expanded term to add or combine.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpandTreeNormalizer.CombineSelects(Microsoft.OData.UriParser.ExpandTermToken,Microsoft.OData.UriParser.ExpandTermToken)">
            <summary>
            Combine together the select clauses of two ExpandTermTokens
            </summary>
            <param name="existingToken">the already existing expand term token</param>
            <param name="newToken">the new expand term token to be added</param>
            <returns>A new select term containing each of the selected entries.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpandTreeNormalizer.RemoveDuplicateSelect(Microsoft.OData.UriParser.SelectToken)">
            <summary>
            Get rid of duplicate selected item in SelectToken
            </summary>
            <param name="selectToken">Select token to be dealt with</param>
            <returns>A new select term containing each of the </returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.FilterBinder">
            <summary>
            Class responsible for binding a syntactic filter expression into a bound tree of semantic nodes.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.FilterBinder.bindMethod">
            <summary>
            Method to use to visit the token tree and bind the tokens recursively.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.FilterBinder.state">
            <summary>
            State to use for binding.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.FilterBinder.#ctor(Microsoft.OData.UriParser.MetadataBinder.QueryTokenVisitor,Microsoft.OData.UriParser.BindingState)">
            <summary>
            Creates a FilterBinder.
            </summary>
            <param name="bindMethod">Method to use to visit the token tree and bind the tokens recursively.</param>
            <param name="state">State to use for binding.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.FilterBinder.BindFilter(Microsoft.OData.UriParser.QueryToken)">
            <summary>
            Binds the given filter token.
            </summary>
            <param name="filter">The filter token to bind.</param>
            <returns>A FilterNode with the given path linked to it (if provided).</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.FunctionCallBinder">
            <summary>
            Class that knows how to bind function call tokens.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.FunctionCallBinder.UnboundFunctionNames">
            <summary>
            The names of functions that we don't bind to BuiltInFunctions
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallBinder.#ctor(Microsoft.OData.UriParser.MetadataBinder.QueryTokenVisitor,Microsoft.OData.UriParser.BindingState)">
            <summary>
            Constructs a FunctionCallBinder with the given method to be used binding the parent token if needed.
            </summary>
            <param name="bindMethod">Method to use for binding the parent token, if needed.</param>
            <param name="state">State of the metadata binding.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallBinder.TypePromoteArguments(Microsoft.OData.UriParser.FunctionSignatureWithReturnType,System.Collections.Generic.List{Microsoft.OData.UriParser.QueryNode})">
            <summary>
            Promotes types of arguments to match signature if possible.
            </summary>
            <param name="signature">The signature to match the types to.</param>
            <param name="argumentNodes">The types to promote.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallBinder.ValidateArgumentsAreSingleValue(System.String,System.Collections.Generic.List{Microsoft.OData.UriParser.QueryNode})">
            <summary>
            Checks that all arguments are SingleValueNodes
            </summary>
            <param name="functionName">The name of the function the arguments are from.</param>
            <param name="argumentNodes">The arguments to validate.</param>
            <returns>SingleValueNode array</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallBinder.MatchSignatureToUriFunction(System.String,Microsoft.OData.UriParser.SingleValueNode[],System.Collections.Generic.IList{System.Collections.Generic.KeyValuePair{System.String,Microsoft.OData.UriParser.FunctionSignatureWithReturnType}})">
            <summary>
            Finds the signature that best matches the arguments
            </summary>
            <param name="functionCallToken">The name of the function</param>
            <param name="argumentNodes">The nodes of the arguments, can be new {null,null}.</param>
            <param name="nameSignatures">The name-signature pairs to match against</param>
            <returns>Returns the matching signature or throws</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallBinder.GetUriFunctionSignatures(System.String,System.Boolean)">
            <summary>
            Finds all signatures for the given function name.
            Search in both BuiltIn uri functions and Custom uri functions.
            Combine and return the signatures overloads of the results.
            </summary>
            <param name="functionCallToken">The function call token to get the signatures for.</param>
            <param name="enableCaseInsensitive">Optional flag for whether case insensitive match is enabled.</param>
            <returns>The signatures which match the supplied function name.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallBinder.BindFunctionCall(Microsoft.OData.UriParser.FunctionCallToken)">
            <summary>
            Binds the token to a SingleValueFunctionCallNode or a SingleResourceFunctionCallNode for complex
            </summary>
            <param name="functionCallToken">Token to bind</param>
            <returns>The resulting SingleValueFunctionCallNode/SingleResourceFunctionCallNode</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallBinder.TryBindEndPathAsFunctionCall(Microsoft.OData.UriParser.EndPathToken,Microsoft.OData.UriParser.QueryNode,Microsoft.OData.UriParser.BindingState,Microsoft.OData.UriParser.QueryNode@)">
            <summary>
            Try to bind an end path token as a function call. Used for bound functions without parameters
            that parse as end path tokens syntactically
            </summary>
            <param name="endPathToken">the end path token to bind</param>
            <param name="parent">the parent node to this end path token.</param>
            <param name="state">the current state of the binding algorithm</param>
            <param name="boundFunction">a single value function call node representing the function call, if it exists</param>
            <returns>true if we found a function for this token, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallBinder.TryBindInnerPathAsFunctionCall(Microsoft.OData.UriParser.InnerPathToken,Microsoft.OData.UriParser.QueryNode,Microsoft.OData.UriParser.QueryNode@)">
            <summary>
            Try to bind an inner path token as a function call. Used for bound functions without parameters
            that parse as inner path tokens syntactically
            </summary>
            <param name="innerPathToken">the end path token to bind</param>
            <param name="parent">the parent node to this end path token.</param>
            <param name="boundFunction">a single value function call node representing the function call, if it exists</param>
            <returns>true if we found a function for this token, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallBinder.TryBindDottedIdentifierAsFunctionCall(Microsoft.OData.UriParser.DottedIdentifierToken,Microsoft.OData.UriParser.SingleValueNode,Microsoft.OData.UriParser.QueryNode@)">
            <summary>
            Try to bind a <see cref="T:Microsoft.OData.UriParser.DottedIdentifierToken"/> as a function call. Used for container qualified functions without parameters.
            </summary>
            <param name="dottedIdentifierToken">the dotted identifier token to bind</param>
            <param name="parent">the semantically bound parent node for this dotted identifier</param>
            <param name="boundFunction">a single value function call node representing the function call, if we found one.</param>
            <returns>true if we found a function for this token, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallBinder.BindAsUriFunction(Microsoft.OData.UriParser.FunctionCallToken,System.Collections.Generic.List{Microsoft.OData.UriParser.QueryNode})">
            <summary>
            Bind this function call token as a Uri function
            </summary>
            <param name="functionCallToken">the function call token to bind</param>
            <param name="argumentNodes">list of semantically bound arguments</param>
            <returns>A function call node bound to this function.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallBinder.TryBindIdentifier(System.String,System.Collections.Generic.IEnumerable{Microsoft.OData.UriParser.FunctionParameterToken},Microsoft.OData.UriParser.QueryNode,Microsoft.OData.UriParser.BindingState,Microsoft.OData.UriParser.QueryNode@)">
            <summary>
            Try to bind an identifier to a FunctionCallNode
            </summary>
            <param name="identifier">the identifier to bind</param>
            <param name="arguments">the semantically bound list of arguments.</param>
            <param name="parent">a semantically bound parent node.</param>
            <param name="state">the current state of the binding algorithm</param>
            <param name="boundFunction">a single value function call node representing this function call, if we found one.</param>
            <returns>true if we found a function for this token.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallBinder.BindSegmentParameters(Microsoft.OData.UriParser.ODataUriParserConfiguration,Microsoft.OData.Edm.IEdmOperation,System.Collections.Generic.ICollection{Microsoft.OData.UriParser.FunctionParameterToken})">
            <summary>
            Bind path segment's operation or operationImport's parameters.
            </summary>
            <param name="configuration">The ODataUriParserConfiguration.</param>
            <param name="functionOrOpertion">The function or operation.</param>
            <param name="segmentParameterTokens">The parameter tokens to be binded.</param>
            <returns>The binded semantic nodes.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallBinder.TryRewriteIntegralConstantNode(Microsoft.OData.UriParser.SingleValueNode@,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Try to rewrite an Edm.Int32 constant node if its value is within the valid range of the target integer type.
            </summary>
            <param name="boundNode">The node to be rewritten.</param>
            <param name="targetType">The target type reference.</param>
            <returns>If the node is successfully rewritten.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallBinder.HandleComplexOrCollectionParameterValueIfExists(Microsoft.OData.Edm.IEdmModel,Microsoft.OData.Edm.IEdmOperation,System.Collections.Generic.ICollection{Microsoft.OData.UriParser.FunctionParameterToken},System.Boolean,System.Boolean)">
            <summary>
            This is temp work around for $filter $orderby parameter expression which contains complex or collection
                like "Fully.Qualified.Namespace.CanMoveToAddresses(addresses=[{\"Street\":\"NE 24th St.\",\"City\":\"Redmond\"},{\"Street\":\"Pine St.\",\"City\":\"Seattle\"}])";
            TODO: $filter $orderby parameter expression which contains nested complex or collection should NOT be supported in this way
                but should be parsed into token tree, and binded to node tree: parsedParameters.Select(p => this.bindMethod(p));
            </summary>
            <param name="model">The model.</param>
            <param name="operation">IEdmFunction or IEdmOperation</param>
            <param name="parameterTokens">The tokens to bind.</param>
            <param name="enableCaseInsensitive">Whether to enable case-insensitive when resolving parameter name.</param>
            <param name="enableUriTemplateParsing">Whether Uri template parsing is enabled.</param>
            <returns>The FunctionParameterTokens with complex or collection values converted from string like "{...}", or "[..,..,..]".</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallBinder.IsUnboundFunction(System.String)">
            <summary>
            Determines whether this is a unbound BuiltInFunction according to the configured case-sensitiveness.
            </summary>
            <param name="functionName">name of the function</param>
            <returns>matched unbound function names; null if no matches found.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallBinder.CreateUnboundFunctionNode(System.String,System.Collections.Generic.List{Microsoft.OData.UriParser.QueryNode})">
            <summary>
            Build a SingleValueFunctionCallNode for a function that isn't bound to a BuiltInFunction
            </summary>
            <param name="functionCallTokenName">Name for the function</param>
            <param name="args">list of already bound query nodes for this function</param>
            <returns>A single value function call node bound to this function.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallBinder.ValidateAndBuildCastArgs(Microsoft.OData.UriParser.BindingState,System.Collections.Generic.List{Microsoft.OData.UriParser.QueryNode}@)">
            <summary>
            Validate the args list (adding the implicit range variable if necessary), and determine the correct return type for a cast function
            </summary>
            <param name="state">current binding state, used to get the implicit range variable if necessary</param>
            <param name="args">list of arguments, could be changed</param>
            <returns>the return type from this cast function</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallBinder.ValidateAndBuildIsOfArgs(Microsoft.OData.UriParser.BindingState,System.Collections.Generic.List{Microsoft.OData.UriParser.QueryNode}@)">
            <summary>
            Validate the arguments (adding the implicit range variable if necessary), and determine the correct return type
            for an IsOf function
            </summary>
            <param name="state">the current state of the binding algorithm, used to get the implicit range variable if necessary</param>
            <param name="args">current list of args, can be changed</param>
            <returns>the correct return type for this function.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallBinder.ValidateIsOfOrCast(Microsoft.OData.UriParser.BindingState,System.Boolean,System.Collections.Generic.List{Microsoft.OData.UriParser.QueryNode}@)">
            <summary>
            Validate the arguments to either isof or cast
            </summary>
            <param name="state">the current state of the binding algorithm</param>
            <param name="isCast">flag to indicate which function we're validating</param>
            <param name="args">the list of arguments, which could be changed</param>
            <returns>the return type of the function.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallBinder.TryGetTypeReference(Microsoft.OData.Edm.IEdmModel,System.String,Microsoft.OData.UriParser.ODataUriResolver)">
            <summary>
            Try to get an IEdmTypeReference for a given type as a string, returns null if none exists
            </summary>
            <param name="model">the model for validation</param>
            <param name="fullTypeName">the type name to find</param>
            <param name="resolver">Resolver for this func.</param>
            <returns>an IEdmTypeReference for this type string.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.InBinder">
            <summary>
            Class that knows how to bind the In operator.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.InBinder.bindMethod">
            <summary>
            Method to use for binding the parent node, if needed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.InBinder.#ctor(System.Func{Microsoft.OData.UriParser.QueryToken,Microsoft.OData.UriParser.QueryNode})">
            <summary>
            Constructs a InBinder with the given method to be used binding the parent token if needed.
            </summary>
            <param name="bindMethod">Method to use for binding the parent token, if needed.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.InBinder.BindInOperator(Microsoft.OData.UriParser.InToken,Microsoft.OData.UriParser.BindingState)">
            <summary>
            Binds an In operator token.
            </summary>
            <param name="inToken">The In operator token to bind.</param>
            <param name="state">State of the metadata binding.</param>
            <returns>The bound In operator token.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.InBinder.GetSingleValueOperandFromToken(Microsoft.OData.UriParser.QueryToken)">
            <summary>
            Retrieve SingleValueNode bound with given query token.
            </summary>
            <param name="queryToken">The query token</param>
            <returns>The corresponding SingleValueNode</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.InBinder.GetCollectionOperandFromToken(Microsoft.OData.UriParser.QueryToken,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.Edm.IEdmModel)">
            <summary>
            Retrieve CollectionNode bound with given query token.
            </summary>
            <param name="queryToken">The query token</param>
            <param name="expectedType">The expected type that this collection holds</param>
            <param name="model">The Edm model</param>
            <returns>The corresponding CollectionNode</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.InnerPathTokenBinder">
            <summary>
            Class responsible for binding a InnerPathToken into:
            1. SingleNavigationNode
            2. CollectionNavigationNode
            3. SinglePropertyAccessNode (complex)
            4. CollectionPropertyAccessNode (primitive | complex)
            5. KeyLookupNode
            6. SingleValueFunctionCallNode
            7. SingleResourceFunctionCallNode
            </summary>
            <remarks>
            TODO: The binder does support key lookup on collection navigation properties, however at this time
            the synctactic parser does not set things up correctly to allow end-to-end scenarios to work.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.UriParser.InnerPathTokenBinder.#ctor(Microsoft.OData.UriParser.MetadataBinder.QueryTokenVisitor,Microsoft.OData.UriParser.BindingState)">
            <summary>
            Constructs a InnerPathTokenBinder.
            </summary>
            <param name="bindMethod">Bind method to use for binding a parent node, if needed.</param>
            <param name="state">State of the metadata binding.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.InnerPathTokenBinder.EnsureParentIsResourceForNavProp(Microsoft.OData.UriParser.SingleValueNode)">
            <summary>
            Ensures that the parent node is of structured type, throwing if it is not.
            </summary>
            <param name="parent">Parent node to a navigation property.</param>
            <returns>The given parent node as a SingleResourceNode.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.InnerPathTokenBinder.BindProperty(Microsoft.OData.Edm.IEdmTypeReference,System.String,Microsoft.OData.UriParser.ODataUriResolver)">
            <summary>
            Given a property name, if the associated type reference is structured, then this returns
            the property of the structured type. Otherwise, it returns null.
            </summary>
            <param name="parentReference">The parent type to be used to find binding options.</param>
            <param name="propertyName">The string designated the property name to be bound.</param>
            <param name="resolver">Resolver for uri parser.</param>
            <returns>The property associated with string and parent type.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.InnerPathTokenBinder.GetNavigationNode(Microsoft.OData.Edm.IEdmNavigationProperty,Microsoft.OData.UriParser.SingleResourceNode,System.Collections.Generic.IEnumerable{Microsoft.OData.UriParser.NamedValue},Microsoft.OData.UriParser.BindingState,Microsoft.OData.UriParser.KeyBinder,Microsoft.OData.Edm.IEdmNavigationSource@)">
            <summary>
            Builds an appropriate navigation query node (collection or single) for the given property and parent node.
            </summary>
            <param name="property">Navigation property.</param>
            <param name="parent">Parent Node.</param>
            <param name="namedValues">Named values (key values) that were included in the node we are binding, if any.</param>
            <param name="state">State of binding.</param>
            <param name="keyBinder">Object to perform binding on any key values that are present.</param>
            <param name="navigationSource">The navigation source of the navigation node.</param>
            <returns>A new CollectionNavigationNode or SingleNavigationNode to capture the navigation property access.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.InnerPathTokenBinder.BindInnerPathSegment(Microsoft.OData.UriParser.InnerPathToken)">
            <summary>
            Binds a <see cref="T:Microsoft.OData.UriParser.InnerPathToken"/>.
            This includes more than just navigations - it includes complex property access and primitive collections.
            </summary>
            <param name="segmentToken">The segment token to bind.</param>
            <returns>The bound node.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.InnerPathTokenBinder.DetermineParentNode(Microsoft.OData.UriParser.InnerPathToken,Microsoft.OData.UriParser.BindingState)">
            <summary>
            Determines the parent node. If the token has a parent, that token is bound. If not, then we
            use the implicit parameter from the BindingState as the parent node.
            </summary>
            <param name="segmentToken">Token to determine the parent node for.</param>
            <param name="state">Current state of binding.</param>
            <returns>A SingleValueQueryNode that is the parent node of the <paramref name="segmentToken"/>.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.KeyBinder">
            <summary>
            Class that knows how to bind key values.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.KeyBinder.keyValueBindMethod">
            <summary>
            Method to bind the value of a key.
            TODO: Make it of return type SingleValueQueryNode.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.KeyBinder.#ctor(Microsoft.OData.UriParser.MetadataBinder.QueryTokenVisitor)">
            <summary>
            Constructs a KeyBinder object using the given function to bind key values.
            </summary>
            <param name="keyValueBindMethod">Method to call to bind a value in a key.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.KeyBinder.BindKeyValues(Microsoft.OData.UriParser.CollectionResourceNode,System.Collections.Generic.IEnumerable{Microsoft.OData.UriParser.NamedValue},Microsoft.OData.Edm.IEdmModel)">
            <summary>
            Binds key values to a key lookup on a collection.
            </summary>
            <param name="collectionNode">Already bound collection node.</param>
            <param name="namedValues">The named value tokens to bind.</param>
            <param name="model">The model to be used.</param>
            <returns>The bound key lookup.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.KeyBinder.TryBindToDeclaredAlternateKey(Microsoft.OData.UriParser.CollectionResourceNode,System.Collections.Generic.IEnumerable{Microsoft.OData.UriParser.NamedValue},Microsoft.OData.Edm.IEdmModel,Microsoft.OData.Edm.IEdmEntityType,Microsoft.OData.UriParser.QueryNode@)">
            <summary>
            Tries to bind key values to a key lookup on a collection.
            </summary>
            <param name="collectionNode">Already bound collection node.</param>
            <param name="namedValues">The named value tokens to bind.</param>
            <param name="model">The model to be used.</param>
            <param name="collectionItemEntityType">The type of a single item in a collection to apply the key value to.</param>
            <param name="keyLookupNode">The bound key lookup.</param>
            <returns>Returns true if binding succeeded.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.KeyBinder.TryBindToDeclaredKey(Microsoft.OData.UriParser.CollectionResourceNode,System.Collections.Generic.IEnumerable{Microsoft.OData.UriParser.NamedValue},Microsoft.OData.Edm.IEdmModel,Microsoft.OData.Edm.IEdmEntityType,Microsoft.OData.UriParser.QueryNode@)">
            <summary>
            Tries to bind key values to a key lookup on a collection.
            </summary>
            <param name="collectionNode">Already bound collection node.</param>
            <param name="namedValues">The named value tokens to bind.</param>
            <param name="model">The model to be used.</param>
            <param name="collectionItemEntityType">The type of a single item in a collection to apply the key value to.</param>
            <param name="keyLookupNode">The bound key lookup.</param>
            <returns>Returns true if binding succeeded.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.KeyBinder.TryBindToKeys(Microsoft.OData.UriParser.CollectionResourceNode,System.Collections.Generic.IEnumerable{Microsoft.OData.UriParser.NamedValue},Microsoft.OData.Edm.IEdmModel,Microsoft.OData.Edm.IEdmEntityType,System.Collections.Generic.IDictionary{System.String,Microsoft.OData.Edm.IEdmProperty},Microsoft.OData.UriParser.QueryNode@)">
            <summary>
            Binds key values to a key lookup on a collection.
            </summary>
            <param name="collectionNode">Already bound collection node.</param>
            <param name="namedValues">The named value tokens to bind.</param>
            <param name="model">The model to be used.</param>
            <param name="collectionItemEntityType">The type of a single item in a collection to apply the key value to.</param>
            <param name="keys">Dictionary of aliases to structural property names for the key.</param>
            <param name="keyLookupNode">The bound key lookup.</param>
            <returns>Returns true if binding succeeded.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.KeyBinder.TryBindKeyPropertyValue(Microsoft.OData.UriParser.NamedValue,Microsoft.OData.Edm.IEdmEntityType,System.Collections.Generic.IDictionary{System.String,Microsoft.OData.Edm.IEdmProperty},Microsoft.OData.UriParser.KeyPropertyValue@)">
            <summary>
            Binds a key property value.
            </summary>
            <param name="namedValue">The named value to bind.</param>
            <param name="collectionItemEntityType">The type of a single item in a collection to apply the key value to.</param>
            <param name="keys">Dictionary of alias to keys.</param>
            <param name="keyPropertyValue">The bound key property value node.</param>
            <returns>The bound key property value node.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.LambdaBinder">
            <summary>
            Class that knows how to bind a LambdaToken.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.LambdaBinder.bindMethod">
            <summary>
            Method used to bind a parent token.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.LambdaBinder.#ctor(Microsoft.OData.UriParser.MetadataBinder.QueryTokenVisitor)">
            <summary>
            Constructs a LambdaBinder.
            </summary>
            <param name="bindMethod">Method used to bind a parent token.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.LambdaBinder.BindLambdaToken(Microsoft.OData.UriParser.LambdaToken,Microsoft.OData.UriParser.BindingState)">
            <summary>
            Binds a LambdaToken to metadata.
            </summary>
            <param name="lambdaToken">Token to bind.</param>
            <param name="state">Object to hold the state of binding.</param>
            <returns>A metadata bound any or all node.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.LambdaBinder.BindParentToken(Microsoft.OData.UriParser.QueryToken)">
            <summary>
            Bind the parent of the LambdaToken
            </summary>
            <param name="queryToken">the parent token</param>
            <returns>the bound parent node</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.LambdaBinder.BindExpressionToken(Microsoft.OData.UriParser.QueryToken)">
            <summary>
            Bind the expression of the LambdaToken
            </summary>
            <param name="queryToken">the expression token</param>
            <returns>the bound expression node</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.LiteralBinder">
            <summary>
            Class that knows how to bind literal values.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralBinder.BindLiteral(Microsoft.OData.UriParser.LiteralToken)">
            <summary>
            Binds a literal value to a ConstantNode
            </summary>
            <param name="literalToken">Literal token to bind.</param>
            <returns>Bound query node.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.MetadataBinder">
            <summary>
            Binder which applies metadata to a lexical QueryToken tree and produces a bound semantic QueryNode tree.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.MetadataBinder.bindingState">
            <summary>
            Encapsulates the state of the metadata binding.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.MetadataBinder.#ctor(Microsoft.OData.UriParser.BindingState)">
            <summary>
            Constructs a MetadataBinder with the given <paramref name="initialState"/>.
            This constructor gets used if you are not calling the top level resource point ParseQuery.
            This is an at-your-own-risk constructor, since you must provide valid initial state.
            </summary>
            <param name="initialState">The initialState to use for binding.</param>
            <exception cref="T:System.ArgumentNullException">Throws if initial state is null.</exception>
            <exception cref="T:System.ArgumentNullException">Throws if initialState.Model is null.</exception>
        </member>
        <member name="T:Microsoft.OData.UriParser.MetadataBinder.QueryTokenVisitor">
            <summary>
            Delegate for a function that visits a QueryToken and translates it into a bound QueryNode.
            TODO: Eventually replace this with a real interface for a visitor.
            </summary>
            <param name="token">QueryToken to visit.</param>
            <returns>Metadata bound QueryNode.</returns>
        </member>
        <member name="P:Microsoft.OData.UriParser.MetadataBinder.BindingState">
            <summary>
            Encapsulates the state of the metadata binding.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.MetadataBinder.ProcessSkip(System.Nullable{System.Int64})">
            <summary>
            Processes the skip operator (if any) and returns the combined query.
            </summary>
            <param name="skip">The skip amount or null if none was specified.</param>
            <returns> the skip clause </returns>
            <exception cref="T:Microsoft.OData.ODataException">Throws if skip is less than 0.</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.MetadataBinder.ProcessTop(System.Nullable{System.Int64})">
            <summary>
            Processes the top operator (if any) and returns the combined query.
            </summary>
            <param name="top">The top amount or null if none was specified.</param>
            <returns> the top clause </returns>
            <exception cref="T:Microsoft.OData.ODataException">Throws if top is less than 0.</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.MetadataBinder.ProcessQueryOptions(Microsoft.OData.UriParser.BindingState,Microsoft.OData.UriParser.MetadataBinder.QueryTokenVisitor)">
            <summary>
            Process the remaining query options (represent the set of custom query options after
            service operation parameters and system query options have been removed).
            </summary>
            <param name="bindingState">the current state of the binding algorithm.</param>
            <param name="bindMethod">pointer to a binder method.</param>
            <returns>The list of <see cref="T:Microsoft.OData.UriParser.QueryNode"/> instances after binding.</returns>
            <exception cref="T:Microsoft.OData.ODataException">Throws if bindingState is null.</exception>
            <exception cref="T:Microsoft.OData.ODataException">Throws if bindMethod is null.</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.MetadataBinder.Bind(Microsoft.OData.UriParser.QueryToken)">
            <summary>
            Visits a <see cref="T:Microsoft.OData.UriParser.QueryToken"/> in the lexical tree and binds it to metadata producing a semantic <see cref="T:Microsoft.OData.UriParser.QueryNode"/>.
            </summary>
            <param name="token">The query token on the input.</param>
            <returns>The bound query node output.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.MetadataBinder.BindParameterAlias(Microsoft.OData.UriParser.FunctionParameterAliasToken)">
            <summary>
            Bind parameter alias (figuring out its type by first parsing and binding its value expression).
            </summary>
            <param name="functionParameterAliasToken">The alias syntatics token.</param>
            <returns>The semantics node for parameter alias.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.MetadataBinder.BindFunctionParameter(Microsoft.OData.UriParser.FunctionParameterToken)">
            <summary>
            Bind a function parameter token
            </summary>
            <param name="token">The token to bind.</param>
            <returns>A semantically bound FunctionCallNode</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.MetadataBinder.BindInnerPathSegment(Microsoft.OData.UriParser.InnerPathToken)">
            <summary>
            Binds an InnerPathToken.
            </summary>
            <param name="token">Token to bind.</param>
            <returns>Either a SingleNavigationNode, CollectionNavigationNode, SinglePropertyAccessNode (complex),
            or CollectionPropertyAccessNode (primitive or complex) that is the metadata-bound version of the given token.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.MetadataBinder.BindRangeVariable(Microsoft.OData.UriParser.RangeVariableToken)">
            <summary>
            Binds a parameter token.
            </summary>
            <param name="rangeVariableToken">The parameter token to bind.</param>
            <returns>The bound query node.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.MetadataBinder.BindLiteral(Microsoft.OData.UriParser.LiteralToken)">
            <summary>
            Binds a literal token.
            </summary>
            <param name="literalToken">The literal token to bind.</param>
            <returns>The bound literal token.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.MetadataBinder.BindBinaryOperator(Microsoft.OData.UriParser.BinaryOperatorToken)">
            <summary>
            Binds a binary operator token.
            </summary>
            <param name="binaryOperatorToken">The binary operator token to bind.</param>
            <returns>The bound binary operator token.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.MetadataBinder.BindUnaryOperator(Microsoft.OData.UriParser.UnaryOperatorToken)">
            <summary>
            Binds a unary operator token.
            </summary>
            <param name="unaryOperatorToken">The unary operator token to bind.</param>
            <returns>The bound unary operator token.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.MetadataBinder.BindCast(Microsoft.OData.UriParser.DottedIdentifierToken)">
            <summary>
            Binds a type startPath token.
            </summary>
            <param name="dottedIdentifierToken">The type startPath token to bind.</param>
            <returns>The bound type startPath token.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.MetadataBinder.BindAnyAll(Microsoft.OData.UriParser.LambdaToken)">
            <summary>
            Binds a LambdaToken.
            </summary>
            <param name="lambdaToken">The LambdaToken to bind.</param>
            <returns>A bound Any or All node.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.MetadataBinder.BindEndPath(Microsoft.OData.UriParser.EndPathToken)">
            <summary>
            Binds a property access token.
            </summary>
            <param name="endPathToken">The property access token to bind.</param>
            <returns>The bound property access token.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.MetadataBinder.BindFunctionCall(Microsoft.OData.UriParser.FunctionCallToken)">
            <summary>
            Binds a function call token.
            </summary>
            <param name="functionCallToken">The function call token to bind.</param>
            <returns>The bound function call token.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.MetadataBinder.BindStringLiteral(Microsoft.OData.UriParser.StringLiteralToken)">
            <summary>
            Binds a StringLiteral token.
            </summary>
            <param name="stringLiteralToken">The StringLiteral token to bind.</param>
            <returns>The bound StringLiteral token.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.MetadataBinder.BindIn(Microsoft.OData.UriParser.InToken)">
            <summary>
            Binds an In token.
            </summary>
            <param name="inToken">The In token to bind.</param>
            <returns>The bound In token.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.MetadataBindingUtils">
            <summary>
            Helper methods for metadata binding.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.MetadataBindingUtils.ConvertToTypeIfNeeded(Microsoft.OData.UriParser.SingleValueNode,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            If the source node is not of the specified type, then we check if type promotion is possible and inject a convert node.
            If the source node is the same type as the target type (or if the target type is null), we just return the source node as is.
            </summary>
            <param name="source">The source node to apply the conversion to.</param>
            <param name="targetTypeReference">The target primitive type. May be null - this method will do nothing in that case.</param>
            <returns>The converted query node, or the original source node unchanged.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.MetadataBindingUtils.GetEdmType(Microsoft.OData.UriParser.QueryNode)">
            <summary>
            Retrieves type associated to a segment.
            </summary>
            <param name="segment">The node to retrieve the type from.</param>
            <returns>The type of the node, or item type for collections.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.MetadataBindingUtils.GetEdmTypeReference(Microsoft.OData.UriParser.QueryNode)">
            <summary>
            Retrieves the type reference associated to a segment.
            </summary>
            <param name="segment">The node to retrive the type reference from.</param>
            <returns>The Type reference of the node (item type reference for collections).</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.OrderByBinder">
            <summary>
            Class to handle the binding of orderby tokens.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.OrderByBinder.bindMethod">
            <summary>
            Method to use to visit the token tree and bind the tokens recursively.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.OrderByBinder.#ctor(Microsoft.OData.UriParser.MetadataBinder.QueryTokenVisitor)">
            <summary>
            Creates an OrderByBinder
            </summary>
            <param name="bindMethod">Method to use to visit the token tree and bind the tokens recursively.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.OrderByBinder.BindOrderBy(Microsoft.OData.UriParser.BindingState,System.Collections.Generic.IEnumerable{Microsoft.OData.UriParser.OrderByToken})">
            <summary>
            Processes the order-by tokens of a entityCollection (if any).
            </summary>
            <param name="state">State to use for binding.</param>
            <param name="orderByTokens">The order-by tokens to bind.</param>
            <returns>An OrderByClause representing the orderby statements expressed in the tokens.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.OrderByBinder.ProcessSingleOrderBy(Microsoft.OData.UriParser.BindingState,Microsoft.OData.UriParser.OrderByClause,Microsoft.OData.UriParser.OrderByToken)">
            <summary>
            Processes the specified order-by token.
            </summary>
            <param name="state">State to use for binding.</param>
            <param name="thenBy"> The next OrderBy node, or null if there is no orderby after this.</param>
            <param name="orderByToken">The order-by token to bind.</param>
            <returns>Returns the combined entityCollection including the ordering.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.ParameterAliasBinder">
            <summary>
            This class binds parameter alias by :
            (1) parse and bind the alias value's expression into SingleValueNode, then get its type.
            (2) asign SingleValueNode's type to alias' ParameterAliasNode.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ParameterAliasBinder.bindMethod">
            <summary>
            Method to use to visit the token tree and bind the tokens recursively.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ParameterAliasBinder.#ctor(Microsoft.OData.UriParser.MetadataBinder.QueryTokenVisitor)">
            <summary>
            Creates an OrderByBinder
            </summary>
            <param name="bindMethod">Method to use to visit the token tree and bind the tokens recursively.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ParameterAliasBinder.BindParameterAlias(Microsoft.OData.UriParser.BindingState,Microsoft.OData.UriParser.FunctionParameterAliasToken)">
            <summary>
            Bind a parameter alias which is inside another alias value.
            </summary>
            <param name="bindingState">The alias name which is inside another alias value.</param>
            <param name="aliasToken">The cache of alias value nodes</param>
            <returns>The semantics node tree for alias (the @p1 in "@p1=...", not alias value expression)</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ParameterAliasBinder.ParseAndBindParameterAliasValueExpression(Microsoft.OData.UriParser.BindingState,System.String,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Parse expression into syntaxs token tree, and bind it into semantics node tree.
            </summary>
            <param name="bindingState">The BindingState.</param>
            <param name="aliasValueExpression">The alias value's expression text.</param>
            <param name="parameterType">The edm type of the parameter.</param>
            <returns>The semantcs node of the expression text.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ParameterAliasBinder.ParseComplexOrCollectionAlias(Microsoft.OData.UriParser.QueryToken,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.Edm.IEdmModel)">
            <summary>
            Parse the complex/collection value in parameter alias.
            </summary>
            <param name="queryToken">The parsed token.</param>
            <param name="parameterType">The expected parameter type.</param>
            <param name="model">The model</param>
            <returns>Token with complex/collection value passed.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.RangeVariableBinder">
            <summary>
            Class that knows how to bind ParameterQueryTokens.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.RangeVariableBinder.BindRangeVariableToken(Microsoft.OData.UriParser.RangeVariableToken,Microsoft.OData.UriParser.BindingState)">
            <summary>
            Binds a parameter token.
            </summary>
            <param name="rangeVariableToken">The parameter token to bind.</param>
            <param name="state">The state of metadata binding.</param>
            <returns>The bound query node.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.SearchBinder">
            <summary>
            Class responsible for binding a syntactic filter expression into a bound tree of semantic nodes.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SearchBinder.bindMethod">
            <summary>
            Method to use to visit the token tree and bind the tokens recursively.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.SearchBinder.#ctor(Microsoft.OData.UriParser.MetadataBinder.QueryTokenVisitor)">
            <summary>
            Creates a SearchBinder.
            </summary>
            <param name="bindMethod">Method to use to visit the token tree and bind the tokens recursively.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.SearchBinder.BindSearch(Microsoft.OData.UriParser.QueryToken)">
            <summary>
            Binds the given filter token.
            </summary>
            <param name="search">The search token to bind.</param>
            <returns>A SearchClause with for given Token.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.SelectBinder">
            <summary>
            Use a Select syntactic tree to populate the correct values for Selection in an already parsed
            Expand Semantic Tree.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SelectBinder.visitor">
            <summary>
            Visitor object to walk the select tree
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectBinder.#ctor(Microsoft.OData.Edm.IEdmModel,Microsoft.OData.Edm.IEdmStructuredType,System.Int32,Microsoft.OData.UriParser.SelectExpandClause,Microsoft.OData.UriParser.ODataUriResolver)">
            <summary>
            Constructs a new SelectBinder.
            </summary>
            <param name="model">The model used for binding.</param>
            <param name="edmType">The entity type that the $select is being applied to.</param>
            <param name="maxDepth">the maximum recursive depth.</param>
            <param name="expandClauseToDecorate">The already built expand clause to decorate</param>
            <param name="resolver">Resolver for uri parser.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectBinder.Bind(Microsoft.OData.UriParser.SelectToken)">
            <summary>
            Visits the top level select token
            </summary>
            <param name="tokenIn">the select token to visit</param>
            <returns>A new SelectExpandClause decorated with the information from the selectToken</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.SelectExpandBinder">
            <summary>
            ExpandOption variant of an SelectExpandBinder, where the default selection item for a given level is based on the select at that level
            instead of the top level select clause. If nothing is selected for a given expand in the ExpandOption syntax, then we by default
            select all from that item, instead of selecting nothing (and therefore pruning the expand off of the tree).
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SelectExpandBinder.configuration">
            <summary>
            The configuration used for binding.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SelectExpandBinder.navigationSource">
            <summary>
            The navigation source at the current level expand.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SelectExpandBinder.edmType">
            <summary>
            The entity type at the current level expand.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SelectExpandBinder.parsedSegments">
            <summary>
            The segments parsed in path and query option.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.SelectExpandBinder.Model">
            <summary>
            The model used for binding.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.SelectExpandBinder.EdmType">
            <summary>
            The top level type.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.SelectExpandBinder.NavigationSource">
            <summary>
            The top level navigation source for this level.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.SelectExpandBinder.Settings">
            <summary>
            The settings to use when binding.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.SelectExpandBinder.Configuration">
            <summary>
            The configuration used for binding.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandBinder.Bind(Microsoft.OData.UriParser.ExpandToken)">
            <summary>
            Bind the top level expand.
            </summary>
            <param name="tokenIn">the token to visit</param>
            <returns>a SelectExpand clause based on this ExpandToken</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandBinder.BindSubLevel(Microsoft.OData.UriParser.ExpandToken)">
            <summary>
            Bind a sub level expand
            </summary>
            <param name="tokenIn">the token to visit</param>
            <returns>a SelectExpand clause based on this ExpandToken</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandBinder.GenerateSubExpand(Microsoft.OData.UriParser.ExpandTermToken)">
            <summary>
            Generate a SubExpand based on the current nav property and the curren token
            </summary>
            <param name="tokenIn">the current token</param>
            <returns>a new SelectExpand clause bound to the current token and nav prop</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandBinder.DecorateExpandWithSelect(Microsoft.OData.UriParser.SelectExpandClause,Microsoft.OData.Edm.IEdmNavigationProperty,Microsoft.OData.UriParser.SelectToken)">
            <summary>
            Decorate an expand tree using a select token.
            </summary>
            <param name="subExpand">the already built sub expand</param>
            <param name="currentNavProp">the current navigation property</param>
            <param name="select">the select token to use</param>
            <returns>A new SelectExpand clause decorated with the select token.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandBinder.BuildDefaultSubExpand">
            <summary>
            Build a expand clause for a nested expand.
            </summary>
            <returns>A new SelectExpandClause.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandBinder.GenerateExpandItem(Microsoft.OData.UriParser.ExpandTermToken)">
            <summary>
            Generate an expand item (and a select item for the implicit nav prop if necessary) based on an ExpandTermToken
            </summary>
            <param name="tokenIn">the expandTerm token to visit</param>
            <returns>the expand item for this expand term token.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandBinder.ParseLevels(System.Nullable{System.Int64},Microsoft.OData.Edm.IEdmType,Microsoft.OData.Edm.IEdmNavigationProperty)">
            <summary>
            Parse from levelsOption token to LevelsClause.
            Negative value would be treated as max.
            </summary>
            <param name="levelsOption">The levelsOption for current expand.</param>
            <param name="sourceType">The type of current level navigation source.</param>
            <param name="property">Navigation property for current expand.</param>
            <returns>The LevelsClause parsed, null if levelsOption is null</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandBinder.BuildNewMetadataBinder(Microsoft.OData.Edm.IEdmNavigationSource)">
            <summary>
            Build a new MetadataBinder to use for expand options.
            </summary>
            <param name="targetNavigationSource">The navigation source being expanded.</param>
            <returns>A new MetadataBinder ready to bind a Filter or Orderby clause.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.SelectExpandClauseFinisher">
            <summary>
            Fixup step for a completed select expand clause.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandClauseFinisher.AddExplicitNavPropLinksWhereNecessary(Microsoft.OData.UriParser.SelectExpandClause)">
            <summary>
            Add any explicit nav prop links to a select expand clause as necessary.
            </summary>
            <param name="clause">the select expand clause to modify.</param>
        </member>
        <member name="T:Microsoft.OData.UriParser.SelectExpandPathBinder">
            <summary>
            Walk down a chain of type segments, checking that we find the correct type at each level.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandPathBinder.FollowTypeSegments(Microsoft.OData.UriParser.PathSegmentToken,Microsoft.OData.Edm.IEdmModel,System.Int32,Microsoft.OData.UriParser.ODataUriResolver,Microsoft.OData.Edm.IEdmStructuredType@,Microsoft.OData.UriParser.PathSegmentToken@)">
            <summary>
            Follow any type segments on the path, stopping at the first segment that isn't a type token.
            </summary>
            <param name="firstTypeToken">the first type segment</param>
            <param name="model">the model these types are contained in.</param>
            <param name="maxDepth">the maximum recursive depth</param>
            <param name="resolver">Resolver for uri parser.</param>
            <param name="currentLevelType">the top level type, will be overwritten with the last entity type in the chain</param>
            <param name="firstNonTypeToken">the first non type token in the path</param>
            <returns>A path with type segments added to it.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.SelectExpandSemanticBinder">
            <summary>
            Add semantic meaning to a Select or Expand token.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandSemanticBinder.Bind(Microsoft.OData.UriParser.ODataPathInfo,Microsoft.OData.UriParser.ExpandToken,Microsoft.OData.UriParser.SelectToken,Microsoft.OData.UriParser.ODataUriParserConfiguration)">
            <summary>
            Add semantic meaning to a Select or Expand Token
            </summary>
            <param name="odataPathInfo">The path info from Uri path.</param>
            <param name="expandToken">the syntactically parsed expand token</param>
            <param name="selectToken">the syntactically parsed select token</param>
            <param name="configuration">The configuration to use for parsing.</param>
            <returns>A select expand clause bound to metadata.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.SelectExpandSyntacticUnifier">
            <summary>
            Combine a top level select and expand token.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandSyntacticUnifier.Combine(Microsoft.OData.UriParser.ExpandToken,Microsoft.OData.UriParser.SelectToken)">
            <summary>
            Combine a top level select and expand token
            </summary>
            <param name="expand">the original expand token</param>
            <param name="select">the original select token</param>
            <returns>A new ExpandToken with the original select token embedded within a new top level expand token.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.SelectPathSegmentTokenBinder">
            <summary>
            Builds segments from tokens within $select.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectPathSegmentTokenBinder.ConvertNonTypeTokenToSegment(Microsoft.OData.UriParser.PathSegmentToken,Microsoft.OData.Edm.IEdmModel,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.UriParser.ODataUriResolver)">
            <summary>
            Build a segment from a token.
            </summary>
            <param name="tokenIn">the token to bind</param>
            <param name="model">The model.</param>
            <param name="edmType">the type of the current scope based on type segments.</param>
            <param name="resolver">Resolver for uri parser.</param>
            <returns>The segment created from the token.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectPathSegmentTokenBinder.TryBindAsWildcard(Microsoft.OData.UriParser.PathSegmentToken,Microsoft.OData.Edm.IEdmModel,Microsoft.OData.UriParser.SelectItem@)">
            <summary>
            Build a wildcard selection item
            </summary>
            <param name="tokenIn">the token to bind to a wildcard</param>
            <param name="model">the model to search for this wildcard</param>
            <param name="item">the new wildcard selection item, if we found one</param>
            <returns>true if we successfully bound to a wildcard, false otherwise</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectPathSegmentTokenBinder.TryBindAsOperation(Microsoft.OData.UriParser.PathSegmentToken,Microsoft.OData.Edm.IEdmModel,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.UriParser.ODataPathSegment@)">
            <summary>
            Tries to bind a given token as an Operation.
            </summary>
            <param name="pathToken">Token to bind.</param>
            <param name="model">The model.</param>
            <param name="entityType">the current entity type to use as the binding type when looking for operations.</param>
            <param name="segment">Bound segment if the token was bound to an operation successfully, or null.</param>
            <returns>True if the token was bound successfully, or false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectPathSegmentTokenBinder.TryBindAsDeclaredProperty(Microsoft.OData.UriParser.PathSegmentToken,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.UriParser.ODataUriResolver,Microsoft.OData.UriParser.ODataPathSegment@)">
            <summary>
            Tries to bind a given token as an a declared structural or navigation property.
            </summary>
            <param name="tokenIn">Token to bind.</param>
            <param name="edmType">the type to search for this property</param>
            <param name="resolver">Resolver for uri parser.</param>
            <param name="segment">Bound segment if the token was bound to a declared property successfully, or null.</param>
            <returns>True if the token was bound successfully, or false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectPathSegmentTokenBinder.TryBindAsDeclaredTerm(Microsoft.OData.UriParser.PathSegmentToken,Microsoft.OData.Edm.IEdmModel,Microsoft.OData.UriParser.ODataUriResolver,Microsoft.OData.UriParser.ODataPathSegment@)">
            <summary>
            Tries to bind a given token as a declared annotation term.
            </summary>
            <param name="tokenIn">Token to bind.</param>
            <param name="model">The model to search for this term</param>
            <param name="resolver">Resolver for uri parser.</param>
            <param name="segment">Bound segment if the token was bound to a declared term successfully, or null.</param>
            <returns>True if the token was bound successfully, or false otherwise.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.SelectTreeNormalizer">
            <summary>
            Translate a select tree into the right format to be used with an expand tree.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectTreeNormalizer.NormalizeSelectTree(Microsoft.OData.UriParser.SelectToken)">
            <summary>
            Normalize a SelectToken into something that can be used to trim an expand tree.
            </summary>
            <param name="treeToNormalize">The select token to normalize</param>
            <returns>Normalized SelectToken</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.UnaryOperatorBinder">
            <summary>
            Class that knows how to bind unary operators.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.UnaryOperatorBinder.bindMethod">
            <summary>
            Method to use for binding the parent node, if needed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.UnaryOperatorBinder.#ctor(System.Func{Microsoft.OData.UriParser.QueryToken,Microsoft.OData.UriParser.QueryNode})">
            <summary>
            Constructs a UnaryOperatorBinder with the given method to be used binding the parent token if needed.
            </summary>
            <param name="bindMethod">Method to use for binding the parent token, if needed.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.UnaryOperatorBinder.BindUnaryOperator(Microsoft.OData.UriParser.UnaryOperatorToken)">
            <summary>
            Binds a unary operator token.
            </summary>
            <param name="unaryOperatorToken">The unary operator token to bind.</param>
            <returns>The bound unary operator token.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UnaryOperatorBinder.PromoteOperandType(Microsoft.OData.UriParser.SingleValueNode,Microsoft.OData.UriParser.UnaryOperatorKind)">
            <summary>
            Get the promoted type reference of the operand
            </summary>
            <param name="operand">the operand</param>
            <param name="unaryOperatorKind">the operator kind</param>
            <returns>the type reference of the operand</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UnaryOperatorBinder.GetOperandFromToken(Microsoft.OData.UriParser.UnaryOperatorToken)">
            <summary>
            Retrieve SingleValueNode operand from given token.
            </summary>
            <param name="unaryOperatorToken">The token</param>
            <returns>the SingleValueNode operand</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.BuiltInUriFunctions">
            <summary>
            Class containing definitions of all the built-in functions in OData Protocol.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.BuiltInUriFunctions.builtInFunctions">
            <summary>
            Dictionary of the name of the built-in function and all the signatures.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.BuiltInUriFunctions.TryGetBuiltInFunction(System.String,Microsoft.OData.UriParser.FunctionSignatureWithReturnType[]@)">
            <summary>
            Returns a list of signatures for a function name.
            </summary>
            <param name="name">The name of the function to look for.</param>
            <param name="signatures">The list of signatures available for the function name.</param>
            <returns>true if the function was found, or false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.BuiltInUriFunctions.CreateSpatialFunctions(System.Collections.Generic.IDictionary{System.String,Microsoft.OData.UriParser.FunctionSignatureWithReturnType[]})">
            <summary>
            Creates all of the spatial functions
            </summary>
            <param name="functions">Dictionary of functions to add to.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.BuiltInUriFunctions.InitializeBuiltInFunctions">
            <summary>
            Builds the list of all built-in functions.
            </summary>
            <returns>Returns a dictionary of built in functions.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.BuiltInUriFunctions.CreateStringFunctions(System.Collections.Generic.IDictionary{System.String,Microsoft.OData.UriParser.FunctionSignatureWithReturnType[]})">
            <summary>
            Creates all string functions.
            </summary>
            <param name="functions">Dictionary of functions to add to.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.BuiltInUriFunctions.CreateDateTimeFunctions(System.Collections.Generic.IDictionary{System.String,Microsoft.OData.UriParser.FunctionSignatureWithReturnType[]})">
            <summary>
            Creates all date and time functions.
            </summary>
            <param name="functions">Dictionary of functions to add to.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.BuiltInUriFunctions.CreateDateTimeFunctionSignatureArray">
            <summary>
            Builds an array of signatures for date time functions.
            </summary>
            <returns>The array of signatures for a date time functions.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.BuiltInUriFunctions.CreateDurationFunctionSignatures">
            <summary>
            Builds the set of signatures for duration functions.
            </summary>
            <returns>The set of signatures for duration functions.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.BuiltInUriFunctions.CreateVoidReturnDateTimeOffset">
            <summary>
            Builds the set of signatures for 'DateTimeOffset function()'.
            </summary>
            <returns>The set of signatures for 'DateTimeOffset function()'.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.BuiltInUriFunctions.CreateDateTimeOffsetReturnDate">
            <summary>
            Builds the set of signatures for 'Date function(DateTimeOffset)'.
            </summary>
            <returns>The set of signatures for 'Date function(DateTimeOffset)'.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.BuiltInUriFunctions.CreateDateTimeOffsetReturnDecimal">
            <summary>
            Builds the set of signatures for 'Decimal function(DateTimeOffset)'.
            </summary>
            <returns>The set of signatures for 'Decimal function(DateTimeOffset)'.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.BuiltInUriFunctions.CreateDateTimeOffsetReturnTimeOfDay">
            <summary>
            Builds the set of signatures for 'TimeOfDay function(DateTimeOffset)'.
            </summary>
            <returns>The set of signatures for 'TimeOfDay function(DateTimeOffset)'.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.BuiltInUriFunctions.CreateDurationReturnDecimal">
            <summary>
            Builds the set of signatures for 'Decimal function(Duration)'.
            </summary>
            <returns>The set of signatures for 'Decimal function(Duration)'.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.BuiltInUriFunctions.CreateDateReturnInt">
            <summary>
            Builds the set of signatures for 'Int function(Date)'.
            </summary>
            <returns>The set of signatures for 'Int function(Date)'.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.BuiltInUriFunctions.CreateTimeOfDayReturnInt">
            <summary>
            Builds the set of signatures for 'Int function(TimeOfDay)'.
            </summary>
            <returns>The set of signatures for 'Int function(TimeOfDay)'.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.BuiltInUriFunctions.CreateTimeOfDayReturnDecimal">
            <summary>
            Builds the set of signatures for 'Decimal function(TimeOfDay)'.
            </summary>
            <returns>The set of signatures for 'Decimal function(TimeOfDay)'.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.BuiltInUriFunctions.CreateMathFunctions(System.Collections.Generic.IDictionary{System.String,Microsoft.OData.UriParser.FunctionSignatureWithReturnType[]})">
            <summary>
            Creates all math functions.
            </summary>
            <param name="functions">Dictionary of functions to add to.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.BuiltInUriFunctions.CreateMathFunctionSignatureArray">
            <summary>
            Builds an array of signatures for math functions.
            </summary>
            <returns>The array of signatures for math functions.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.CustomUriFunctions">
            <summary>
            Class represents functions signatures of custom uri functions.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.CustomUriFunctions.CustomFunctions">
            <summary>
            Dictionary of the name of the custom function and all the signatures.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.CustomUriFunctions.AddCustomUriFunction(System.String,Microsoft.OData.UriParser.FunctionSignatureWithReturnType)">
            <summary>
            Add a custom uri function to extend uri functions.
            In case the function name already exists as a custom function, the signature will be added as an another overload.
            </summary>
            <param name="functionName">The new custom function name</param>
            <param name="functionSignature">The new custom function signature</param>
            <exception cref="T:System.ArgumentNullException">Arguments are null, or function signature return type is null</exception>
            <exception cref="T:Microsoft.OData.ODataException">Throws if built-in function name already exists.</exception>
            <exception cref="T:Microsoft.OData.ODataException">Throws if built-in function signature overload already exists.</exception>
            <exception cref="T:Microsoft.OData.ODataException">Throws if custom function signature overload already exists</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.CustomUriFunctions.RemoveCustomUriFunction(System.String,Microsoft.OData.UriParser.FunctionSignatureWithReturnType)">
            <summary>
            Removes the specific function overload from the custum uri functions.
            </summary>
            <param name="functionName">Custom function name to remove</param>
            <param name="functionSignature">The specific signature overload of the function to remove</param>
            <returns>'False' if custom function signature doesn't exist. 'True' if function has been removed successfully</returns>
            <exception cref="T:System.ArgumentNullException">Arguments are null, or function signature return type is null</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.CustomUriFunctions.RemoveCustomUriFunction(System.String)">
            <summary>
            Removes all the function overloads from the custom uri functions.
            </summary>
            <param name="functionName">The custom function name</param>
            <returns>'False' if custom function signature doesn't exist. 'True' if function has been removed successfully</returns>
            <exception cref="T:System.ArgumentNullException">Arguments are null, or function signature return type is null</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.CustomUriFunctions.TryGetCustomFunction(System.String,System.Collections.Generic.IList{System.Collections.Generic.KeyValuePair{System.String,Microsoft.OData.UriParser.FunctionSignatureWithReturnType}}@,System.Boolean)">
            <summary>
            Returns a list of name-signature pairs for a function name.
            </summary>
            <param name="functionCallToken">The name of the function to look for.</param>
            <param name="nameSignatures">
            Output for the list of signature objects for matched function names, with canonical name of the function;
            null if no matches found.
            </param>
            <param name="enableCaseInsensitive">Whether to perform case-insensitive match for function name.</param>
            <returns>true if the function was found, or false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.CustomUriFunctions.ValidateFunctionWithReturnType(Microsoft.OData.UriParser.FunctionSignatureWithReturnType)">
            <summary>
            Check if FunctionSignatureWithReturnType is valid.
            Vaild if the signature has a ReturnType
            </summary>
            <param name="functionSignature">Function signature to validate</param>
        </member>
        <member name="T:Microsoft.OData.UriParser.CustomUriLiteralPrefixes">
            <summary>
            Extends the uri parsing system of Literal Prefix.
            With this class, you can add a custom literal prefix for any EdmType.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.CustomUriLiteralPrefixes.AddCustomLiteralPrefix(System.String,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Add a literal prefix for the given EdmType.
            </summary>
            <example>filter=MyProperty eq MyCustomLiteral'VALUE'.
            "MyCustomLiteral" is the literal prefix and the <paramref name="literalEdmTypeReference"/> is the type of the "VALUE".</example>
            <param name="literalPrefix">The custom name of the literal prefix</param>
            <param name="literalEdmTypeReference">The edm type of the custom literal</param>
            <exception cref="T:System.ArgumentNullException">Arguments are null or empty</exception>
            <exception cref="T:System.ArgumentException">The given literal prefix is not valid</exception>
            <exception cref="T:Microsoft.OData.ODataException">The given literal prefix already exists</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.CustomUriLiteralPrefixes.RemoveCustomLiteralPrefix(System.String)">
            <summary>
            Remove the given literal prefix
            </summary>
            <param name="literalPrefix">The custom name of the literal prefix</param>
            <returns>'true' if the literal prefix is successfully found and removed; otherwise, 'false'.</returns>
            <exception cref="T:System.ArgumentNullException">Argument is null or empty</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.CustomUriLiteralPrefixes.GetEdmTypeByCustomLiteralPrefix(System.String)">
            <summary>
            Gets the EdmTypeReference of the given literal prefix
            </summary>
            <param name="literalPrefix">The literal prefix of the EdmType</param>
            <returns>Null if the custom literal prefix has no registered EdmType.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.ExceptionUtil">
            <summary>
            Helper class for throwing exceptions during URI parsing.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExceptionUtil.CreateResourceNotFoundError(System.String)">
            <summary>Creates a new "Resource Not Found" exception.</summary>
            <param name="identifier">segment identifier information for which resource was not found.</param>
            <returns>A new exception to indicate the requested resource cannot be found.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExceptionUtil.ResourceNotFoundError(System.String)">
            <summary>Creates a new "Resource Not Found" exception.</summary>
            <param name="errorMessage">Plain text error message for this exception.</param>
            <returns>A new exception to indicate the requested resource cannot be found.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExceptionUtil.CreateSyntaxError">
            <summary>Creates a new exception to indicate a syntax error.</summary>
            <returns>A new exception to indicate a syntax error.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExceptionUtil.CreateBadRequestError(System.String)">
            <summary>
            Creates a new exception to indicate BadRequest error.
            </summary>
            <param name="message">Plain text error message for this exception.</param>
            <returns>A new exception to indicate a bad request error.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExceptionUtil.ThrowIfTypesUnrelated(Microsoft.OData.Edm.IEdmType,Microsoft.OData.Edm.IEdmType,System.String)">
            <summary>
            Throws if the type is not related to the type of the given set.
            </summary>
            <param name="type">Type to check.</param>
            <param name="secondType">Second type, which should be related to the first type.</param>
            <param name="segmentName">The segment that is checking this.</param>
        </member>
        <member name="T:Microsoft.OData.UriParser.ExpressionLexer">
             <summary>Use this class to parse an expression in the OData URI format.</summary>
             <remarks>
             Literals (non-normative "handy" reference - see spec for correct expression):
             Null null
             Boolean true | false
             Int32 (digit+)
             Int64 (digit+)[L|l]
             Decimal (digit+ ['.' digit+])[M|m]
             Float (digit+ ['.' digit+][e|E [+|-] digit+)[f|F]
             Double (digit+ ['.' digit+][e|E [+|-] digit+)[d|D]
             String "'" .* "'"
             DateTime datetime"'"dddd-dd-dd[T|' ']dd:mm[ss[.fffffff]]"'"
             DateTimeOffset dddd-dd-dd[T|' ']dd:mm[ss[.fffffff]]-dd:mm
             Duration time"'"dd:mm[ss[.fffffff]]"'"
             Binary (binary|X)'digit*'
             GUID 8HEXDIG "-" 4HEXDIG "-" 4HEXDIG "-" 4HEXDIG "-" 12HEXDIG
             
             Note: ABNF v4.0 actually has forbidden numeric string's trailing L,M,F,D though we allow them to be optional
             http://docs.oasis-open.org/odata/odata/v4.0/cs01/abnf/odata-abnf-construction-rules.txt
             decimalValue = [SIGN] 1*DIGIT ["." 1*DIGIT]
             doubleValue = decimalValue [ "e" [SIGN] 1*DIGIT ] / nanInfinity ; with restricted number range
             singleValue = doubleValue ; with restricted number range
             nanInfinity = 'NaN' / '-INF' / 'INF'
             
             </remarks>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpressionLexer.Text">
            <summary>Text being parsed.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpressionLexer.TextLen">
            <summary>Length of text being parsed.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpressionLexer.textPos">
            <summary>Position on text being parsed.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpressionLexer.ch">
            <summary>Character being processed.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpressionLexer.token">
            <summary>Token being processed.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpressionLexer.AdditionalUnicodeCategoriesForIdentifier">
            <summary>
            For an identifier, EMD supports chars that match the regex [\p{Ll}\p{Lu}\p{Lt}\p{Lo}\p{Lm}\p{Nl}\p{Mn}\p{Mc}\p{Nd}\p{Pc}\p{Cf}]
            IsLetterOrDigit covers Ll, Lu, Lt, Lo, Lm, Nd, this set covers the rest
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpressionLexer.useSemicolonDelimiter">
            <summary> flag to indicate whether to delimit on a semicolon. </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpressionLexer.parsingFunctionParameters">
            <summary>Whether the lexer is being used to parse function parameters. If true, will allow/recognize parameter aliases and typed nulls.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpressionLexer.ignoreWhitespace">
            <summary>Lexer ignores whitespace</summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.#ctor(System.String,System.Boolean,System.Boolean)">
            <summary>Initializes a new <see cref="T:Microsoft.OData.UriParser.ExpressionLexer"/>.</summary>
            <param name="expression">Expression to parse.</param>
            <param name="moveToFirstToken">If true, this constructor will call NextToken() to move to the first token.</param>
            <param name="useSemicolonDelimiter">If true, the lexer will tokenize based on semicolons as well.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.#ctor(System.String,System.Boolean,System.Boolean,System.Boolean)">
            <summary>Initializes a new <see cref="T:Microsoft.OData.UriParser.ExpressionLexer"/>.</summary>
            <param name="expression">Expression to parse.</param>
            <param name="moveToFirstToken">If true, this constructor will call NextToken() to move to the first token.</param>
            <param name="useSemicolonDelimiter">If true, the lexer will tokenize based on semicolons as well.</param>
            <param name="parsingFunctionParameters">Whether the lexer is being used to parse function parameters. If true, will allow/recognize parameter aliases and typed nulls.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.ExpressionLexer.CurrentToken">
            <summary>Token being processed.</summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ExpressionLexer.ExpressionText">
            <summary>Text being parsed.</summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ExpressionLexer.Position">
            <summary>Position on text being parsed.</summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ExpressionLexer.IsValidWhiteSpace">
            <summary>
            Gets if the current char is whitespace.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ExpressionLexer.IsValidDigit">
            <summary>
            Gets if the current char is digit.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ExpressionLexer.IsValidStartingCharForIdentifier">
            <summary>
            Is the current char a valid starting char for an identifier.
            Valid starting chars for identifier include all that are supported by EDM ([\p{Ll}\p{Lu}\p{Lt}\p{Lo}\p{Lm}\p{Nl}]) and '_'.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ExpressionLexer.IsValidNonStartingCharForIdentifier">
            <summary>
            Is the current char a valid non-starting char for an identifier.
            Valid non-starting chars for identifier include all that are supported
            by EDM [\p{Ll}\p{Lu}\p{Lt}\p{Lo}\p{Lm}\p{Nl}\p{Mn}\p{Mc}\p{Nd}\p{Pc}\p{Cf}].
            This list includes '_', which is ConnectorPunctuation (Pc)
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.TryPeekNextToken(Microsoft.OData.UriParser.ExpressionToken@,System.Exception@)">
            <summary>
            Determines if the next token can be processed without error without advancing the token.
            </summary>
            <param name="resultToken">The next ExpressionToken. This value is undefined if error is defined.</param>
            <param name="error">Exception generated from trying to process the next token.</param>
            <returns>True if the next token can be processed, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.NextToken">
            <summary>Reads the next token, skipping whitespace as necessary, advancing the Lexer.</summary>
            <returns>The next token.</returns>
            <remarks>Throws on error.</remarks>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.ReadDottedIdentifier(System.Boolean)">
            <summary>
            Starting from an identifier, reads a sequence of dots and
            identifiers, and returns the text for it, with whitespace
            stripped.
            </summary>
            <param name="acceptStar">do we allow a star in this identifier</param>
            <returns>The dotted identifier starting at the current identifier.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.PeekNextToken">
            <summary>Returns the next token without advancing the lexer.</summary>
            <returns>The next token.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.ExpandIdentifierAsFunction">
            <summary>
            Check whether the current identifier is a function. If so, expand the token text to the function signature
            </summary>
            <returns>True if the current identifier is a function call</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.ValidateToken(Microsoft.OData.UriParser.ExpressionTokenKind)">
            <summary>Validates the current token is of the specified kind.</summary>
            <param name="t">Expected token kind.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.AdvanceThroughExpandOption">
            <summary>
            Advances the lexer until a semicolon, an unbalanced close parens occurs, or the text ends.
            Any string literals (text in single quotes) will be skipped when checking for delimiters.
            The CurrentToken of the lexer after this method call will be whatever comes after the advanced text.
            </summary>
            <returns>All of the text that was read.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.AdvanceThroughBalancedParentheticalExpression">
            <summary>
            Advances through a balanced expression that we do not want to parse, beginning with a '(' and ending with a ')'.
            </summary>
            <remarks>
            1. This method will identify and advance through inner pairs of parenthesis.
            2. The lexer is expected to have a CurrentToken which is the open parenthesis at the start, meaning that we are positioned
               on the first character of the expression inside that.
            3. When we are done we will be right after the closing ')', but we will have have set CurrentToken to anything.
               For this reason, you probably want to call NextToken() after this method, since CurrentToken wil be garbage.
            </remarks>
            <returns>The parenthesis expression, including the outer parenthesis.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.SnapshotPosition">
            <summary>
            Get the current position in this lexer that can be used restore the lexer to this position later.
            </summary>
            <returns>
            Returns a snapshot position used to call RestorePosition.
            </returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.RestorePosition(Microsoft.OData.UriParser.ExpressionLexer.ExpressionLexerPosition)">
            <summary>
            Sets the current position to the specified position.
            </summary>
            <param name="position">The position to restore, returned from SnapshotPosition.</param>
            <remarks>
            The specified position must have been retrieved by GetPostion on this instance.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.ParseError(System.String)">
            <summary>Creates an exception for a parse error.</summary>
            <param name="message">Message text.</param>
            <returns>A new Exception.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.NextChar">
            <summary>Advanced to the next character.</summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.ParseWhitespace">
            <summary>
            Parses white spaces
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.AdvanceToNextOccuranceOf(System.Char)">
            <summary>
            Advance the pointer to the next occurance of the given value, swallowing all characters in between.
            </summary>
            <param name="endingValue">the ending delimiter.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.NextTokenImplementation(System.Exception@)">
            <summary>Reads the next token, skipping whitespace as necessary.</summary>
            <param name="error">Error that occurred while trying to process the next token.</param>
            <returns>The next token, which may be 'bad' if an error occurs.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.MoveNextWhenMatch(Microsoft.OData.UriParser.ExpressionTokenKind)">
            <summary>
            Expand the token selection if the next token matches the input token
            </summary>
            <param name="id">the list of token id to match</param>
            <returns>true if matched</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.HandleTypePrefixedLiterals">
            <summary>Handles lexeres that are formed by identifiers.</summary>
            <remarks>This method modified the token field as necessary.</remarks>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.GetBuiltInTypesLiteralPrefix(System.String)">
            <summary>
            Get type-prefixed literals such as double, boolean...
            </summary>
            <param name="tokenText">Token texk</param>
            <returns>ExpressionTokenKind by the token text</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.GetBuiltInTypesLiteralPrefixWithQuotedValue(System.String)">
            <summary>
            Get type-prefixed literals with quoted values duration, binary and spatial types.
            </summary>
            <param name="tokenText">Token text</param>
            <returns>ExpressionTokenKind</returns>
            <example>geometry'POINT (79 84)'. 'geometry' is the tokenText </example>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.ParseFromDigit">
            <summary>Parses a token that starts with a digit.</summary>
            <returns>The kind of token recognized.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.TryParseGuid(System.Int32)">
            <summary>
            Tries to parse Guid from current text
            If it's not Guid, then this.textPos and this.ch are reset
            </summary>
            <param name="tokenPos">Start index</param>
            <returns>True if the substring that starts from tokenPos is a Guid, false otherwise</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.TryParseDateTimeoffset(System.Int32)">
            <summary>
            Tries to parse Guid from current text
            If it's not Guid, then this.textPos and this.ch are reset
            </summary>
            <param name="tokenPos">Start index</param>
            <returns>True if the substring that starts from tokenPos is a Guid, false otherwise</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.TryParseTimeOfDay(System.Int32)">
            <summary>
            Tries to parse TimeOfDay from current text
            If it's not TimeOfDay, then this.textPos and this.ch are reset
            </summary>
            <param name="tokenPos">Start index</param>
            <returns>True if the substring that starts from tokenPos is a TimeOfDay, false otherwise</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.ParseLiteral(System.Int32)">
            <summary>
            Parses a literal be checking for delimiting characters '\0', ',',')' and ' '
            </summary>
            <param name="tokenPos">Index from which the substring starts</param>
            <returns>Substring from this.text that has parsed the literal and ends in one of above delimiting characters</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.MakeBestGuessOnNoSuffixStr(System.String,Microsoft.OData.UriParser.ExpressionTokenKind)">
            <summary>
            Makes best guess on numeric string without trailing letter like L, F, M, D
            </summary>
            <param name="numericStr">The numeric string.</param>
            <param name="guessedKind">The possbile kind (IntegerLiteral or DoubleLiteral) from ParseFromDigit() method.</param>
            <returns>A more accurate ExpressionTokenKind</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.AdvanceThroughBalancedExpression(System.Char,System.Char)">
            <summary>
            Parses an expression of text that we do not know how to handle in this class, which is between a
            <paramref name="startingCharacter"></paramref> and an <paramref name="endingCharacter"/>.
            </summary>
            <param name="startingCharacter">the starting delimiter</param>
            <param name="endingCharacter">the ending delimiter.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.ParseIdentifier(System.Boolean)">
            <summary>Parses an identifier by advancing the current character.</summary>
            <param name="includingDots">Optional flag for whether to include dots as part of the identifier.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.SetTextPos(System.Int32)">
            <summary>Sets the text position.</summary>
            <param name="pos">New text position.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.ValidateDigit">
            <summary>Validates the current character is a digit.</summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.ExpressionLexer.ExpressionLexerPosition">
            <summary>
            Provides fields to remember an ExpresionLexer's position.
            </summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.ExpressionLexer.UnicodeCategoryEqualityComparer">
            <summary>This class implements IEqualityComparer for UnicodeCategory</summary>
            <remarks>
            Using this class rather than EqualityComparer&lt;T&gt;.Default
            saves from JIT'ing it in each AppDomain.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.UnicodeCategoryEqualityComparer.Equals(System.Globalization.UnicodeCategory,System.Globalization.UnicodeCategory)">
            <summary>
            Checks whether two unicode categories are equal
            </summary>
            <param name="x">first unicode category</param>
            <param name="y">second unicode category</param>
            <returns>true if they are equal, false otherwise</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexer.UnicodeCategoryEqualityComparer.GetHashCode(System.Globalization.UnicodeCategory)">
            <summary>
            Gets a hash code for the specified unicode category
            </summary>
            <param name="obj">the input value</param>
            <returns>The hash code for the given input unicode category, the underlying int</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.ExpressionLexerLiteralExtensions">
            <summary>
            A set of extensions to <see cref="T:Microsoft.OData.UriParser.ExpressionLexer"/> for parsing literals.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexerLiteralExtensions.IsLiteralType(Microsoft.OData.UriParser.ExpressionTokenKind)">
            <summary>
            Returns whether the <paramref name="tokenKind"/> is a primitive literal type:
            Binary, Boolean, DateTime, Decimal, Double, Guid, In64, Integer, Null, Single, or String.
            Internal for test use only
            </summary>
            <param name="tokenKind">InternalKind of token.</param>
            <returns>Whether the <paramref name="tokenKind"/> is a literal type.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexerLiteralExtensions.ReadLiteralToken(Microsoft.OData.UriParser.ExpressionLexer)">
            <summary>Reads the next token, checks that it is a literal token type, converts to to a Common Language Runtime value as appropriate, and returns the value.</summary>
            <param name="expressionLexer">The expression lexer.</param>
            <returns>The value represented by the next token.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexerLiteralExtensions.ParseNullLiteral(Microsoft.OData.UriParser.ExpressionLexer)">
            <summary>
            Parses null literals.
            </summary>
            <param name="expressionLexer">The expression lexer.</param>
            <returns>The literal token produced by building the given literal.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexerLiteralExtensions.ParseTypedLiteral(Microsoft.OData.UriParser.ExpressionLexer,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Parses typed literals.
            </summary>
            <param name="expressionLexer">The expression lexer.</param>
            <param name="targetTypeReference">Expected type to be parsed.</param>
            <returns>The literal token produced by building the given literal.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexerLiteralExtensions.TryParseLiteral(Microsoft.OData.UriParser.ExpressionLexer)">
            <summary>
            Parses a literal.
            Precondition: lexer is at a literal token type: Boolean, DateTime, Decimal, Null, String, Int64, Integer, Double, Single, Guid, Binary.
            </summary>
            <param name="expressionLexer">The expression lexer.</param>
            <returns>The literal query token or null if something else was found.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.ExpressionLexerUtils">
            <summary>
            Utilities needed by <see cref="T:Microsoft.OData.UriParser.ExpressionLexer"/> which are relatively simple and standalone.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpressionLexerUtils.SingleSuffixLower">
            <summary>Suffix for single literals.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpressionLexerUtils.SingleSuffixUpper">
            <summary>Suffix for single literals.</summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexerUtils.IsNumeric(Microsoft.OData.UriParser.ExpressionTokenKind)">
            <summary>Whether the specified token identifier is a numeric literal.</summary>
            <param name="id">Token to check.</param>
            <returns>true if it's a numeric literal; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexerUtils.IsInfinityOrNaNDouble(System.String)">
            <summary>
            Checks if the <paramref name="tokenText"/> is INF or NaN.
            Internal for testing only.
            </summary>
            <param name="tokenText">Input token.</param>
            <returns>true if match found, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexerUtils.IsInfinityLiteralDouble(System.String)">
            <summary>
            Checks whether <paramref name="text"/> equals to 'INF'
            Internal for testing only
            </summary>
            <param name="text">Text to look in.</param>
            <returns>true if the substring is equal using an ordinal comparison; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexerUtils.IsInfinityOrNanSingle(System.String)">
            <summary>
            Checks if the <paramref name="tokenText"/> is INFf/INFF or NaNf/NaNF.
            Internal for testing only.
            </summary>
            <param name="tokenText">Input token.</param>
            <returns>true if match found, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionLexerUtils.IsInfinityLiteralSingle(System.String)">
            <summary>
            Checks whether <paramref name="text"/> EQUALS to 'INFf' or 'INFF'.
            Internal for testing only.
            </summary>
            <param name="text">Text to look in.</param>
            <returns>true if the substring is equal using an ordinal comparison; false otherwise.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.ExpressionToken">
            <summary>Use this class to represent a lexical expression token.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpressionToken.GreaterThan">
            <summary>Token representing gt keyword</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpressionToken.EqualsTo">
            <summary>Token representing eq keyword</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpressionToken.LessThan">
            <summary>Token representing lt keyword</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpressionToken.Kind">
            <summary>InternalKind of token.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpressionToken.Text">
            <summary>Token text.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpressionToken.Position">
            <summary>Position of token.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpressionToken.LiteralEdmType">
            <summary>The edm type of the expression token literal.</summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ExpressionToken.IsKeyValueToken">
            <summary>Checks whether this token is a valid token for a key value.</summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ExpressionToken.IsFunctionParameterToken">
            <summary>Checks whether this token is a valid token for a function parameter.</summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionToken.ToString">
            <summary>Provides a string representation of this token.</summary>
            <returns>String representation of this token.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionToken.GetIdentifier">
            <summary>Gets the current identifier text.</summary>
            <returns>The current identifier text.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpressionToken.IdentifierIs(System.String,System.Boolean)">
            <summary>Checks that this token has the specified identifier.</summary>
            <param name="id">Identifier to check.</param>
            <param name="enableCaseInsensitive">whether to allow case insensitive.</param>
            <returns>true if this is an identifier with the specified text.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.FunctionSignature">
            <summary>
            Class representing a function signature using EDM types.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.FunctionSignature.argumentTypes">
            <summary>
            The argument types for this function signature.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.FunctionSignature.createArgumentTypesWithFacets">
            <summary>
            Factories for creating argument types with proper facets.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionSignature.#ctor(Microsoft.OData.Edm.IEdmTypeReference[],Microsoft.OData.UriParser.FunctionSignature.CreateArgumentTypeWithFacets[])">
            <summary>
            Constructor taking all the argument types, and the factories for creating argument types with proper facets.
            </summary>
            <param name="argumentTypes">The argument types for this function signature.</param>
            <param name="createArgumentTypesWithFacets">Factories for creating argument types with proper facets.</param>
        </member>
        <member name="T:Microsoft.OData.UriParser.FunctionSignature.CreateArgumentTypeWithFacets">
            <summary>
            Delegate for creating an argument type with specified facets.
            </summary>
            <param name="precision">The precision facet.</param>
            <param name="scale">The scale facet.</param>
            <returns>An argument type with specified facets.</returns>
        </member>
        <member name="P:Microsoft.OData.UriParser.FunctionSignature.ArgumentTypes">
            <summary>
            The argument types for this function signature.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionSignature.GetArgumentTypeWithFacets(System.Int32,System.Nullable{System.Int32},System.Nullable{System.Int32})">
            <summary>
            Gets the type with specified facets for the index-th argument.
            </summary>
            <param name="index">Index of the argument for which to get the type for.</param>
            <param name="precision">The precision facet.</param>
            <param name="scale">The scale facet.</param>
            <returns>The type with specified facets for the index-th argument.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.FunctionSignatureWithReturnType">
            <summary>
            Class representing a function signature using EDM types.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.FunctionSignatureWithReturnType.argumentTypes">
            <summary>The argument types for this function signature.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.FunctionSignatureWithReturnType.returnType">
            <summary>
            The return type of this function signature.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionSignatureWithReturnType.#ctor(Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.Edm.IEdmTypeReference[])">
            <summary>
            Constructor taking all the argument types.
            </summary>
            <param name="returnType">The return type of this function signature.</param>
            <param name="argumentTypes">The argument types for this function signature.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.FunctionSignatureWithReturnType.ReturnType">
            <summary>
            The return type of this function signature.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.FunctionSignatureWithReturnType.ArgumentTypes">
            <summary>
            The argument types for this function signature.
            </summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.InternalErrorCodes">
            <summary>
            An enumeration that lists the internal errors.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.InternalErrorCodes.TypePromotionUtils_GetFunctionSignatures_Binary_UnreachableCodepath">
            <summary>Unreachable codepath in TypePromotionUtils.GetFunctionSignatures(BinaryOperatorKind), unrecognized kind of binary operator.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.InternalErrorCodes.TypePromotionUtils_GetFunctionSignatures_Unary_UnreachableCodepath">
            <summary>Unreachable codepath in TypePromotionUtils.GetFunctionSignatures(UnaryOperatorKind), unrecognized kind of unary operator.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.InternalErrorCodes.UriQueryExpressionParser_ParseComparison">
            <summary>Unreachable codepath in UriQueryExpressionParser.ParseComparison</summary>
            <remarks>Was a new binary operator keyword without adding it to the switch in the ParseComparison?</remarks>
        </member>
        <member name="F:Microsoft.OData.UriParser.InternalErrorCodes.UriPrimitiveTypeParser_TryUriStringToPrimitive">
            <summary>Unreachable codepath in UriPrimitiveTypeParser.TryUriStringToPrimitive</summary>
            <remarks>Unsupported type was asked to be parsed.</remarks>
        </member>
        <member name="F:Microsoft.OData.UriParser.InternalErrorCodes.QueryNodeUtils_BinaryOperatorResultType_UnreachableCodepath">
            <summary>Unreachable codepath in QueryNodeUtils.BinaryOperatorResultType, unrecognized kind of binary operator.</summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.KeyPropertyValue">
            <summary>
            Class representing a single key property value in a key lookup.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.KeyPropertyValue.KeyProperty">
            <summary>
            Gets or sets the key property.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.KeyPropertyValue.KeyValue">
            <summary>
            Gets or sets the value of the key property.
            </summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.LiteralUtils">
            <summary>
            Helper methods for with literals.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.LiteralUtils.Formatter">
            <summary>
            The formatter to create/format text to and from spatial.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralUtils.ParseGeography(System.String)">
            <summary>
            Parse the given text as a Geography literal.
            </summary>
            <param name="text">The text to parse.</param>
            <returns>The Geography object if succeeded, else a ParseErrorException is thrown.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralUtils.ParseGeometry(System.String)">
            <summary>
            Parse the given text as a Geometry literal.
            </summary>
            <param name="text">The text to parse.</param>
            <returns>The Geometry object if succeeded, else a ParseErrorException is thrown.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralUtils.ToWellKnownText(Microsoft.Spatial.Geography)">
            <summary>
            Convert to string the given Geography instance.
            </summary>
            <param name="instance">Instance to convert.</param>
            <returns>Well-known text representation.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralUtils.ToWellKnownText(Microsoft.Spatial.Geometry)">
            <summary>
            Convert to string the given Geometry instance.
            </summary>
            <param name="instance">Instance to convert.</param>
            <returns>Well-known text representation.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.NamedValue">
            <summary>
            Class representing a single named value (name and value pair).
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.NamedValue.name">
            <summary>
            The name of the value. Or null if the name was not used for this value.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.NamedValue.value">
            <summary>
            The value - a literal.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.NamedValue.#ctor(System.String,Microsoft.OData.UriParser.LiteralToken)">
            <summary>
            Create a new NamedValue lookup given name and value.
            </summary>
            <param name="name">The name of the value. Or null if the name was not used for this value.</param>
            <param name="value">The value - a literal.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.NamedValue.Name">
            <summary>
            The name of the value. Or null if the name was not used for this value.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.NamedValue.Value">
            <summary>
            The value - a literal.
            </summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.ODataQueryOptionParser">
            <summary>
            Parser for query options
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataQueryOptionParser.targetEdmType">
            <summary>Target Edm type. </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataQueryOptionParser.queryOptions">
            <summary> Dictionary of query options </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataQueryOptionParser.filterClause">
            <summary>Filter clause.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataQueryOptionParser.selectExpandClause">
            <summary>SelectAndExpand clause.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataQueryOptionParser.orderByClause">
            <summary>Orderby clause.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataQueryOptionParser.searchClause">
            <summary>Search clause.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataQueryOptionParser.applyClause">
            <summary>
            Apply clause for aggregation queries
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataQueryOptionParser.computeClause">
            <summary>
            Compute clause for computation queries
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataQueryOptionParser.odataPathInfo">
            <summary>
            The path info about parsed segments and target edm type and navigation source.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.#ctor(Microsoft.OData.Edm.IEdmModel,Microsoft.OData.Edm.IEdmType,Microsoft.OData.Edm.IEdmNavigationSource,System.Collections.Generic.IDictionary{System.String,System.String})">
            <summary>
            Constructor for ODataQueryOptionParser
            </summary>
            <param name="model">Model to use for metadata binding.</param>
            <param name="targetEdmType">The target EdmType to apply the query option on.</param>
            <param name="targetNavigationSource">The target navigation source to apply the query option on.</param>
            <param name="queryOptions">The dictionary storing query option key-value pairs.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.#ctor(Microsoft.OData.Edm.IEdmModel,Microsoft.OData.Edm.IEdmType,Microsoft.OData.Edm.IEdmNavigationSource,System.Collections.Generic.IDictionary{System.String,System.String},System.IServiceProvider)">
            <summary>
            Constructor for ODataQueryOptionParser
            </summary>
            <param name="model">Model to use for metadata binding.</param>
            <param name="targetEdmType">The target EdmType to apply the query option on.</param>
            <param name="targetNavigationSource">The target navigation source to apply the query option on.</param>
            <param name="queryOptions">The dictionary storing query option key-value pairs.</param>
            <param name="container">The optional dependency injection container to get related services for URI parsing.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.#ctor(Microsoft.OData.Edm.IEdmModel,Microsoft.OData.UriParser.ODataPath,System.Collections.Generic.IDictionary{System.String,System.String})">
            <summary>
            Constructor for ODataQueryOptionParser
            </summary>
            <param name="model">Model to use for metadata binding.</param>
            <param name="odataPath">The odata path to apply the query option on.</param>
            <param name="queryOptions">The dictionary storing query option key-value pairs.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.#ctor(Microsoft.OData.Edm.IEdmModel,Microsoft.OData.UriParser.ODataPath,System.Collections.Generic.IDictionary{System.String,System.String},System.IServiceProvider)">
            <summary>
            Constructor for ODataQueryOptionParser
            </summary>
            <param name="model">Model to use for metadata binding.</param>
            <param name="odataPath">The odata path to apply the query option on.</param>
            <param name="queryOptions">The dictionary storing query option key-value pairs.</param>
            <param name="container">The optional dependency injection container to get related services for URI parsing.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataQueryOptionParser.Settings">
            <summary>
            The settings for this instance of <see cref="T:Microsoft.OData.UriParser.ODataQueryOptionParser"/>. Refer to the documentation for the individual properties of <see cref="T:Microsoft.OData.UriParser.ODataUriParserSettings"/> for more information.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataQueryOptionParser.ParameterAliasNodes">
            <summary>
            Get the parameter alias nodes info.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataQueryOptionParser.Resolver">
            <summary>
            Gets or sets the <see cref="T:Microsoft.OData.UriParser.ODataUriResolver"/> for <see cref="T:Microsoft.OData.UriParser.ODataUriParser"/>.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataQueryOptionParser.Configuration">
            <summary>The parser's configuration. </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.ParseFilter">
            <summary>
            Parses a filter clause on the given full Uri, binding
            the text into semantic nodes using the constructed mode.
            </summary>
            <returns>A <see cref="T:Microsoft.OData.UriParser.FilterClause"/> representing the metadata bound filter expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.ParseApply">
            <summary>
            Parses a apply clause on the given full Uri, binding
            the text into semantic nodes using the constructed mode.
            </summary>
            <returns>A <see cref="T:Microsoft.OData.UriParser.Aggregation.ApplyClause"/> representing the aggregation query.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.ParseSelectAndExpand">
            <summary>
            ParseSelectAndExpand from an instantiated class
            </summary>
            <returns>A SelectExpandClause with the semantic representation of select and expand terms</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.ParseOrderBy">
            <summary>
            Parses an orderBy clause on the given full Uri, binding
            the text into semantic nodes using the constructed mode.
            </summary>
            <returns>A <see cref="T:Microsoft.OData.UriParser.OrderByClause"/> representing the metadata bound orderby expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.ParseTop">
            <summary>
            Parses a $top query option
            </summary>
            <returns>A value representing that top option, null if $top query does not exist.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.ParseSkip">
            <summary>
            Parses a $skip query option
            </summary>
            <returns>A value representing that skip option, null if $skip query does not exist.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.ParseCount">
            <summary>
            Parses a $count query option
            </summary>
            <returns>A count representing that count option, null if $count query does not exist.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.ParseSearch">
            <summary>
            Parses the $search.
            </summary>
            <returns>SearchClause representing $search.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.ParseSkipToken">
            <summary>
            Parses a $skiptoken query option
            </summary>
            <returns>A value representing that skip token option, null if $skiptoken query does not exist.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.ParseDeltaToken">
            <summary>
            Parses a $deltatoken query option
            </summary>
            <returns>A value representing that delta token option, null if $deltatoken query does not exist.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.ParseCompute">
            <summary>
            Parses a compute clause on the given full Uri, binding
            the text into semantic nodes using the constructed mode.
            </summary>
            <returns>A <see cref="T:Microsoft.OData.UriParser.ComputeClause"/> representing the computed properties.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.ParseFilterImplementation(System.String,Microsoft.OData.UriParser.ODataUriParserConfiguration,Microsoft.OData.UriParser.ODataPathInfo)">
            <summary>
            Parses a <paramref name="filter"/> clause, binding
            the text into semantic nodes using the provided model.
            </summary>
            <param name="filter">String representation of the filter expression.</param>
            <param name="configuration">The configuration used for binding.</param>
            <param name="odataPathInfo">The path info from Uri path.</param>
            <returns>A <see cref="T:Microsoft.OData.UriParser.FilterClause"/> representing the metadata bound filter expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.ParseApplyImplementation(System.String,Microsoft.OData.UriParser.ODataUriParserConfiguration,Microsoft.OData.UriParser.ODataPathInfo)">
            <summary>
            Parses an <paramref name="apply"/> clause, binding
            the text into a metadata-bound or dynamic properties to be applied using the provided model.
            </summary>
            <param name="apply">String representation of the apply expression.</param>
            <param name="configuration">The configuration used for binding.</param>
            <param name="odataPathInfo">The path info from Uri path.</param>
            <returns>A <see cref="T:Microsoft.OData.UriParser.Aggregation.ApplyClause"/> representing the metadata bound apply expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.ParseSelectAndExpandImplementation(System.String,System.String,Microsoft.OData.UriParser.ODataUriParserConfiguration,Microsoft.OData.UriParser.ODataPathInfo)">
            <summary>
            Parses the <paramref name="select"/> and <paramref name="expand"/> clauses, binding
            the text into a metadata-bound list of properties to be selected using the provided model.
            </summary>
            <param name="select">String representation of the select expression from the URI.</param>
            <param name="expand">String representation of the expand expression from the URI.</param>
            <param name="configuration">The configuration used for binding.</param>
            <param name="odataPathInfo">The path info from Uri path.</param>
            <returns>A <see cref="T:Microsoft.OData.UriParser.SelectExpandClause"/> representing the metadata bound select and expand expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.ParseOrderByImplementation(System.String,Microsoft.OData.UriParser.ODataUriParserConfiguration,Microsoft.OData.UriParser.ODataPathInfo)">
            <summary>
            Parses an <paramref name="orderBy "/> clause, binding
            the text into semantic nodes using the provided model.
            </summary>
            <param name="orderBy">String representation of the orderby expression.</param>
            <param name="configuration">The configuration used for binding.</param>
            <param name="odataPathInfo">The path info from Uri path.</param>
            <returns>An <see cref="T:Microsoft.OData.UriParser.OrderByClause"/> representing the metadata bound orderby expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.ParseTop(System.String)">
            <summary>
            Parses a $top query option
            </summary>
            <param name="topQuery">The topQuery from the query</param>
            <returns>A value representing that top option, null if $top query does not exist.</returns>
            <exception cref="T:Microsoft.OData.ODataException">Throws if the input count is not a valid $top value.</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.ParseSkip(System.String)">
            <summary>
            Parses a $skip query option
            </summary>
            <param name="skipQuery">The count skipQuery from the query</param>
            <returns>A value representing that skip option, null if $skip query does not exist.</returns>
            <exception cref="T:Microsoft.OData.ODataException">Throws if the input count is not a valid $skip value.</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.ParseCount(System.String)">
            <summary>
            Parses a query count option
            Valid Samples: $count=true; $count=false
            Invalid Samples: $count=True; $count=ture
            </summary>
            <param name="count">The count string from the query</param>
            <returns>query count true of false</returns>
            <exception cref="T:Microsoft.OData.ODataException">Throws if the input count is not a valid $count value.</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.ParseSearchImplementation(System.String,Microsoft.OData.UriParser.ODataUriParserConfiguration)">
            <summary>
            Parses the <paramref name="search"/> clause, binding
            the text into a metadata-bound list of properties to be selected using the provided model.
            </summary>
            <param name="search">String representation of the search expression from the URI.</param>
            <param name="configuration">The configuration used for binding.</param>
            <returns>A <see cref="T:Microsoft.OData.UriParser.SearchClause"/> representing the metadata bound search expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.ParseComputeImplementation(System.String,Microsoft.OData.UriParser.ODataUriParserConfiguration,Microsoft.OData.UriParser.ODataPathInfo)">
            <summary>
            Parses the <paramref name="compute"/> clause, binding
            the text into a metadata-bound list of compuations using the provided model.
            </summary>
            <param name="compute">String representation of the compute expression from the URI.</param>
            <param name="configuration">The configuration used for binding.</param>
            <param name="odataPathInfo">The path info from Uri path.</param>
            <returns>A <see cref="T:Microsoft.OData.UriParser.ComputeClause"/> representing the metadata bound compute expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataQueryOptionParser.TryGetQueryOption(System.String,System.String@)">
            <summary>
            Gets query options according to case sensitivity and whether no dollar query options is enabled.
            </summary>
            <param name="name">The query option name with $ prefix.</param>
            <param name="value">The value of the query option.</param>
            <returns>Whether value successfully retrived.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.ODataUnrecognizedPathException">
            <summary>
            The exception that is thrown when path parsing detects an unrecognized or unresolvable token in a path (which servers should treat as a 404).
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUnrecognizedPathException.#ctor">
            <summary>
            Initializes a new instance of the ODataUnrecognizedPathException class.
            </summary>
            <remarks>
            The Message property is initialized to a system-supplied message
            that describes the error. This message takes into account the
            current system culture.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUnrecognizedPathException.#ctor(System.String)">
            <summary>
            Initializes a new instance of the ODataUnrecognizedPathException class.
            </summary>
            <param name="message">Plain text error message for this exception.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUnrecognizedPathException.#ctor(System.String,System.Exception)">
            <summary>
            Initializes a new instance of the DataServiceException class.
            </summary>
            <param name="message">Plain text error message for this exception.</param>
            <param name="innerException">Exception that caused this exception to be thrown.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUnrecognizedPathException.ParsedSegments">
            <summary>
            Segments that have been successfully parsed when this exception was thrown.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUnrecognizedPathException.CurrentSegment">
            <summary>
            Current segment UriParser was dealing with when exception was thrown.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUnrecognizedPathException.UnparsedSegments">
            <summary>
            Unparsed segments.
            </summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.ODataUriParser">
            <summary>
            Main Public API to parse an ODataURI.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParser.configuration">
            <summary>The parser's configuration. </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParser.serviceRoot">
            <summary>
            Absolute URI of the service root.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParser.uri">
            <summary>The absolute or relative URI to be parsed. </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParser.queryOptions">
            <summary>Query option list</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParser.queryOptionDic">
            <summary>Store query option dictionary.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParser.customQueryOptions">
            <summary>Store non-OData query options, duplicates are allowed.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParser.queryOptionParser">
            <summary>Parser for query option.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParser.odataPath">
            <summary>OData Path.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParser.entityIdSegment">
            <summary>EntityId Segment.</summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParser.#ctor(Microsoft.OData.Edm.IEdmModel,System.Uri,System.Uri)">
            <summary>
            Build an ODataUriParser
            </summary>
            <param name="model">Model to use for metadata binding.</param>
            <param name="serviceRoot">Absolute URI of the service root.</param>
            <param name="uri">Absolute or relative URI to be parsed.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParser.#ctor(Microsoft.OData.Edm.IEdmModel,System.Uri,System.Uri,System.IServiceProvider)">
            <summary>
            Build an ODataUriParser
            </summary>
            <param name="model">Model to use for metadata binding.</param>
            <param name="serviceRoot">Absolute URI of the service root.</param>
            <param name="uri">Absolute or relative URI to be parsed.</param>
            <param name="container">The optional dependency injection container to get related services for URI parsing.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParser.#ctor(Microsoft.OData.Edm.IEdmModel,System.Uri)">
            <summary>
            Build an ODataUriParser
            </summary>
            <param name="model">Model to use for metadata binding.</param>
            <param name="relativeUri">Relative URI to be parsed.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParser.#ctor(Microsoft.OData.Edm.IEdmModel,System.Uri,System.IServiceProvider)">
            <summary>
            Build an ODataUriParser
            </summary>
            <param name="model">Model to use for metadata binding.</param>
            <param name="relativeUri">Relative URI to be parsed.</param>
            <param name="container">The optional dependency injection container to get related services for URI parsing.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParser.Settings">
            <summary>
            The settings for this instance of <see cref="T:Microsoft.OData.UriParser.ODataUriParser"/>. Refer to the documentation for the individual properties of <see cref="T:Microsoft.OData.UriParser.ODataUriParserSettings"/> for more information.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParser.Model">
            <summary>
            Gets the model for this ODataUriParser
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParser.Container">
            <summary>
            The optional dependency injection container to get related services for URI parsing.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParser.ServiceRoot">
            <summary>
            Gets the absolute URI of the service root.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParser.UrlKeyDelimiter">
            <summary>
            Gets or Sets the <see cref="T:Microsoft.OData.ODataUrlKeyDelimiter"/> to use while parsing, specifically
            whether to recognize keys as segments or not.
            </summary>
            <exception cref="T:System.ArgumentNullException">Throws if the input value is null.</exception>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParser.BatchReferenceCallback">
            <summary>
            Gets or Sets a callback that returns a BatchReferenceSegment (to be used for $0 in batch)
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParser.EnableNoDollarQueryOptions">
            <summary>
            Whether no dollar query options is enabled.
            If it is enabled, the '$' prefix of system query options becomes optional.
            For example, "select" and "$select" are equivalent in this case.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParser.EnableUriTemplateParsing">
            <summary>
            Whether Uri template parsing is enabled. Uri template for keys and function parameters are supported.
            See <see cref="T:Microsoft.OData.UriParser.UriTemplateExpression"/> class for detail.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParser.Resolver">
            <summary>
            Gets or sets the <see cref="T:Microsoft.OData.UriParser.ODataUriResolver"/> for <see cref="T:Microsoft.OData.UriParser.ODataUriParser"/>.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParser.ParseDynamicPathSegmentFunc">
            <summary>
            Gets or sets the function which can be used to parse an unknown path segment or an open property segment.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParser.ParameterAliasNodes">
            <summary>
            Get the parameter alias nodes info.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParser.CustomQueryOptions">
            <summary>
            Gets non-OData query options.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParser.ParameterAliasValueAccessor">
            <summary>
            Gets or sets the parameter aliases info for MetadataBinder to resolve parameter alias' metadata type.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParser.ParsePath">
            <summary>
            Parses the odata path on the given full Uri
            </summary>
            <returns>An <see cref="T:Microsoft.OData.UriParser.ODataPath"/> representing OData path.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParser.ParseFilter">
            <summary>
            Parses a filter clause on the given full Uri, binding
            the text into semantic nodes using the constructed mode.
            </summary>
            <returns>A <see cref="T:Microsoft.OData.UriParser.FilterClause"/> representing the metadata bound filter expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParser.ParseOrderBy">
            <summary>
            Parses a orderBy clause on the given full Uri, binding
            the text into semantic nodes using the constructed mode.
            </summary>
            <returns>A <see cref="T:Microsoft.OData.UriParser.OrderByClause"/> representing the metadata bound orderby expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParser.ParseSelectAndExpand">
            <summary>
            ParseSelectAndExpand from an instantiated class
            </summary>
            <returns>A SelectExpandClause with the semantic representation of select and expand terms</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParser.ParseEntityId">
            <summary>
            Parses the entity identifier.
            </summary>
            <returns>EntityIdSegment contained absolute Uri representing $id</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParser.ParseTop">
            <summary>
            Parses a $top query option
            </summary>
            <returns>A value representing that top option, null if $top query does not exist.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParser.ParseSkip">
            <summary>
            Parses a $skip query option
            </summary>
            <returns>A value representing that skip option, null if $skip query does not exist.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParser.ParseCount">
            <summary>
            Parses a $count query option
            </summary>
            <returns>An count representing that count option, null if $count query does not exist.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParser.ParseSearch">
            <summary>
            Parses the $search.
            </summary>
            <returns>SearchClause representing $search.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParser.ParseApply">
            <summary>
            Parses the $apply.
            </summary>
            <returns>ApplyClause representing $apply.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParser.ParseSkipToken">
            <summary>
            Parses a $skiptoken query option
            </summary>
            <returns>A value representing that skip token option, null if $skiptoken query does not exist.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParser.ParseDeltaToken">
            <summary>
            Parses a $deltatoken query option
            </summary>
            <returns>A value representing that delta token option, null if $deltatoken query does not exist.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParser.ParseCompute">
            <summary>
            Parses the $compute.
            </summary>
            <returns>ComputeClause representing $compute.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParser.ParseUri">
            <summary>
            Parse a full Uri into its contingent parts with semantic meaning attached to each part.
            See <see cref="T:Microsoft.OData.ODataUri"/>.
            </summary>
            <returns>An <see cref="T:Microsoft.OData.ODataUri"/> representing the full uri.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParser.ParsePathImplementation">
            <summary>
            Parses a the fullUri into a semantic <see cref="T:Microsoft.OData.UriParser.ODataPath"/> object.
            </summary>
            <remarks>
            This is designed to parse the Path of a URL. If it is used to parse paths that are contained
            within other places, such as $filter expressions, then it may not enforce correct rules.
            </remarks>
            <returns>An <see cref="T:Microsoft.OData.UriParser.ODataPath"/> representing the metadata-bound path expression.</returns>
            <exception cref="T:Microsoft.OData.ODataException">Throws if the input path is not an absolute uri.</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParser.Initialize">
            <summary>
            Initialize a UriParser. We have to initialize UriParser separately for parsing path, because we may set BatchReferenceCallback before ParsePath.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParser.InitQueryOptionDic">
            <summary>
            Resolve query options to dictionary.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParser.IsODataQueryOption(System.String)">
            <summary>
            Judge if optionName belongs to UriQueryConstants (Case ignored).
            </summary>
            <param name="optionName">The name of a query option.</param>
            <returns>True if optionName is OData query option, vise versa.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.ODataUriParserConfiguration">
            <summary>
            Internal class for storing all the configuration information about the URI parser. Allows us to flow these values around without passing an actual parser.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParserConfiguration.urlKeyDelimiter">
            <summary>The conventions to use when parsing URLs.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParserConfiguration.uriResolver">
            <summary>The resolver to use when parsing URLs.</summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParserConfiguration.#ctor(Microsoft.OData.Edm.IEdmModel,System.IServiceProvider)">
            <summary>
            Initializes a new instance of <see cref="T:Microsoft.OData.UriParser.ODataUriParserConfiguration"/>.
            </summary>
            <param name="model">Model to use for metadata binding.</param>
            <param name="container">The optional dependency injection container to get related services for URI parsing.</param>
            <exception cref="T:System.ArgumentNullException">Throws if input model is null.</exception>
            <exception cref="T:System.ArgumentException">Throws if the input serviceRoot is not an AbsoluteUri</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParserConfiguration.#ctor(Microsoft.OData.Edm.IEdmModel)">
            <summary>
            Initializes a new instance of <see cref="T:Microsoft.OData.UriParser.ODataUriParserConfiguration"/>.
            </summary>
            <param name="model">Model to use for metadata binding.</param>
            <exception cref="T:System.ArgumentNullException">Throws if input model is null.</exception>
            <exception cref="T:System.ArgumentException">Throws if the input serviceRoot is not an AbsoluteUri</exception>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParserConfiguration.Settings">
            <summary>
            The settings for this instance of <see cref="T:Microsoft.OData.UriParser.ODataUriParser"/>. Refer to the documentation for the individual properties of <see cref="T:Microsoft.OData.UriParser.ODataUriParserSettings"/> for more information.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParserConfiguration.Model">
            <summary>
            Gets the model for this ODataUriParser
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParserConfiguration.Container">
            <summary>
            The optional dependency injection container to get related services for URI parsing.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParserConfiguration.UrlKeyDelimiter">
            <summary>
            Gets or Sets the <see cref="T:Microsoft.OData.ODataUrlKeyDelimiter"/> to use while parsing, specifically
            whether to recognize keys as segments or not.
            </summary>
            <exception cref="T:System.ArgumentNullException">Throws if the input value is null.</exception>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParserConfiguration.BatchReferenceCallback">
            <summary>
            Gets or Sets a callback that returns a BatchReferenceSegment (to be used for $0 in batch)
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParserConfiguration.ParseDynamicPathSegmentFunc">
            <summary>
            Gets or sets the function which can be used to parse an unknown path segment or an open property segment.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParserConfiguration.EnableCaseInsensitiveUriFunctionIdentifier">
            <summary>
            Whether to allow case insensitive for builtin identifier.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParserConfiguration.EnableNoDollarQueryOptions">
            <summary>
            Gets or Sets an option whether no dollar query options is enabled.
            If it is enabled, the '$' prefix of system query options becomes optional.
            For example, "select" and "$select" are equivalent in this case.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParserConfiguration.EnableUriTemplateParsing">
            <summary>
            Whether Uri template parsing is enabled. See <see cref="T:Microsoft.OData.UriParser.UriTemplateExpression"/> class for detail.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParserConfiguration.ParameterAliasValueAccessor">
            <summary>
            Gets or sets the parameter aliases info for MetadataBinder to resolve parameter alias' metadata type.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParserConfiguration.Resolver">
            <summary>
            Gets or sets the <see cref="T:Microsoft.OData.UriParser.ODataUriResolver"/>.
            </summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.ODataUriParserSettings">
            <summary>
            Settings used by <see cref="T:Microsoft.OData.UriParser.ODataUriParser"/>.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParserSettings.DefaultFilterLimit">
            <summary>
            Default recursive call limit for Filter
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParserSettings.DefaultOrderByLimit">
            <summary>
            Default recursive call limit for OrderBy
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParserSettings.DefaultSelectExpandLimit">
            <summary>
            Default tree depth for Select and Expand
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParserSettings.DefaultPathLimit">
            <summary>
            Default limit for the path parser.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParserSettings.DefaultSearchLimit">
            <summary>
            Default limit for the search parser.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParserSettings.filterLimit">
            <summary>
            the recursive depth of the Syntactic tree for a filter clause
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParserSettings.orderByLimit">
            <summary>
            the maximum depth of the syntactic tree for an orderby clause
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParserSettings.pathLimit">
            <summary>
            the maximum number of segments in a path
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParserSettings.selectExpandLimit">
            <summary>
            the maximum depth of the Syntactic or Semantic tree for a Select or Expand clause
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParserSettings.maxExpandDepth">
            <summary>
            The maximum depth of the tree that results from parsing $expand.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParserSettings.maxExpandCount">
            <summary>
            The maximum number of <see cref="T:Microsoft.OData.UriParser.ExpandedNavigationSelectItem"/> instances that can appear in the tree that results from parsing $expand.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriParserSettings.searchLimit">
            <summary>
            the maximum depth of the syntactic tree for an search clause
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriParserSettings.#ctor">
            <summary>
            Initializes a new instance of <see cref="T:Microsoft.OData.UriParser.ODataUriParserSettings"/> with default values.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParserSettings.MaximumExpansionDepth">
            <summary>
            Gets or sets the maximum depth of the tree that results from parsing $expand.
            </summary>
            <remarks>
            This will be validated after parsing completes, and so should not be used to prevent the instantiation of large trees.
            Further, redundant expansions will be pruned before validation and will not count towards the maximum.
            </remarks>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParserSettings.MaximumExpansionCount">
            <summary>
            Gets or sets the maximum number of <see cref="T:Microsoft.OData.UriParser.ExpandedNavigationSelectItem"/> instances that can appear in the tree that results from parsing $expand.
            </summary>
            <remarks>
            This will be validated after parsing completes, and so should not be used to prevent the instantiation of large trees.
            Further, redundant expansions will be pruned before validation and will not count towards the maximum.
            </remarks>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParserSettings.SelectExpandLimit">
            <summary>
            Gets or Sets the maximum recursive depth for a select and expand clause, which limits the maximum depth of the tree that can be parsed by the
            syntactic parser. This guarantees a set level of performance.
            </summary>
            <remarks>
            The number here doesn't necessarily correspond exactly with the actual maximum recursive depth of the syntactic tree,
            i.e a limit of 20 doesn't necessarily mean that a tree will have depth exactly 20, it may have depth 10 (but never over 20).
            Think of it more as an upper bound.
            </remarks>
            <exception cref="T:Microsoft.OData.ODataException">Throws if the input value is negative.</exception>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParserSettings.FilterLimit">
            <summary>
            Gets or Sets the limit on the maximum depth of the filter tree that can be parsed by the
            syntactic parser. This guarantees a set level of performance.
            </summary>
            <remarks>
            The number here doesn't necessarily correspond exactly with the actual maximum recursive depth of the syntactic tree,
            i.e a limit of 20 doesn't necessarily mean that a tree will have depth exactly 20, it may have depth 10 (but never over 20).
            Think of it more as an upper bound.
            </remarks>
            <exception cref="T:Microsoft.OData.ODataException">Throws if the input value is negative.</exception>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParserSettings.OrderByLimit">
            <summary>
            Gets or sets the maximum recursive depth for an orderby clause, which limits the maximum depth of the tree that can be parsed by the
            syntactic parser. This guarantees a set level of performance.
            </summary>
            <remarks>
            The number here doesn't necessarily correspond exactly with the actual maximum recursive depth of the syntactic tree,
            i.e a limit of 20 doesn't necessarily mean that a tree will have depth exactly 20, it may have depth 10 (but never over 20).
            Think of it more as an upper bound.
            </remarks>
            <exception cref="T:Microsoft.OData.ODataException">Throws if the input value is negative.</exception>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParserSettings.PathLimit">
            <summary>
            Gets or Sets the limit on the maximum number of segments that can be parsed by the
            syntactic parser. This guarantees a set level of performance.
            </summary>
            <remarks>
            Unlike Filter, OrderBy, and SelectExpand, this Limit is more concrete, and will
            limit the segments to exactly the number that is specified... i.e. a limit of
            20 will throw if and only if there are more than 20 segments in the path.
            </remarks>
            <exception cref="T:Microsoft.OData.ODataException">Throws if the input value is negative.</exception>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriParserSettings.SearchLimit">
            <summary>
            Gets or sets the maximum recursive depth for an search clause, which limits the maximum depth of the tree that can be parsed by the
            syntactic parser. This guarantees a set level of performance.
            </summary>
            <remarks>
            The number here doesn't necessarily correspond exactly with the actual maximum recursive depth of the syntactic tree,
            i.e a limit of 20 doesn't necessarily mean that a tree will have depth exactly 20, it may have depth 10 (but never over 20).
            Think of it more as an upper bound.
            </remarks>
            <exception cref="T:Microsoft.OData.ODataException">Throws if the input value is negative.</exception>
        </member>
        <member name="T:Microsoft.OData.UriParser.OrderByDirection">
            <summary>
            Enumeration of order by directions.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.OrderByDirection.Ascending">
            <summary>
            Ascending order.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.OrderByDirection.Descending">
            <summary>
            Descending order.
            </summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.ParseDynamicPathSegment">
            <summary>
            Represents a delegate for parsing an unknown path segment or an open property segment
            </summary>
            <param name="previous">previous segment info.</param>
            <param name="identifier">name of the segment.</param>
            <param name="parenthesisExpression">The section of the segment inside parentheses, or null if there was none.</param>
            <returns>A collection of <see cref="T:Microsoft.OData.UriParser.ODataPathSegment"/> describing the given <paramref name="identifier"/> </returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.CustomUriLiteralParsers">
            <summary>
            This class is the custom literal parser manager and parser.
            Add a Uri custom literal parser through this class.
            This class is also used as an UriLiteralParser.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.CustomUriLiteralParsers.customUriLiteralParsers">
            <summary>
            Used for General uri literal parsers. These parsers will be called for every text that has to parsed.
            The parses could parse multiple EdmTypes.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.CustomUriLiteralParsers.customUriLiteralParserPerEdmType">
            <summary>
            "Registered" uri literal parser to an EdmType. These parsers will be called when the text has to be parsed to the
            specific EdmType they had registered to. Each of these parsers could parse only one EdmType. Better performace.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.CustomUriLiteralParsers.ParseUriStringToType(System.String,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.UriParser.UriLiteralParsingException@)">
            <summary>
            Parse the given uri text.
            Try to parse with a specific Uri literal parser regeistered for the target EdmType.
            If no parser is registered, try to parse with the general parsers.
            This method is public becuase of the Interface, but the Singleton instance in internal so it could not be accessed by clients.
            </summary>
            <param name="text">Part of the Uri which has to be parsed to a value of EdmType <paramref name="targetType"/></param>
            <param name="targetType">The type which the uri text has to be parsed to</param>
            <param name="parsingException">Assign the exception only in case the text could be parsed to the <paramref name="targetType"/> but failed during the parsing process</param>
            <returns>If parsing proceess has succeeded, returns the parsed object, otherwise returns 'Null'</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.CustomUriLiteralParsers.AddCustomUriLiteralParser(Microsoft.OData.UriParser.IUriLiteralParser)">
            <summary>
            Add a custom 'IUriLiteralParser' which will be called to parse uri values during the uri parsing proccess.
            </summary>
            <param name="customUriLiteralParser">The custom uri parser</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="customUriLiteralParser"/> is null</exception>
            <exception cref="T:Microsoft.OData.ODataException">The given IUriLiteralParser instance already exists</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.CustomUriLiteralParsers.AddCustomUriLiteralParser(Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.UriParser.IUriLiteralParser)">
            <summary>
            Add a custom 'IUriLiteralParser' which will be called to parse a value of the given EdmType during the UriParsing proccess.
            </summary>
            <param name="edmTypeReference">The EdmType the Uri literal parser can parse.</param>
            <param name="customUriLiteralParser">The custom uri type parser to add.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="customUriLiteralParser"/> is null.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="edmTypeReference"/> is null.</exception>
            <exception cref="T:Microsoft.OData.ODataException">Another Uri literal parser is already registered for the given EdmType</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.CustomUriLiteralParsers.RemoveCustomUriLiteralParser(Microsoft.OData.UriParser.IUriLiteralParser)">
            <summary>
            Remove the given custom 'IUriLiteralParser' form cache.
            It will be removed from both regular parsers and parsers registered with EdmType.
            </summary>
            <param name="customUriLiteralParser">The custom uri type parser to remove</param>
            <returns>'False' if the given parser to remove doesn't exist. 'True' if the parser has successfully removed</returns>
            <exception cref="T:System.ArgumentNullException">Uri literal parser is null</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.DefaultUriLiteralParser.ParseUriStringToType(System.String,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.UriParser.UriLiteralParsingException@)">
            <summary>
            Try to parse the given text by each parser.
            </summary>
            <param name="text">Part of the Uri which has to be parsed to a value of EdmType <paramref name="targetType"/></param>
            <param name="targetType">The type which the uri text has to be parsed to</param>
            <param name="parsingException">Assign the exception only in case the text could be parsed to the <paramref name="targetType"/> but failed during the parsing process</param>
            <returns>If the parsing proceess has succeeded, returns the parsed object, otherwise returns 'Null'</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.ExpandDepthAndCountValidator">
            <summary>
            A component for walking an expand tree and determining if the depth or number of items exceed user-specified limits.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpandDepthAndCountValidator.maxDepth">
            <summary>
            The maximum depth of any expand tree being validated.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpandDepthAndCountValidator.maxCount">
            <summary>
            The maximum number of expand items allowed in any expand tree being validated, including leaf and non-leaf nodes.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpandDepthAndCountValidator.currentCount">
            <summary>
            The current count when validating a particular tree.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpandDepthAndCountValidator.#ctor(System.Int32,System.Int32)">
            <summary>
            Initializes a new instance of <see cref="T:Microsoft.OData.UriParser.ExpandDepthAndCountValidator"/>.
            </summary>
            <param name="maxDepth">The maximum depth of an expand tree.</param>
            <param name="maxCount">The maximum number of expanded items allowed in a tree.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpandDepthAndCountValidator.Validate(Microsoft.OData.UriParser.SelectExpandClause)">
            <summary>
            Validates the given tree against the user-specified limits.
            </summary>
            <param name="expandTree">The expand tree to validate.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpandDepthAndCountValidator.EnsureMaximumCountAndDepthAreNotExceeded(Microsoft.OData.UriParser.SelectExpandClause,System.Int32)">
            <summary>
            Recursively ensures that the maximum count/depth are not exceeded by walking the tree.
            </summary>
            <param name="expandTree">The expand tree to walk and validate.</param>
            <param name="currentDepth">The current depth of the tree walk.</param>
        </member>
        <member name="T:Microsoft.OData.UriParser.ExpandOptionParser">
            <summary>
            Parser that knows how to parse expand options that could come after the path part of an expand term.
            Delegates to other parsing code as needed. I.E., when a nested $filter comes along, this will
            fire up the filter parsing code to figure that out. That code won't even know that it came from a nested location.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpandOptionParser.resolver">
            <summary>
            The URI resolver which will resolve different kinds of Uri parsing context
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpandOptionParser.parentEntityType">
            <summary>
            The parent entity type for expand option in case expand option is star, get all parent navigation properties
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpandOptionParser.maxRecursionDepth">
            <summary>
            Max recursion depth. As we recurse, each new instance of this class will have this lowered by 1.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpandOptionParser.enableNoDollarQueryOptions">
            <summary>
            Whether to enable no dollar query options.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpandOptionParser.enableCaseInsensitiveBuiltinIdentifier">
            <summary>
            Whether to allow case insensitive for builtin identifier.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ExpandOptionParser.lexer">
            <summary>
            Lexer to parse over the optionsText for a single $expand term. This is NOT the same lexer used by <see cref="T:Microsoft.OData.UriParser.SelectExpandParser"/>
            to parse over the entirety of $select or $expand.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpandOptionParser.#ctor(System.Int32,System.Boolean,System.Boolean)">
            <summary>
            Creates an instance of this class to parse options.
            </summary>
            <param name="maxRecursionDepth">Max recursion depth left.</param>
            <param name="enableCaseInsensitiveBuiltinIdentifier">Whether to allow case insensitive for builtin identifier.</param>
            <param name="enableNoDollarQueryOptions">Whether to enable no dollar query options.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpandOptionParser.#ctor(Microsoft.OData.UriParser.ODataUriResolver,Microsoft.OData.Edm.IEdmStructuredType,System.Int32,System.Boolean,System.Boolean)">
            <summary>
            Creates an instance of this class to parse options.
            </summary>
            <param name="resolver">The URI resolver which will resolve different kinds of Uri parsing context</param>
            <param name="parentEntityType">The parent entity type for expand option</param>
            <param name="maxRecursionDepth">Max recursion depth left.</param>
            <param name="enableCaseInsensitiveBuiltinIdentifier">Whether to allow case insensitive for builtin identifier.</param>
            <param name="enableNoDollarQueryOptions">Whether to enable no dollar query options.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.ExpandOptionParser.MaxFilterDepth">
            <summary>
            The maximum depth for $filter nested in $expand.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ExpandOptionParser.MaxOrderByDepth">
            <summary>
            The maximum depth for $orderby nested in $expand.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ExpandOptionParser.MaxSearchDepth">
            <summary>
            The maximum depth for $search nested in $expand.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpandOptionParser.BuildExpandTermToken(Microsoft.OData.UriParser.PathSegmentToken,System.String)">
            <summary>
            Building off of a PathSegmentToken, continue parsing any expand options (nested $filter, $expand, etc)
            to build up an ExpandTermToken which fully represents the tree that makes up this expand term.
            </summary>
            <param name="pathToken">The PathSegmentToken representing the parsed expand path whose options we are now parsing.</param>
            <param name="optionsText">A string of the text between the parenthesis after an expand option.</param>
            <returns>The list of expand term tokens based on the path token, and all available expand options.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpandOptionParser.BuildStarExpandTermToken(Microsoft.OData.UriParser.PathSegmentToken)">
            <summary>
            Building off of a PathSegmentToken whose value is star, only nested level options is allowed.
            </summary>
            <param name="pathToken">The PathSegmentToken representing the parsed expand path whose options we are now parsing.</param>
            <returns>An expand term token based on the path token, and all available expand options.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpandOptionParser.ResolveLevelOption">
            <summary>
            Parse the level option in the expand option text.
            </summary>
            <returns>The level option for expand in long type</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ExpandOptionParser.ReadQueryOption">
            <summary>
            Read a query option from the lexer.
            </summary>
            <returns>The query option as a string.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.FunctionCallParser">
            <summary>
            Implementation of IFunctionCallParser that allows functions calls and parses arguments with a provided method.
            TODO: This inmplementaiton is incomplete.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.FunctionCallParser.lexer">
            <summary>
            Reference to the lexer.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.FunctionCallParser.parser">
            <summary>
            Method used to parse arguments.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.FunctionCallParser.restoreStateIfFail">
            <summary>
            If set to true, catches any ODataException thrown while trying to parse function arguments.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallParser.#ctor(Microsoft.OData.UriParser.ExpressionLexer,Microsoft.OData.UriParser.UriQueryExpressionParser)">
            <summary>
            Create a new FunctionCallParser.
            </summary>
            <param name="lexer">Lexer positioned at a function identifier.</param>
            <param name="parser">The UriQueryExpressionParser.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallParser.#ctor(Microsoft.OData.UriParser.ExpressionLexer,Microsoft.OData.UriParser.UriQueryExpressionParser,System.Boolean)">
            <summary>
            Create a new FunctionCallParser.
            </summary>
            <param name="lexer">Lexer positioned at a function identifier.</param>
            <param name="parser">The UriQueryExpressionParser.</param>
            <param name="restoreStateIfFail">If set to true, catches any ODataException thrown while trying to parse function arguments.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.FunctionCallParser.UriQueryExpressionParser">
            <summary>
            Reference to the underlying UriQueryExpressionParser.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.FunctionCallParser.Lexer">
            <summary>
            Reference to the lexer.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallParser.TryParseIdentifierAsFunction(Microsoft.OData.UriParser.QueryToken,Microsoft.OData.UriParser.QueryToken@)">
            <summary>
            Try to parse an identifier that represents a function. If the parser instance has
            <see cref="F:Microsoft.OData.UriParser.FunctionCallParser.restoreStateIfFail"/> set as false, then an <see cref="T:Microsoft.OData.ODataException"/>
            is thrown if the parser finds an error.
            </summary>
            <param name="parent">Token for the parent of the function being parsed.</param>
            <param name="result">QueryToken representing this function.</param>
            <returns>True if the parsing was successful.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallParser.ParseArgumentListOrEntityKeyList(System.Action)">
            <summary>
            Parses argument lists or entity key value list.
            </summary>
            <param name="restoreAction">Action invoked for restoring a state during failure.</param>
            <returns>The lexical tokens representing the arguments.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallParser.ParseArguments">
            <summary>
            Parses comma-separated arguments.
            </summary>
            <remarks>
            Arguments can either be of the form a=1,b=2,c=3 or 1,2,3.
            They cannot be mixed between those two styles.
            </remarks>
            <returns>The lexical tokens representing the arguments.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallParser.ReadArgumentsAsPositionalValues">
            <summary>
            Read the list of arguments as a set of positional values
            </summary>
            <returns>A list of FunctionParameterTokens representing each argument</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionCallParser.TryReadArgumentsAsNamedValues(System.Collections.Generic.ICollection{Microsoft.OData.UriParser.FunctionParameterToken}@)">
            <summary>
            Try to read the list of arguments as a set of named values
            </summary>
            <param name="argList">the parsed list of arguments</param>
            <returns>true if the arguments were successfully read.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.FunctionOverloadResolver">
            <summary>
            Helper class to help bind function overloads.
            This is shared between path and filter/orderby function resolution.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionOverloadResolver.ResolveOperationImportFromList(System.String,System.Collections.Generic.IList{System.String},Microsoft.OData.Edm.IEdmModel,Microsoft.OData.Edm.IEdmOperationImport@,Microsoft.OData.UriParser.ODataUriResolver)">
            <summary>
            Try to resolve a function from the given inputs.
            </summary>
            <param name="identifier">The identifier of the function that we're trying to find</param>
            <param name="parameterNames">the names of the parameters to search for.</param>
            <param name="model">the model to use to look up the operation import</param>
            <param name="matchingOperationImport">The single matching function found.</param>
            <param name="resolver">Resolver to be used.</param>
            <returns>True if a function was matched, false otherwise. Will throw if the model has illegal operation imports.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionOverloadResolver.ResolveOperationFromList(System.String,System.Collections.Generic.IEnumerable{System.String},Microsoft.OData.Edm.IEdmType,Microsoft.OData.Edm.IEdmModel,Microsoft.OData.Edm.IEdmOperation@,Microsoft.OData.UriParser.ODataUriResolver)">
            <summary>
            Try to resolve a function from the given inputs.
            </summary>
            <param name="identifier">The identifier of the function that we're trying to find</param>
            <param name="parameterNames">the names of the parameters to search for.</param>
            <param name="bindingType">the type of the previous segment</param>
            <param name="model">the model to use to look up the operation import</param>
            <param name="matchingOperation">The single matching function found.</param>
            <param name="resolver">Resolver to be used.</param>
            <returns>True if a function was matched, false otherwise. Will throw if the model has illegal operation imports.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.FunctionParameterParser">
            <summary>
            Component for parsing function parameters in both $filter/$orderby expressions and in paths.
            TODO: update code that is duplicate between operation and operation import, add more tests.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionParameterParser.TrySplitFunctionParameters(Microsoft.OData.UriParser.UriQueryExpressionParser,System.Collections.Generic.ICollection{Microsoft.OData.UriParser.FunctionParameterToken}@)">
            <summary>
            Tries to parse a collection of function parameters. Allows path and filter to share the core algorithm while representing parameters differently.
            </summary>
            <param name="parser">The UriQueryExpressionParser to read from.</param>
            <param name="splitParameters">The parameters if they were successfully split.</param>
            <returns>Whether the parameters could be split.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionParameterParser.TrySplitOperationParameters(System.String,Microsoft.OData.UriParser.ODataUriParserConfiguration,System.Collections.Generic.ICollection{Microsoft.OData.UriParser.FunctionParameterToken}@)">
            <summary>
            Tries to parse a collection of function parameters for path.
            </summary>
            <param name="parenthesisExpression">The contents of the parentheses portion of the current path segment.</param>
            <param name="configuration">The ODataUriParserConfiguration to create a UriQueryExpressionParser.</param>
            <param name="splitParameters">The parameters if they were successfully split.</param>
            <returns>Whether the parameters could be split.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.FunctionParameterParser.TrySplitOperationParameters(Microsoft.OData.UriParser.UriQueryExpressionParser,Microsoft.OData.UriParser.ExpressionTokenKind,System.Collections.Generic.ICollection{Microsoft.OData.UriParser.FunctionParameterToken}@)">
            <summary>
            Tries to parse a collection of function parameters. Allows path and filter to share the core algorithm while representing parameters differently.
            </summary>
            <param name="parser">The UriQueryExpressionParser to read from.</param>
            <param name="endTokenKind">The token kind that marks the end of the parameters.</param>
            <param name="splitParameters">The parameters if they were successfully split.</param>
            <returns>Whether the parameters could be split.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.IdentifierTokenizer">
            <summary>
            Class that knows how to parse an identifier using an ExpressionLexer that is appropriately positioned.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.IdentifierTokenizer.lexer">
            <summary>
            Reference to the lexer.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.IdentifierTokenizer.parameters">
            <summary>
            parameters from the expression parser
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.IdentifierTokenizer.functionCallParser">
            <summary>
            Object to handle the parsing of things that look like function calls.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.IdentifierTokenizer.#ctor(System.Collections.Generic.HashSet{System.String},Microsoft.OData.UriParser.IFunctionCallParser)">
            <summary>
            Parse an Identifier into the right QueryToken
            </summary>
            <param name="parameters">parameters passed in to the UriQueryExpressionParser</param>
            <param name="functionCallParser">Object to use to handle parsing function calls.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.IdentifierTokenizer.ParseIdentifier(Microsoft.OData.UriParser.QueryToken)">
            <summary>
            Parses identifiers.
            </summary>
            <param name="parent">the syntactically bound parent of this identifier.</param>
            <returns>The lexical token representing the expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.IdentifierTokenizer.ParseMemberAccess(Microsoft.OData.UriParser.QueryToken)">
            <summary>
            Parses member access.
            </summary>
            <param name="instance">Instance being accessed.</param>
            <returns>The lexical token representing the expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.IdentifierTokenizer.ParseStarMemberAccess(Microsoft.OData.UriParser.QueryToken)">
            <summary>
            Parses * (all member) access at the beginning of a select expression.
            </summary>
            <param name="instance">Instance being accessed.</param>
            <returns>The lexical token representing the expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.IdentifierTokenizer.ParseError(System.String)">
            <summary>Creates an exception for a parse error.</summary>
            <param name="message">Message text.</param>
            <returns>A new Exception.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.IFunctionCallParser">
            <summary>
            Interface for a class that can parse an identifier as a function and return a representitive QueryToken.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.IFunctionCallParser.Lexer">
            <summary>
            Reference to the lexer.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.IFunctionCallParser.TryParseIdentifierAsFunction(Microsoft.OData.UriParser.QueryToken,Microsoft.OData.UriParser.QueryToken@)">
            <summary>
            Parses an identifier that represents a function.
            </summary>
            <param name="parent">the syntactically bound parent of this identifier.</param>
            <param name="result">QueryToken representing this function.</param>
            <returns>True if the parsing was successful.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.IUriLiteralParser">
            <summary>
            Interface for Uri literal parser.
            To parse the uri of an OData request into objects, the ODataUriParser uses UriLiteralParses.
            Implementation of this interface will parse a text of an EdmType to it's instance.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.IUriLiteralParser.ParseUriStringToType(System.String,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.UriParser.UriLiteralParsingException@)">
            <summary>
            Parse the given text of EdmType <paramref name="targetType"/> to it's object instance.
            Return 'Null' if the text could not be parsed to the requested <paramref name="targetType"/>.
            Assign <paramref name="parsingException"/> paramter only in case the text could be parsed to the requested <paramref name="targetType"/>, but failed during the parsing proccess.
            </summary>
            <param name="text">Part of the uri which has to be parsed to a value of EdmType <paramref name="targetType"/></param>
            <param name="targetType">The type which the uri text has to be parsed to</param>
            <param name="parsingException">Assign the exception only in case the text could be parsed to the <paramref name="targetType"/> but failed during the parsing process</param>
            <returns>If the parsing proceess has succeeded, returns the parsed object, otherwise returns 'Null'</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.KeyFinder">
            <summary>
            Find the key from a previous key segment and use it to construct the current key
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.KeyFinder.FindAndUseKeysFromRelatedSegment(Microsoft.OData.UriParser.SegmentArgumentParser,System.Collections.Generic.IEnumerable{Microsoft.OData.Edm.IEdmStructuralProperty},Microsoft.OData.Edm.IEdmNavigationProperty,Microsoft.OData.UriParser.KeySegment)">
            <summary>
            Find any related keys from the parent key segment, if it exists, and add them to the raw key values that
            we already have from the uri.
            </summary>
            <param name="rawKeyValuesFromUri">The raw key values as we've parsed them from the uri.</param>
            <param name="targetEntityKeyProperties">The list of key properties on the target entity.</param>
            <param name="currentNavigationProperty">The current navigation property that we're trying to follow using the raw key values</param>
            <param name="keySegmentOfParentEntity">The key segment of the parent entity in this path, if it exists. Null otherwise</param>
            <returns>A new SegmentArgumentParser with any keys that were found added to its list of NamedValues.</returns>
            <throws>Thorws if the input currentNavigationProperty is null.</throws>
        </member>
        <member name="M:Microsoft.OData.UriParser.KeyFinder.ExtractMatchingPropertyPairsFromNavProp(Microsoft.OData.Edm.IEdmNavigationProperty,System.Collections.Generic.IEnumerable{Microsoft.OData.Edm.IEdmStructuralProperty})">
            <summary>
            Find any referential constraint property pairs in a given nav prop that match any of the provided key properties.
            </summary>
            <param name="currentNavigationProperty">The navigation property to search</param>
            <param name="targetKeyPropertyList">The list of key properties that we're searching for</param>
            <returns>All referential constraint property pairs that match the list of target key properties.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.KeyFinder.ExtractMatchingPropertyPairsFromReversedNavProp(Microsoft.OData.Edm.IEdmNavigationProperty,System.Collections.Generic.IEnumerable{Microsoft.OData.Edm.IEdmStructuralProperty})">
            <summary>
            Find any referential constraint property pairs in a given reversed nav prop that match any of the provided key properties.
            </summary>
            <param name="currentNavigationProperty">The navigation property to search</param>
            <param name="targetKeyPropertyList">The list of key properties that we're searching for</param>
            <returns>All referential constraint property pairs that match the list of target key properties.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.KeyFinder.ConvertKeyValueToUriLiteral(System.Object,System.Boolean)">
            <summary>
            Convert the given key value to a URI literal.
            </summary>
            <param name="value">The key value to convert.</param>
            <param name="keyAsSegment">Whether the KeyAsSegment convention is enabled.</param>
            <returns>The converted URI literal for the given key value.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.LiteralParser">
            <summary>Use this class to parse literals from keys, etags, skiptokens, and filter/orderby expression constants.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.LiteralParser.DefaultInstance">
            <summary>
            Default singleton instance of the literal parser.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.LiteralParser.KeysAsSegmentsInstance">
            <summary>
            Singleton instance of the literal parser for when keys-as-segments is turned on, which does not wrap the formatted strings in any quotes or type-markers.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.LiteralParser.Parsers">
            <summary>
            Mapping between primitive CLR types and lightweight parser classes for that type.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.LiteralParser.ForETags">
            <summary>
            Gets the literal parser to use for ETags.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.ForKeys(System.Boolean)">
            <summary>
            Gets the literal parser for keys, based on whether the keys are formatted as segments.
            </summary>
            <param name="keyAsSegment">Whether or not the keys is formatted as a segment.</param>
            <returns>The literal parser to use.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.TryParseLiteral(System.Type,System.String,System.Object@)">
            <summary>Converts a string to a primitive value.</summary>
            <param name="targetType">Type to convert string to.</param>
            <param name="text">String text to convert.</param>
            <param name="result">After invocation, converted value.</param>
            <returns>true if the value was converted; false otherwise.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.LiteralParser.DefaultLiteralParser">
            <summary>
            Default literal parser which has type-markers and single-quotes. Also supports arbitrary literals being re-encoded in binary form.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.DefaultLiteralParser.TryParseLiteral(System.Type,System.String,System.Object@)">
            <summary>Converts a string to a primitive value.</summary>
            <param name="targetType">Type to convert string to.</param>
            <param name="text">String text to convert.</param>
            <param name="result">After invocation, converted value.</param>
            <returns>true if the value was converted; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.DefaultLiteralParser.TryRemoveFormattingAndConvert(System.String,System.Type,System.Object@)">
            <summary>
            Tries to parse the literal by first removing required formatting for the expected type, then converting the resulting string.
            </summary>
            <param name="text">String text to convert.</param>
            <param name="targetType">Type to convert string to.</param>
            <param name="targetValue">After invocation, converted value.</param>
            <returns>true if the value was converted; false otherwise.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.LiteralParser.KeysAsSegmentsLiteralParser">
            <summary>
            Simplified literal parser for keys-as-segments which does not expect type-markers, single-quotes, etc. Does not support re-encoding literals as binary.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.KeysAsSegmentsLiteralParser.TryParseLiteral(System.Type,System.String,System.Object@)">
            <summary>Converts a string to a primitive value.</summary>
            <param name="targetType">Type to convert string to.</param>
            <param name="text">String text to convert.</param>
            <param name="result">After invocation, converted value.</param>
            <returns>true if the value was converted; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.KeysAsSegmentsLiteralParser.UnescapeLeadingDollarSign(System.String)">
            <summary>
            If the string starts with '$', removes it.
            Also asserts that the 2nd character is also '$', as otherwise the string would be treated as a system segment.
            </summary>
            <param name="text">The text.</param>
            <returns>The string value with a leading '$' removed, if the string started with one.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.LiteralParser.PrimitiveParser">
            <summary>
            Helper class for parsing a specific type of primitive literal.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.LiteralParser.PrimitiveParser.XmlWhitespaceChars">
            <summary>XML whitespace characters to trim around literals.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.LiteralParser.PrimitiveParser.prefix">
            <summary>
            The expected prefix for the literal. Null indicates no prefix is expected.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.LiteralParser.PrimitiveParser.suffix">
            <summary>
            The expected suffix for the literal. Null indicates that no suffix is expected.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.LiteralParser.PrimitiveParser.suffixRequired">
            <summary>
            Whether or not the suffix is required.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.LiteralParser.PrimitiveParser.expectedType">
            <summary>
            The expected type for this parser.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.PrimitiveParser.#ctor(System.Type,System.String,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.OData.UriParser.LiteralParser.PrimitiveParser"/> class.
            </summary>
            <param name="expectedType">The expected type for this parser.</param>
            <param name="suffix">The expected suffix for the literal. Null indicates that no suffix is expected.</param>
            <param name="suffixRequired">Whether or not the suffix is required.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.PrimitiveParser.#ctor(System.Type,System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.OData.UriParser.LiteralParser.PrimitiveParser"/> class.
            </summary>
            <param name="expectedType">The expected type for this parser.</param>
            <param name="prefix">The expected prefix for the literal.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.PrimitiveParser.#ctor(System.Type)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.OData.UriParser.LiteralParser.PrimitiveParser"/> class.
            </summary>
            <param name="expectedType">The expected type for this parser.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.PrimitiveParser.TryConvert(System.String,System.Object@)">
            <summary>
            Tries to convert the given text into this parser's expected type. Conversion only, formatting should already have been removed.
            </summary>
            <param name="text">The text to convert.</param>
            <param name="targetValue">The target value.</param>
            <returns>Whether or not conversion was successful.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.PrimitiveParser.TryRemoveFormatting(System.String@)">
            <summary>
            Tries to remove formatting specific to this parser's expected type.
            </summary>
            <param name="text">The text to remove formatting from.</param>
            <returns>Whether or not the expected formatting was found and succesfully removed.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.PrimitiveParser.TryRemoveLiteralSuffix(System.String,System.String@)">
            <summary>
            Check and strip the input <paramref name="text"/> for literal <paramref name="suffix"/>
            </summary>
            <param name="suffix">The suffix value</param>
            <param name="text">The string to check</param>
            <returns>A string that has been striped of the suffix</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.PrimitiveParser.ValueOfTypeCanContainQuotes(System.Type)">
            <summary>
            Determines whether the values for the specified types should be
            quoted in URI keys.
            </summary>
            <param name='type'>Type to check.</param>
            <returns>
            true if values of <paramref name='type' /> require quotes; false otherwise.
            </returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.PrimitiveParser.IsValidNumericConstant(System.String)">
            <summary>
            Checks if text is '-INF' or 'INF' or 'NaN'.
            </summary>
            <param name="text">numeric string</param>
            <returns>true or false</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.LiteralParser.DelegatingPrimitiveParser`1">
            <summary>
            Primitive parser which uses a delegate for conversion.
            </summary>
            <typeparam name="T">The expected CLR type when parsing.</typeparam>
        </member>
        <member name="F:Microsoft.OData.UriParser.LiteralParser.DelegatingPrimitiveParser`1.convertMethod">
            <summary>
            The delegate to use for conversion.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.DelegatingPrimitiveParser`1.#ctor(System.Func{System.String,`0},System.String,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.OData.UriParser.LiteralParser.DelegatingPrimitiveParser`1"/> class.
            </summary>
            <param name="convertMethod">The delegate to use for conversion.</param>
            <param name="suffix">The expected suffix for the literal. Null indicates that no suffix is expected.</param>
            <param name="suffixRequired">Whether or not the suffix is required.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.DelegatingPrimitiveParser`1.#ctor(System.Func{System.String,`0})">
            <summary>
            Prevents a default instance of the <see cref="T:Microsoft.OData.UriParser.LiteralParser.DelegatingPrimitiveParser`1"/> class from being created.
            </summary>
            <param name="convertMethod">The delegate to use for conversion.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.DelegatingPrimitiveParser`1.#ctor(System.Func{System.String,`0},System.String)">
            <summary>
            Prevents a default instance of the <see cref="T:Microsoft.OData.UriParser.LiteralParser.DelegatingPrimitiveParser`1"/> class from being created.
            </summary>
            <param name="convertMethod">The delegate to use for conversion.</param>
            <param name="prefix">The expected prefix for the literal.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.DelegatingPrimitiveParser`1.WithoutMarkup(System.Func{System.String,`0})">
            <summary>
            Creates a primitive parser which wraps the given delegate and does not expect any extra markup in serialized literal.
            </summary>
            <param name="convertMethod">The delegate to use for conversion.</param>
            <returns>A new primitive parser.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.DelegatingPrimitiveParser`1.WithPrefix(System.Func{System.String,`0},System.String)">
            <summary>
            Creates a primitive parser which wraps the given delegate and expects serialized literals to start with one of the given prefixes.
            </summary>
            <param name="convertMethod">The delegate to use for conversion.</param>
            <param name="prefix">The expected prefix for the literal.</param>
            <returns>A new primitive parser.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.DelegatingPrimitiveParser`1.WithSuffix(System.Func{System.String,`0},System.String)">
            <summary>
            Creates a primitive parser which wraps the given delegate and expects serialized literals to end with the given suffix.
            </summary>
            <param name="convertMethod">The delegate to use for conversion.</param>
            <param name="suffix">The expected suffix for the literal. Null indicates that no suffix is expected.</param>
            <returns>A new primitive parser.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.DelegatingPrimitiveParser`1.WithSuffix(System.Func{System.String,`0},System.String,System.Boolean)">
            <summary>
            Creates a primitive parser which wraps the given delegate and expects serialized literals to end with the given suffix.
            </summary>
            <param name="convertMethod">The delegate to use for conversion.</param>
            <param name="suffix">The expected suffix for the literal. Null indicates that no suffix is expected.</param>
            <param name="required">Whether or not the suffix is required.</param>
            <returns>A new primitive parser.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.DelegatingPrimitiveParser`1.TryConvert(System.String,System.Object@)">
            <summary>
            Tries to convert the given text into this parser's expected type. Conversion only, formatting should already have been removed.
            </summary>
            <param name="text">The text to convert.</param>
            <param name="targetValue">The target value.</param>
            <returns>
            Whether or not conversion was successful.
            </returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.LiteralParser.DecimalPrimitiveParser">
            <summary>
            Parser specific to the Edm.Decimal type.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.DecimalPrimitiveParser.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.OData.UriParser.LiteralParser.DecimalPrimitiveParser"/> class.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.DecimalPrimitiveParser.ConvertDecimal(System.String)">
            <summary>
            Special helper to convert a string to a decimal that will allow more than what XmlConvert.ToDecimal supports by default.
            </summary>
            <param name="text">The text to convert.</param>
            <returns>The converted decimal value.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.LiteralParser.BinaryPrimitiveParser">
            <summary>
            Parser specific to the Edm.Binary type.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.BinaryPrimitiveParser.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.OData.UriParser.LiteralParser.BinaryPrimitiveParser"/> class.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.BinaryPrimitiveParser.TryConvert(System.String,System.Object@)">
            <summary>
            Tries to convert the given text into this parser's expected type. Conversion only, formatting should already have been removed.
            </summary>
            <param name="text">The text to convert.</param>
            <param name="targetValue">The target value.</param>
            <returns>
            Whether or not conversion was successful.
            </returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.BinaryPrimitiveParser.TryRemoveFormatting(System.String@)">
            <summary>
            Tries to remove formatting specific to this parser's expected type.
            </summary>
            <param name="text">The text to remove formatting from.</param>
            <returns>
            Whether or not the expected formatting was found and succesfully removed.
            </returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.LiteralParser.StringPrimitiveParser">
            <summary>
            Parser specific to the Edm.String type.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.StringPrimitiveParser.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.OData.UriParser.LiteralParser.StringPrimitiveParser"/> class.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.StringPrimitiveParser.TryConvert(System.String,System.Object@)">
            <summary>
            Tries to convert the given text into this parser's expected type. Conversion only, formatting should already have been removed.
            </summary>
            <param name="text">The text to convert.</param>
            <param name="targetValue">The target value.</param>
            <returns>
            Whether or not conversion was successful.
            </returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.StringPrimitiveParser.TryRemoveFormatting(System.String@)">
            <summary>
            Tries to remove formatting specific to this parser's expected type.
            </summary>
            <param name="text">The text to remove formatting from.</param>
            <returns>
            Whether or not the expected formatting was found and succesfully removed.
            </returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.LiteralParser.DatePrimitiveParser">
            <summary>
            Parser specific to the Edm.Date type.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.DatePrimitiveParser.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.OData.UriParser.LiteralParser.DatePrimitiveParser"/> class.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.LiteralParser.DatePrimitiveParser.TryConvert(System.String,System.Object@)">
            <summary>
            Tries to convert the given text into this parser's expected type. Conversion only, formatting should already have been removed.
            </summary>
            <param name="text">The text to convert.</param>
            <param name="targetValue">The target value.</param>
            <returns>
            Whether or not conversion was successful.
            </returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.NodeFactory">
            <summary>
            Factory class to build IParameterQueryNodes.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.NodeFactory.CreateImplicitRangeVariable(Microsoft.OData.UriParser.ODataPath)">
            <summary>
            Creates a <see cref="T:Microsoft.OData.UriParser.RangeVariable"/> for an implicit parameter ($it) from an <see cref="T:Microsoft.OData.UriParser.ODataPath"/>.
            </summary>
            <param name="path"><see cref="T:Microsoft.OData.UriParser.ODataPath"/> that the range variable is iterating over.</param>
            <returns>A new <see cref="T:Microsoft.OData.UriParser.RangeVariable"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.NodeFactory.CreateImplicitRangeVariable(Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.Edm.IEdmNavigationSource)">
            <summary>
            Creates a ParameterQueryNode for an implicit parameter ($it).
            </summary>
            <param name="elementType">Element type the parameter represents.</param>
            <param name="navigationSource">The navigation source. May be null and must be null for non structured types.</param>
            <returns>A new IParameterNode.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.NodeFactory.CreateRangeVariableReferenceNode(Microsoft.OData.UriParser.RangeVariable)">
            <summary>
            Creates a RangeVariableReferenceNode for a given range variable
            </summary>
            <param name="rangeVariable">Name of the rangeVariable.</param>
            <returns>A new SingleValueNode (either a Resource or NonResource RangeVariableReferenceNode.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.NodeFactory.CreateParameterNode(System.String,Microsoft.OData.UriParser.CollectionNode)">
            <summary>
            Creates a ParameterQueryNode for an explicit parameter.
            </summary>
            <param name="parameter">Name of the parameter.</param>
            <param name="nodeToIterateOver">CollectionNode that the parameter is iterating over.</param>
            <returns>A new RangeVariable.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.NodeFactory.CreateLambdaNode(Microsoft.OData.UriParser.BindingState,Microsoft.OData.UriParser.CollectionNode,Microsoft.OData.UriParser.SingleValueNode,Microsoft.OData.UriParser.RangeVariable,Microsoft.OData.UriParser.QueryTokenKind)">
            <summary>
            Creates an AnyNode or an AllNode from the given
            </summary>
            <param name="state">State of binding.</param>
            <param name="parent">Parent node to the lambda.</param>
            <param name="lambdaExpression">Bound Lambda expression.</param>
            <param name="newRangeVariable">The new range variable being added by this lambda node.</param>
            <param name="queryTokenKind">Token kind.</param>
            <returns>A new LambdaNode bound to metadata.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.ODataPathFactory">
            <summary>Translates from an IPathSegment into an ODataPath</summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathFactory.BindPath(System.Collections.Generic.ICollection{System.String},Microsoft.OData.UriParser.ODataUriParserConfiguration)">
            <summary>
            Binds a collection of <paramref name="segments"/> to metadata, creating a semantic ODataPath object.
            </summary>
            <param name="segments">Collection of path segments.</param>
            <param name="configuration">The configuration to use when binding the path.</param>
            <returns>A semantic <see cref="T:Microsoft.OData.UriParser.ODataPath"/> object to describe the path.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.ODataPathParser">
            <summary>
            Semantic parser for the path of the request URI.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataPathParser.ContentIdRegex">
            <summary>
            regex pattern to match a contentID
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataPathParser.EmptyList">
            <summary>Empty list of strings.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataPathParser.segmentQueue">
            <summary>
            The queue of segments remaining to be parsed. Should be populated and cleared out on each pass through the main path parsing loop.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataPathParser.parsedSegments">
            <summary>
            The collection of segments that have been parsed so far.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataPathParser.configuration">
            <summary>
            The parser's current configuration.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataPathParser.nextSegmentMustReferToMetadata">
            <summary>
            Indicates that the next segment encountered must refer to something in 'metadata-space' and cannot be a key expression.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.#ctor(Microsoft.OData.UriParser.ODataUriParserConfiguration)">
            <summary>
            Initializes a new instance of <see cref="T:Microsoft.OData.UriParser.ODataPathParser"/>.
            </summary>
            <param name="configuration">The parser's current configuration.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.ExtractSegmentIdentifierAndParenthesisExpression(System.String,System.String@,System.String@)">
            <summary>
            Extracts the segment identifier and, if there are parenthesis in the segment, the expression in the parenthesis.
            Will throw if identifier is not found or if the parenthesis expression is malformed.
            </summary>
            <remarks>Internal only so it can be called from tests. Should not be used outside <see cref="T:Microsoft.OData.UriParser.ODataPathParser"/>.</remarks>
            <param name="segmentText">The segment text.</param>
            <param name="identifier">The identifier that was found.</param>
            <param name="parenthesisExpression">The query portion that was found. Will be null after the call if no query portion was present.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.ParsePath(System.Collections.Generic.ICollection{System.String})">
            <summary>Creates an <see cref="T:Microsoft.OData.UriParser.ODataPathSegment"/> array for the given <paramref name="segments"/>.</summary>
            <param name="segments">Segments to process.</param>
            <returns>Segment information describing the given <paramref name="segments"/>.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.TryBindingParametersAndMatchingOperationImport(System.String,System.String,Microsoft.OData.UriParser.ODataUriParserConfiguration,System.Collections.Generic.ICollection{Microsoft.OData.UriParser.OperationSegmentParameter}@,Microsoft.OData.Edm.IEdmOperationImport@)">
            <summary>
            Tries to find a single matching operation import for the given identifier, and parameters.
            </summary>
            <param name="identifier">The identifier from the URI.</param>
            <param name="parenthesisExpression">The parenthesis expression contianing parameters, if any.</param>
            <param name="configuration">The configuration of the parser.</param>
            <param name="boundParameters">The parsed parameters from the parenthesis expression.</param>
            <param name="matchingFunctionImport">The single matching operation import if one could be determined.</param>
            <returns>Whether or not a matching operation import could be found.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.TryBindingParametersAndMatchingOperation(System.String,System.String,Microsoft.OData.Edm.IEdmType,Microsoft.OData.UriParser.ODataUriParserConfiguration,System.Collections.Generic.ICollection{Microsoft.OData.UriParser.OperationSegmentParameter}@,Microsoft.OData.Edm.IEdmOperation@)">
            <summary>
            Tries to find a single matching operation import for the given identifier, parametes, and binding type.
            </summary>
            <param name="identifier">The identifier from the URI.</param>
            <param name="parenthesisExpression">The parenthesis expression contianing parameters, if any.</param>
            <param name="bindingType">The current binding type or null if there isn't one.</param>
            <param name="configuration">The configuration of the parser.</param>
            <param name="boundParameters">The parsed parameters from the parenthesis expression.</param>
            <param name="matchingOperation">The single matching operation import if one could be determined.</param>
            <returns>Whether or not a matching operation import could be found.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.CheckSingleResult(System.Boolean,System.String)">
            <summary>
            Checks for single result, otherwise throws.
            </summary>
            <param name="isSingleResult">indicates whether the current result is single result or not.</param>
            <param name="identifier">current segment identifier.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.TryGetNextSegmentText(System.String@)">
            <summary>
            Tries to get the next segment's text to parse.
            </summary>
            <param name="segmentText">The segment text to parse.</param>
            <returns>Whether there was a next segment.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.TryGetNextSegmentText(System.Boolean,System.String@)">
            <summary>
            Tries to get the next segment's text to parse. Should not be called except by the other overload which does not have the extra parameter.
            </summary>
            <param name="previousSegmentWasEscapeMarker">Whether the previous segment was an escape marker.</param>
            <param name="segmentText">The segment text to parse.</param>
            <returns>Whether there was a next segment.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.TryHandleAsKeySegment(System.String)">
            <summary>
            Tries to handle the given text as a key if the URL conventions support it and it was not preceeded by an escape segment.
            </summary>
            <param name="segmentText">The text which might be a key.</param>
            <returns>Whether or not the text was handled as a key.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.FindPreviousKeySegment">
            <summary>
            Find the ParentNode's key segment
            </summary>
            <returns>The parent nodes key segment.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.ThrowIfMustBeLeafSegment(Microsoft.OData.UriParser.ODataPathSegment)">
            <summary>
            Throws if the given segment must be a leaf, as a later segment is being created.
            </summary>
            <param name="previous">The previous segment which may need to be a leaf.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.TryCreateCountSegment(System.String)">
            <summary>
            Try to handle the segment as $count.
            </summary>
            <param name="segmentText">The segment text to handle.</param>
            <returns>Whether the segment was $count.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.TryCreateEntityReferenceSegment(System.String)">
            <summary>
            Tries to handle the segment as $ref. If it is $ref, then the rest of the path will be parsed/validated in this call.
            </summary>
            <param name="text">The text of the segment.</param>
            <returns>Whether the text was $ref.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.TryBindKeyFromParentheses(System.String)">
            <summary>
            Tries to bind a key from the parenthetical section of a segment.
            </summary>
            <param name="parenthesesSection">The section of the segment inside parentheses, or null if there was none.</param>
            <returns>Returns True if a key segment was found and added from the paratheses section otherwise false.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.TryCreateValueSegment(System.String)">
            <summary>
            Try to handle the segment as $value.
            </summary>
            <param name="text">The segment text.</param>
            <returns>Whether the segment was $value.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.CreateDynamicPathSegment(Microsoft.OData.UriParser.ODataPathSegment,System.String,System.String)">
            <summary>
            Creates a new segment for an unknown path segment or an open property.
            </summary>
            <param name="previous">previous segment info.</param>
            <param name="identifier">name of the segment.</param>
            <param name="parenthesisExpression">whether this segment has a query portion or not.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.CreateNamedStreamSegment(Microsoft.OData.UriParser.ODataPathSegment,Microsoft.OData.Edm.IEdmProperty)">
            <summary>
            Creates a named stream segment
            </summary>
            <param name="previous">previous segment info.</param>
            <param name="streamProperty">stream property to create the segment for.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.CreateFirstSegment(System.String)">
            <summary>Creates the first <see cref="T:Microsoft.OData.UriParser.ODataPathSegment"/> for a request.</summary>
            <param name="segmentText">The text of the segment.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.TryCreateSegmentForNavigationSource(System.String,System.String)">
            <summary>
            Tries to parse a segment as an entity set or singleton.
            </summary>
            <param name="identifier">The name of the segment</param>
            <param name="parenthesisExpression">The parenthesis expression</param>
            <returns>Whether or not the identifier referred to an entity set or singleton.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.TryCreateSegmentForOperationImport(System.String,System.String)">
            <summary>
            Tries to parse a segment as a functionImport or actionImport.
            </summary>
            <param name="identifier">The name of the segment</param>
            <param name="parenthesisExpression">The query portion</param>
            <returns>Whether or not the identifier referred to an action.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.TryBindKeySegmentIfNoResolvedParametersAndParathesisValueExsts(System.String,Microsoft.OData.Edm.IEdmTypeReference,System.Collections.Generic.ICollection{Microsoft.OData.UriParser.OperationSegmentParameter},Microsoft.OData.UriParser.ODataPathSegment)">
            <summary>
            Tries the bind key segment if no resolved parameters and parathesis value exsts.
            </summary>
            <param name="parenthesisExpression">The parenthesis expression.</param>
            <param name="returnType">Type of the return.</param>
            <param name="resolvedParameters">The resolved parameters.</param>
            <param name="segment">The segment.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.TryCreateSegmentForOperation(Microsoft.OData.UriParser.ODataPathSegment,System.String,System.String)">
            <summary>
            Tries to parse a segment as a function or action.
            </summary>
            <param name="previousSegment">The previous segment before the operation to be invoked.</param>
            <param name="identifier">The name of the segment</param>
            <param name="parenthesisExpression">The query portion</param>
            <returns>Whether or not the identifier referred to an action.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.CreateNextSegment(System.String)">
            <summary>
            Creates the next segment.
            </summary>
            <param name="text">The text for the next segment.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.TryBindProperty(System.String,Microsoft.OData.Edm.IEdmProperty@)">
            <summary>
            Tries to bind the identifier as a property.
            </summary>
            <param name="identifier">The identifier to bind.</param>
            <param name="projectedProperty">The property, if one was found.</param>
            <returns>Whether a property matching the identifier was found.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.TryCreateTypeNameSegment(Microsoft.OData.UriParser.ODataPathSegment,System.String,System.String)">
            <summary>
            Tries to create a type name segment if the given identifier refers to a known type.
            </summary>
            <param name="previous">previous segment info.</param>
            <param name="identifier">The current raw segment identifier being interpreted.</param>
            <param name="parenthesisExpression">Parenthesis expression of this segment.</param>
            <returns>Whether or not a type segment was created for the identifier.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.CreatePropertySegment(Microsoft.OData.UriParser.ODataPathSegment,Microsoft.OData.Edm.IEdmProperty,System.String)">
            <summary>
            Creates a property segment
            </summary>
            <param name="previous">previous segment info.</param>
            <param name="property">property to create the segment for.</param>
            <param name="queryPortion">query portion for this segment, if specified.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataPathParser.IdentifierIs(System.String,System.String)">
            <summary>
            Check whether identifiers matches according to case in sensitive option.
            </summary>
            <param name="expected">The expected identifer.</param>
            <param name="identifier">Identifier to be evaluated.</param>
            <returns>Whether the identifier matches.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.PathParserModelUtils">
            <summary>
            Set of helpers and extensions to make it easier to convert the semantic path parser
            to using <see cref="T:Microsoft.OData.Edm.IEdmType"/> and the related classes.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.PathParserModelUtils.GetTargetEntitySet(Microsoft.OData.Edm.IEdmOperationImport,Microsoft.OData.Edm.IEdmEntitySetBase,Microsoft.OData.Edm.IEdmModel)">
            <summary>
            Gets the target entity set for the given operation import.
            </summary>
            <param name="operationImport">The operation import.</param>
            <param name="sourceEntitySet">The source entity set.</param>
            <param name="model">The model.</param>
            <returns>The target entity set of the operation import or null if it could not be determined.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.PathParserModelUtils.GetTargetEntitySet(Microsoft.OData.Edm.IEdmOperation,Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmModel)">
            <summary>
            Gets the target entity set for the given operation import.
            </summary>
            <param name="operation">The operation.</param>
            <param name="source">The source of operation.</param>
            <param name="model">The model.</param>
            <returns>The target entity set of the operation import or null if it could not be determined.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.PathParserModelUtils.GetTargetKindFromType(Microsoft.OData.Edm.IEdmType)">
            <summary>Determines a matching target kind from the specified type.</summary>
            <param name="type">ResourceType of element to get kind for.</param>
            <returns>An appropriate <see cref="T:Microsoft.OData.UriParser.RequestTargetKind"/> for the specified <paramref name="type"/>.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.PathReverser">
            <summary>
            Reverse a Path
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.PathReverser.childToken">
            <summary>
            any children of the root, will always be null on first call
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.PathReverser.#ctor">
            <summary>
            Build a PathReverser at the top level (with no child token)
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.PathReverser.#ctor(Microsoft.OData.UriParser.PathSegmentToken)">
            <summary>
            Build a PathReverser based on a child token.
            </summary>
            <param name="childToken">the new child of this token</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.PathReverser.Visit(Microsoft.OData.UriParser.NonSystemToken)">
            <summary>
            Reverse a NonSystemToken
            </summary>
            <param name="tokenIn">the non system token to reverse</param>
            <returns>the reversed NonSystemToken</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.PathReverser.Visit(Microsoft.OData.UriParser.SystemToken)">
            <summary>
            Reverse a SystemToken
            </summary>
            <param name="tokenIn">the SystemToken to reverse</param>
            <returns>the reversed SystemToken</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.PathReverser.BuildNextStep(Microsoft.OData.UriParser.PathSegmentToken,Microsoft.OData.UriParser.PathSegmentToken)">
            <summary>
            Build the next level PathReverser
            </summary>
            <param name="nextLevelToken">the next level token</param>
            <param name="nextChildToken">the next levels child token</param>
            <returns>the path token from the next level.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.SearchParser">
            <summary>
            Parser which consumes the $search expression and produces the lexical object model.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SearchParser.maxDepth">
            <summary>
            The maximum number of recursion nesting allowed.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SearchParser.recursionDepth">
            <summary>
            The current recursion depth.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SearchParser.lexer">
            <summary>
            The lexer being used for the parsing.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.SearchParser.#ctor(System.Int32)">
            <summary>
            Constructor.
            </summary>
            <param name="maxDepth">The maximum depth of each part of the query - a recursion limit.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.SearchParser.ParseSearch(System.String)">
            <summary>
            Parse expression text into Token.
            </summary>
            <param name="expressionText">The expression string to Parse.</param>
            <returns>The lexical token representing the expression text.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SearchParser.ParseError(System.String)">
            <summary>Creates an exception for a parse error.</summary>
            <param name="message">Message text.</param>
            <returns>A new Exception.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SearchParser.ParseExpression">
            <summary>
            Parses the expression.
            </summary>
            <returns>The lexical token representing the expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SearchParser.ParseLogicalOr">
            <summary>
            Parses the or operator.
            </summary>
            <returns>The lexical token representing the expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SearchParser.ParseLogicalAnd">
            <summary>
            Parses the and operator.
            </summary>
            <returns>The lexical token representing the expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SearchParser.ParseUnary">
            <summary>
            Parses the -, not unary operators.
            </summary>
            <returns>The lexical token representing the expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SearchParser.ParsePrimary">
            <summary>
            Parses the primary expressions.
            </summary>
            <returns>The lexical token representing the expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SearchParser.ParseParenExpression">
            <summary>
            Parses parenthesized expressions.
            </summary>
            <returns>The lexical token representing the expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SearchParser.TokenIdentifierIs(System.String)">
            <summary>
            Checks that the current token has the specified identifier.
            </summary>
            <param name="id">Identifier to check.</param>
            <returns>true if the current token is an identifier with the specified text.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SearchParser.RecurseEnter">
            <summary>
            Marks the fact that a recursive method was entered, and checks that the depth is allowed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.SearchParser.RecurseLeave">
            <summary>
            Marks the fact that a recursive method is leaving.
            </summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.SegmentArgumentParser">
            <summary>Provides a class used to represent a key for a resource.</summary>
            <remarks>
            Internally, every key instance has a collection of values. These values
            can be named or positional, depending on how they were specified
            if parsed from a URI.
            </remarks>
        </member>
        <member name="F:Microsoft.OData.UriParser.SegmentArgumentParser.Empty">
            <summary>Empty key singleton.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SegmentArgumentParser.keysAsSegment">
            <summary>Whether or not the key was formatted as a segment.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SegmentArgumentParser.enableUriTemplateParsing">
            <summary>Whether Uri template parsing is enabled.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SegmentArgumentParser.namedValues">
            <summary>Named values.</summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SegmentArgumentParser.positionalValues">
            <summary>Positional values.</summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.SegmentArgumentParser.#ctor">
            <summary>Initializes a new empty <see cref="T:Microsoft.OData.UriParser.SegmentArgumentParser"/> instance.</summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.SegmentArgumentParser.#ctor(System.Collections.Generic.Dictionary{System.String,System.String},System.Collections.Generic.List{System.String},System.Boolean,System.Boolean)">
            <summary>Initializes a new <see cref="T:Microsoft.OData.UriParser.SegmentArgumentParser"/> instance.</summary>
            <param name='namedValues'>Named values.</param>
            <param name='positionalValues'>Positional values for this instance.</param>
            <param name="keysAsSegment">Whether or not the key was formatted as a segment.</param>
            <param name="enableUriTemplateParsing">Whether Uri template parsing is enabled.</param>
            <remarks>
            One of namedValues or positionalValues should be non-null, but not both.
            </remarks>
        </member>
        <member name="P:Microsoft.OData.UriParser.SegmentArgumentParser.AreValuesNamed">
            <summary>Whether the values have a name.</summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.SegmentArgumentParser.IsEmpty">
            <summary>Checks whether this key has any values.</summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.SegmentArgumentParser.NamedValues">
            <summary>Returns a dictionary of named values when they AreValuesNamed is true.</summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.SegmentArgumentParser.PositionalValues">
            <summary>Returns a list of values when they AreValuesNamed is false.</summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.SegmentArgumentParser.KeyAsSegment">
            <summary>Whether or not the key was formatted as a segment.</summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.SegmentArgumentParser.ValueCount">
            <summary>Number of values in the key.</summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.SegmentArgumentParser.AddNamedValue(System.String,System.String)">
            <summary>
            Add a new value to the named values list.
            </summary>
            <param name="key">the new key</param>
            <param name="value">the new value</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.SegmentArgumentParser.TryParseKeysFromUri(System.String,Microsoft.OData.UriParser.SegmentArgumentParser@,System.Boolean)">
            <summary>Attempts to parse key values from the specified text.</summary>
            <param name='text'>Text to parse (not null).</param>
            <param name='instance'>After invocation, the parsed key instance.</param>
            <param name="enableUriTemplateParsing">Whether Uri template parsing is enabled.</param>
            <returns>
            true if the key instance was parsed; false if there was a
            syntactic error.
            </returns>
            <remarks>
            The returned instance contains only string values. To get typed values, a call to
            TryConvertValues is necessary.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.UriParser.SegmentArgumentParser.FromSegment(System.String,System.Boolean)">
            <summary>
            Creates a key instance from the given raw segment text with a single positional value.
            </summary>
            <param name="segmentText">The segment text.</param>
            <param name="enableUriTemplateParsing">Whether Uri template parsing is enabled.</param>
            <returns>A key instance with the given segment text as its only value.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SegmentArgumentParser.TryParseNullableTokens(System.String,Microsoft.OData.UriParser.SegmentArgumentParser@)">
            <summary>Attempts to parse nullable values (only positional values, no name-value pairs) from the specified text.</summary>
            <param name='text'>Text to parse (not null).</param>
            <param name='instance'>After invocation, the parsed key instance.</param>
            <returns>
            true if the given values were parsed; false if there was a
            syntactic error.
            </returns>
            <remarks>
            The returned instance contains only string values. To get typed values, a call to
            TryConvertValues is necessary.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.UriParser.SegmentArgumentParser.TryConvertValues(Microsoft.OData.Edm.IEdmEntityType,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.Object}}@,Microsoft.OData.UriParser.ODataUriResolver)">
            <summary>Tries to convert values to the keys of the specified type.</summary>
            <param name="targetEntityType">The specified type.</param>
            <param name="keyPairs">The converted key-value pairs.</param>
            <param name="resolver">The resolver to use.</param>
            <returns>true if all values were converted; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SegmentArgumentParser.ConvertValueWrapper(Microsoft.OData.Edm.IEdmTypeReference,System.String)">
            <summary>
            Wrapper for TryConvertValue
            </summary>
            <param name="typeReference">the type to convert to (primitive or enum type)</param>
            <param name="valueText">the value to convert</param>
            <returns>Converted value, null if fails.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SegmentArgumentParser.TryConvertValue(Microsoft.OData.Edm.IEdmTypeReference,System.String,System.Object@)">
            <summary>
            Try to convert a value into an EDM primitive type, if template parsing enabled, the <paramref name="valueText"/> matching
            template would be converted into corresponding UriTemplateExpression.
            </summary>
            <param name="typeReference">the type to convert to (primitive or enum type)</param>
            <param name="valueText">the value to convert</param>
            <param name="convertedValue">The converted value, if conversion succeeded.</param>
            <returns>true if the conversion was successful.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SegmentArgumentParser.TryParseFromUri(System.String,Microsoft.OData.UriParser.SegmentArgumentParser@,System.Boolean)">
            <summary>Attempts to parse key values from the specified text.</summary>
            <param name='text'>Text to parse (not null).</param>
            <param name='instance'>After invocation, the parsed key instance.</param>
            <param name="enableUriTemplateParsing">Whether Uri template parsing is enabled.</param>
            <returns>
            true if the key instance was parsed; false if there was a
            syntactic error.
            </returns>
            <remarks>
            The returned instance contains only string values. To get typed values, a call to
            TryConvertValues is necessary.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.UriParser.SegmentArgumentParser.CreateIfNull``1(``0@)">
            <summary>Creates a new instance if the specified value is null.</summary>
            <typeparam name="T">Type of variable.</typeparam>
            <param name="value">Current value.</param>
        </member>
        <member name="T:Microsoft.OData.UriParser.SegmentKeyHandler">
            <summary>
            Component for handling key expressions in URIs.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.SegmentKeyHandler.TryCreateKeySegmentFromParentheses(Microsoft.OData.UriParser.ODataPathSegment,Microsoft.OData.UriParser.KeySegment,System.String,Microsoft.OData.UriParser.ODataUriResolver,Microsoft.OData.UriParser.ODataPathSegment@,System.Boolean)">
            <summary>Tries to create a key segment for the given filter if it is non empty.</summary>
            <param name="previous">Segment on which to compose.</param>
            <param name="previousKeySegment">The parent node's key segment.</param>
            <param name="parenthesisExpression">Parenthesis expression of segment.</param>
            <param name="resolver">The resolver to use.</param>
            <param name="keySegment">The key segment that was created if the key was non-empty.</param>
            <param name="enableUriTemplateParsing">Whether Uri template parsing is enabled.</param>
            <returns>Whether the key was non-empty.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SegmentKeyHandler.TryHandleSegmentAsKey(System.String,Microsoft.OData.UriParser.ODataPathSegment,Microsoft.OData.UriParser.KeySegment,Microsoft.OData.ODataUrlKeyDelimiter,Microsoft.OData.UriParser.ODataUriResolver,Microsoft.OData.UriParser.KeySegment@,System.Boolean)">
            <summary>
            Tries to handle the current segment as a key property value.
            </summary>
            <param name="segmentText">The segment text.</param>
            <param name="previous">The previous segment.</param>
            <param name="previousKeySegment">The parent node's key segment.</param>
            <param name="odataUrlKeyDelimiter">Key delimiter used in url.</param>
            <param name="resolver">The resolver to use.</param>
            <param name="keySegment">The key segment that was created if the segment could be interpreted as a key.</param>
            <param name="enableUriTemplateParsing">Whether Uri template parsing is enabled.</param>
            <returns>Whether or not the segment was interpreted as a key.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SegmentKeyHandler.IsSystemSegment(System.String)">
            <summary>
            Determines whether the segment text is a system-reserved identifier like $'count'.
            </summary>
            <param name="segmentText">The segment text.</param>
            <returns>
              <c>true</c> if the segment text is a system-reserved identifier like $'count'; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SegmentKeyHandler.CreateKeySegment(Microsoft.OData.UriParser.ODataPathSegment,Microsoft.OData.UriParser.KeySegment,Microsoft.OData.UriParser.SegmentArgumentParser,Microsoft.OData.UriParser.ODataUriResolver)">
            <summary>
            Parses the key properties based on the segment's target type, then creates a new segment for the key.
            </summary>
            <param name="segment">The segment to apply the key to.</param>
            <param name="previousKeySegment">The parent node's key segment.</param>
            <param name="key">The key to apply.</param>
            <param name="resolver">The resolver to use.</param>
            <returns>The newly created key segment.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.SelectExpandParser">
            <summary>
            Object that knows how to parse a select or expand expression. That is, a path to a property,
            a wildcard, operation name, etc, including nested expand options.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SelectExpandParser.resolver">
            <summary>
            The URI resolver which will resolve different kinds of Uri parsing context
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SelectExpandParser.parentEntityType">
            <summary>
            The parent entity type for expand option in case expand option is star, get all parent entity navigation properties, it is an IEdmStructuredType.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SelectExpandParser.maxRecursiveDepth">
            <summary>
            The maximum allowable recursive depth.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SelectExpandParser.enableNoDollarQueryOptions">
            <summary>
            Whether to enable no dollar query options.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SelectExpandParser.enableCaseInsensitiveBuiltinIdentifier">
            <summary>
            Whether to allow case insensitive for builtin identifier.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SelectExpandParser.expandOptionParser">
            <summary>
            Object to handle the parsing of any nested expand options that we discover.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SelectExpandParser.lexer">
            <summary>
            Lexer used to parse an the $select or $expand string.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SelectExpandParser.isSelect">
            <summary>
            True if we are we parsing $select.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandParser.#ctor(System.String,System.Int32,System.Boolean,System.Boolean)">
            <summary>
            Build the SelectOption strategy.
            TODO: Really should not take the clauseToParse here. Instead it should be provided with a call to ParseSelect() or ParseExpand().
            </summary>
            <param name="clauseToParse">the clause to parse</param>
            <param name="maxRecursiveDepth">max recursive depth</param>
            <param name="enableCaseInsensitiveBuiltinIdentifier">Whether to allow case insensitive for builtin identifier.</param>
            <param name="enableNoDollarQueryOptions">Whether to enable no dollar query options.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandParser.#ctor(Microsoft.OData.UriParser.ODataUriResolver,System.String,Microsoft.OData.Edm.IEdmStructuredType,System.Int32,System.Boolean,System.Boolean)">
            <summary>
            Build the ExpandOption strategy (SelectOption build does not need resolover and parentEntityType now).
            </summary>
            <param name="resolver">the URI resolver which will resolve different kinds of Uri parsing context</param>
            <param name="clauseToParse">the clause to parse</param>
            <param name="parentEntityType">the parent entity type for expand option</param>
            <param name="maxRecursiveDepth">max recursive depth</param>
            <param name="enableCaseInsensitiveBuiltinIdentifier">Whether to allow case insensitive for builtin identifier.</param>
            <param name="enableNoDollarQueryOptions">Whether to enable no dollar query options.</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.SelectExpandParser.MaxPathDepth">
            <summary>
            The maximum depth for path nested in $expand.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.SelectExpandParser.MaxFilterDepth">
            <summary>
            The maximum depth for $filter nested in $expand.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.SelectExpandParser.MaxOrderByDepth">
            <summary>
            The maximum depth for $orderby nested in $expand.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.SelectExpandParser.MaxSearchDepth">
            <summary>
            The maximum depth for $search nested in $expand.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandParser.ParseSelect">
            <summary>
            Parses a full $select expression.
            </summary>
            <returns>The lexical token representing the select.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandParser.ParseExpand">
            <summary>
            Parses a full $expand expression.
            </summary>
            <returns>The lexical token representing the select.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandParser.ParseSingleSelectTerm">
            <summary>
            Parses a single term in a comma separated list of things to select.
            </summary>
            <returns>A token representing thing to select.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandParser.ParseSingleExpandTerm">
            <summary>
            Parses a single term in a comma separated list of things to expand.
            </summary>
            <returns>A token list representing thing to expand, the expand option star will have more than one items in the list.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandParser.ParseCommaSeperatedExpandList(System.Func{System.Collections.Generic.IEnumerable{Microsoft.OData.UriParser.ExpandTermToken},Microsoft.OData.UriParser.ExpandToken},System.Func{System.Collections.Generic.List{Microsoft.OData.UriParser.ExpandTermToken}})">
            <summary>
            Parsed a comma separated list of $expand terms.
            </summary>
            <param name="ctor">A method to construct the final token from the term tokens.</param>
            <param name="termParsingFunc">A method to parse each individual term.</param>
            <returns>A token representing the entire $expand clause syntactically.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandParser.ParseCommaSeperatedSelectList(System.Func{System.Collections.Generic.IEnumerable{Microsoft.OData.UriParser.PathSegmentToken},Microsoft.OData.UriParser.SelectToken},System.Func{Microsoft.OData.UriParser.PathSegmentToken})">
            <summary>
            Parsed a comma separated list of $select terms.
            </summary>
            <param name="ctor">A method to construct the final token from the term tokens.</param>
            <param name="termParsingFunc">A method to parse each individual term.</param>
            <returns>A token representing the entire $select clause syntactically.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.SelectExpandSyntacticParser">
            <summary>
            Parse the raw select and expand clause syntax.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandSyntacticParser.Parse(System.String,System.String,Microsoft.OData.Edm.IEdmStructuredType,Microsoft.OData.UriParser.ODataUriParserConfiguration,Microsoft.OData.UriParser.ExpandToken@,Microsoft.OData.UriParser.SelectToken@)">
            <summary>
            Parse the raw select and expand strings into Abstract Syntax Trees
            </summary>
            <param name="selectClause">the raw select string</param>
            <param name="expandClause">the raw expand string</param>
            <param name="parentEntityType">the parent entity type for expand option</param>
            <param name="configuration">the OData URI parser configuration</param>
            <param name="expandTree">the resulting expand AST</param>
            <param name="selectTree">the resulting select AST</param>
        </member>
        <member name="T:Microsoft.OData.UriParser.SelectExpandTermParser">
            <summary>
            Sub-parser that <see cref="T:Microsoft.OData.UriParser.SelectExpandParser"/> uses to parse a single select or expand term.
            Uses a provided Lexer, which must be positioned at the term, to parse the term.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SelectExpandTermParser.lexer">
            <summary>
            Lexer provided by <see cref="T:Microsoft.OData.UriParser.SelectExpandParser"/>.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SelectExpandTermParser.maxPathLength">
            <summary>
            Max length of a select or expand path.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SelectExpandTermParser.isSelect">
            <summary>
            True if we are parsing select, false if we are parsing expand.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandTermParser.#ctor(Microsoft.OData.UriParser.ExpressionLexer,System.Int32,System.Boolean)">
            <summary>
            Constructs a term parser.
            </summary>
            <param name="lexer">Lexer to use for parsing the term. Should be position at the term to parse.</param>
            <param name="maxPathLength">Max length of a select or expand path.</param>
            <param name="isSelect">True if we are parsing select, false if we are parsing expand.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandTermParser.ParseTerm(System.Boolean)">
            <summary>
            Parses a select or expand term into a PathSegmentToken.
            Assumes the lexer is positioned at the beginning of the term to parse.
            When done, the lexer will be positioned at whatever is after the identifier.
            </summary>
            <param name="allowRef">Whether the $ref operation is valid in this token.</param>
            <returns>parsed query token</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandTermParser.CheckPathLength(System.Int32)">
            <summary>
            Check that the current path length is less than the maximum path length
            </summary>
            <param name="pathLength">the current path length</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.SelectExpandTermParser.ParseSegment(Microsoft.OData.UriParser.PathSegmentToken,System.Boolean)">
            <summary>
            Uses the ExpressionLexer to visit the next ExpressionToken, and delegates parsing of segments, type segments, identifiers,
            and the star token to other methods.
            </summary>
            <param name="previousSegment">Previously parsed PathSegmentToken, or null if this is the first token.</param>
            <param name="allowRef">Whether the $ref operation is valid in this token.</param>
            <returns>A parsed PathSegmentToken representing the next segment in this path.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.UriLiteralParsingException">
            <summary>
            Throw this expcetion when the parser can parse the target type but failed to do so.
            Do not throw when parser is not able to parse the target type.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriLiteralParsingException.#ctor">
            <summary>Creates a new instance of the <see cref="T:Microsoft.OData.UriTypeParsingException" /> class with default values.</summary>
            <remarks>
            The Message property is initialized to a system-supplied message
            that describes the error. This message takes into account the
            current system culture.
            </remarks>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriLiteralParsingException.#ctor(System.String)">
            <summary>Creates a new instance of the <see cref="T:Microsoft.OData.UriTypeParsingException" /> class with an error message.</summary>
            <param name="message">The plain text error message for this exception.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriLiteralParsingException.#ctor(System.String,System.Exception)">
            <summary>Creates a new instance of the <see cref="T:Microsoft.OData.UriTypeParsingException" /> class with an error message and an inner exception.</summary>
            <param name="message">The plain text error message for this exception.</param>
            <param name="innerException">The inner exception that is the cause of this exception to be thrown.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriParserHelper.IsCharHexDigit(System.Char)">
            <summary>Determines whether the specified character is a valid hexadecimal digit.</summary>
            <param name="c">Character to check.</param>
            <returns>true if <paramref name="c"/> is a valid hex digit; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriParserHelper.TryRemovePrefix(System.String,System.String@)">
            <summary>
            Tries to remove a literal <paramref name="prefix"/> from the specified <paramref name="text"/>.
            </summary>
            <param name="prefix">Prefix to remove; one-letter prefixes are case-sensitive, others insensitive.</param>
            <param name="text">Text to attempt to remove prefix from.</param>
            <returns>true if the prefix was found and removed; false otherwise.</returns>
            <remarks>Copy of WebConvert.TryRemoveLiteralPrefix.</remarks>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriParserHelper.TryRemoveQuotes(System.String@)">
            <summary>
            Removes quotes from the single-quotes text.
            </summary>
            <param name="text">Text to remove quotes from.</param>
            <returns>Whether quotes were successfully removed.</returns>
            <remarks>Copy of WebConvert.TryRemoveQuotes.</remarks>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriParserHelper.RemoveQuotes(System.String)">
            <summary>
            Removes quotes from the single-quotes text.
            </summary>
            <param name="text">Text to remove quotes from.</param>
            <returns>The specified <paramref name="text"/> with single quotes removed.</returns>
            <remarks>Copy of WebConvert.RemoveQuotes.</remarks>
            TODO: Consider combine this method with the method 'TryRemoveQuotes'
        </member>
        <member name="M:Microsoft.OData.UriParser.UriParserHelper.TryRemoveLiteralSuffix(System.String,System.String@)">
            <summary>
            Check and strip the input <paramref name="text"/> for literal <paramref name="suffix"/>
            </summary>
            <param name="suffix">The suffix value</param>
            <param name="text">The string to check</param>
            <returns>A string that has been striped of the suffix</returns>
            <remarks>Copy of WebConvert.TryRemoveLiteralSuffix.</remarks>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriParserHelper.TryRemoveLiteralPrefix(System.String,System.String@)">
            <summary>
            Tries to remove a literal <paramref name="prefix"/> from the specified <paramref name="text"/>.
            </summary>
            <param name="prefix">Prefix to remove; one-letter prefixes are case-sensitive, others insensitive.</param>
            <param name="text">Text to attempt to remove prefix from.</param>
            <returns>true if the prefix was found and removed; false otherwise.</returns>
            <remarks>Copy of WebConvert.TryRemoveLiteralPrefix.</remarks>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriParserHelper.ValidatePrefixLiteral(System.String)">
            <summary>
            Make sure the given literal contains letters or '.' only.
            </summary>
            <param name="typePrefixLiteralName">typePrefixLiteralName</param>
            <exception cref="T:System.ArgumentException">Literal is not valid</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriParserHelper.IsUriValueQuoted(System.String)">
            <summary>
            Checks whether the specified text is a correctly formatted quoted value.
            </summary>
            <param name='text'>Text to check.</param>
            <returns>true if the text is correctly formatted, false otherwise.</returns>
            <remarks>Copy of WebConvert.IsKeyValueQuoted.</remarks>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriParserHelper.IsAnnotation(System.String)">
            <summary>
            Determines whether or not an identifier is an annotation term name
            </summary>
            <param name="identifier">The identifer that may be an annotation term name</param>
            <returns>True if the identifier is an annotation term, otherwise false</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriParserHelper.IsValidNumericConstant(System.String)">
            <summary>
            Checks if text is '-INF' or 'INF' or 'NaN'.
            </summary>
            <param name="text">numeric string</param>
            <returns>true or false</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.UriPathParser">
            <summary>
            Parser which consumes the URI path and produces the lexical object model.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.UriPathParser.maxSegments">
            <summary>
            The maximum number of segments allowed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriPathParser.#ctor(Microsoft.OData.UriParser.ODataUriParserSettings)">
            <summary>
            Constructor.
            </summary>
            <param name="settings">The Uri parser settings.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriPathParser.ParsePathIntoSegments(System.Uri,System.Uri)">
            <summary>
            Returns list of segments in the specified path (eg: /abc/pqr -&gt; abc, pqr).
            </summary>
            <param name="fullUri">The full URI of the request.</param>
            <param name="serviceBaseUri">The service base URI for the request.</param>
            <returns>List of unescaped segments.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.UriPrimitiveTypeParser">
            <summary>
            Parser which consumes the URI format of primitive types and converts it to primitive types.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriPrimitiveTypeParser.TryUriStringToPrimitive(System.String,Microsoft.OData.Edm.IEdmTypeReference,System.Object@,Microsoft.OData.UriParser.UriLiteralParsingException@)">
            <summary>Converts a string to a primitive value.</summary>
            <param name="text">String text to convert.</param>
            <param name="targetType">Type to convert string to.</param>
            <param name="targetValue">After invocation, converted value.</param>
            <param name="exception">The detailed parsing exception.</param>
            <returns>true if the value was converted; false otherwise.</returns>
            <remarks>Copy of the WebConvert.TryKeyStringToPrimitive</remarks>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriPrimitiveTypeParser.TryUriStringToPrimitive(System.String,Microsoft.OData.Edm.IEdmTypeReference,System.Object@)">
            <summary>Converts a string to a primitive value.</summary>
            <param name="text">String text to convert.</param>
            <param name="targetType">Type to convert string to.</param>
            <param name="targetValue">After invocation, converted value.</param>
            <returns>true if the value was converted; false otherwise.</returns>
            <remarks>Copy of the WebConvert.TryKeyStringToPrimitive</remarks>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriPrimitiveTypeParser.TryUriStringToByteArray(System.String,System.Byte[]@)">
            <summary>
            Converts a string to a byte[] value.
            </summary>
            <param name="text">String text to convert.</param>
            <param name="targetValue">After invocation, converted value.</param>
            <returns>true if the value was converted; false otherwise.</returns>
            <remarks>Copy of WebConvert.TryKeyStringToByteArray.</remarks>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriPrimitiveTypeParser.TryUriStringToDuration(System.String,System.TimeSpan@)">
            <summary>
            Converts a string to a Duration value.
            </summary>
            <param name="text">String text to convert.</param>
            <param name="targetValue">After invocation, converted value.</param>
            <returns>true if the value was converted; false otherwise.</returns>
            <remarks>Copy of WebConvert.TryKeyStringToTime.</remarks>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriPrimitiveTypeParser.TryUriStringToGeography(System.String,Microsoft.Spatial.Geography@,Microsoft.OData.UriParser.UriLiteralParsingException@)">
            <summary>
            Try to parse the given text to a Geography object.
            </summary>
            <param name="text">Text to parse.</param>
            <param name="targetValue">Geography to return.</param>
            <param name="parsingException">The detailed reason of parsing error.</param>
            <returns>True if succeeds, false if not.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriPrimitiveTypeParser.TryUriStringToGeometry(System.String,Microsoft.Spatial.Geometry@,Microsoft.OData.UriParser.UriLiteralParsingException@)">
            <summary>
            Try to parse the given text to a Geometry object.
            </summary>
            <param name="text">Text to parse.</param>
            <param name="targetValue">Geometry to return.</param>
            <param name="parsingFailureReasonException">The detailed reason of parsing error.</param>
            <returns>True if succeeds, false if not.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.UriQueryExpressionParser">
            <summary>
            Parser which consumes the query expression ($filter, $orderby) and produces the lexical object model.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.UriQueryExpressionParser.maxDepth">
            <summary>
            The maximum number of recursion nesting allowed.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.UriQueryExpressionParser.supportedKeywords">
            <summary>
            List of supported $apply keywords
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.UriQueryExpressionParser.parameters">
            <summary>
            Set of parsed parameters
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.UriQueryExpressionParser.recursionDepth">
            <summary>
            The current recursion depth.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.UriQueryExpressionParser.lexer">
            <summary>
            The lexer being used for the parsing.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.UriQueryExpressionParser.enableCaseInsensitiveBuiltinIdentifier">
            <summary>
            Whether to allow case insensitive for builtin identifier.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.UriQueryExpressionParser.parseAggregateExpresionDepth">
            <summary>
            Tracks the depth of aggregate expression recursion.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.UriQueryExpressionParser.aggregateExpressionParents">
            <summary>
            Tracks expression parents of aggregate expression recursion.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.#ctor(System.Int32)">
            <summary>
            Creates a UriQueryExpressionParser.
            </summary>
            <param name="maxDepth">The maximum depth of each part of the query - a recursion limit.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.#ctor(System.Int32,System.Boolean)">
            <summary>
            Constructor.
            </summary>
            <param name="maxDepth">The maximum depth of each part of the query - a recursion limit.</param>
            <param name="enableCaseInsensitiveBuiltinIdentifier">Whether to allow case insensitive for builtin identifier.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.#ctor(System.Int32,Microsoft.OData.UriParser.ExpressionLexer)">
            <summary>
            Constructor.
            </summary>
            <param name="maxDepth">The maximum depth of each part of the query - a recursion limit.</param>
            <param name="lexer">The ExpressionLexer containing text to be parsed.</param>
        </member>
        <member name="T:Microsoft.OData.UriParser.UriQueryExpressionParser.Parser">
            <summary>
            Delegate for a function that parses an expression and translates it into a QueryToken.
            </summary>
            <returns>A QueryToken</returns>
        </member>
        <member name="P:Microsoft.OData.UriParser.UriQueryExpressionParser.Lexer">
            <summary>
            Reference to the lexer.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.UriQueryExpressionParser.IsInAggregateExpression">
            <summary>
            Gets if this parser is currently within an aggregate expression parsing stack.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParseFilter(System.String)">
            <summary>
            Parses the $filter expression.
            </summary>
            <param name="filter">The $filter expression string to parse.</param>
            <returns>The lexical token representing the filter.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.TryParseLiteral(Microsoft.OData.UriParser.ExpressionLexer)">
            <summary>
            Parses a literal.
            </summary>
            <param name="lexer">The lexer to use.</param>
            <returns>The literal query token or null if something else was found.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParseComputeExpression">
            <summary>
            Parse compute expression text into a token.
            </summary>
            <returns>The lexical token representing the compute expression text.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParseExpressionText(System.String)">
            <summary>
            Parse expression text into Token.
            </summary>
            <param name="expressionText">The expression string to Parse.</param>
            <returns>The lexical token representing the expression text.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParseOrderBy(System.String)">
            <summary>
            Parses the $orderby expression.
            </summary>
            <param name="orderBy">The $orderby expression string to parse.</param>
            <returns>The enumeraion of lexical tokens representing order by tokens.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParseExpression">
            <summary>
            Parses the expression.
            </summary>
            <returns>The lexical token representing the expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.CreateLexerForFilterOrOrderByOrApplyExpression(System.String)">
            <summary>
            Creates a new <see cref="T:Microsoft.OData.UriParser.ExpressionLexer"/> for the given filter, orderby or apply expression.
            </summary>
            <param name="expression">The expression.</param>
            <returns>The lexer for the expression, which will have already moved to the first token.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParseError(System.String)">
            <summary>Creates an exception for a parse error.</summary>
            <param name="message">Message text.</param>
            <returns>A new Exception.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParseError(System.String,Microsoft.OData.UriParser.UriLiteralParsingException)">
            <summary>Creates an exception for a parse error.</summary>
            <param name="message">Message text.</param>
            <param name="parsingException">Type Parsing exception</param>
            <returns>A new Exception.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParseParameterAlias(Microsoft.OData.UriParser.ExpressionLexer)">
            <summary>
            Parses parameter alias into token.
            </summary>
            <param name="lexer">The lexer to use.</param>
            <returns>The parameter alias token.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParseTypedLiteral(Microsoft.OData.UriParser.ExpressionLexer,Microsoft.OData.Edm.IEdmTypeReference,System.String)">
            <summary>
            Parses typed literals.
            </summary>
            <param name="lexer">The lexer to use.</param>
            <param name="targetTypeReference">Expected type to be parsed.</param>
            <param name="targetTypeName">The EDM type name of the expected type to be parsed.</param>
            <returns>The literal token produced by building the given literal.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParseNullLiteral(Microsoft.OData.UriParser.ExpressionLexer)">
            <summary>
            Parses null literals.
            </summary>
            <param name="lexer">The lexer to use.</param>
            <returns>The literal token produced by building the given literal.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParseLogicalOr">
            <summary>
            Parses the or operator.
            </summary>
            <returns>The lexical token representing the expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParseLogicalAnd">
            <summary>
            Parses the and operator.
            </summary>
            <returns>The lexical token representing the expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParseComparison">
            <summary>
            Parses the eq, ne, lt, gt, le, ge, has, and in operators.
            </summary>
            <returns>The lexical token representing the expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParseAdditive">
            <summary>
            Parses the add, sub operators.
            </summary>
            <returns>The lexical token representing the expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParseMultiplicative">
            <summary>
            Parses the mul, div, mod operators.
            </summary>
            <returns>The lexical token representing the expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParseUnary">
            <summary>
            Parses the -, not unary operators.
            </summary>
            <returns>The lexical token representing the expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParsePrimary">
            <summary>
            Parses the primary expressions.
            </summary>
            <returns>The lexical token representing the expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParsePrimaryStart">
            <summary>
            Handles the start of primary expressions.
            </summary>
            <returns>The lexical token representing the expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParseParenExpression">
            <summary>
            Parses parenthesized expressions.
            </summary>
            <returns>The lexical token representing the expression.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParseAny(Microsoft.OData.UriParser.QueryToken)">
            <summary>
            Parses the Any portion of the query
            </summary>
            <param name="parent">The parent of the Any node.</param>
            <returns>The lexical token representing the Any query.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParseAll(Microsoft.OData.UriParser.QueryToken)">
            <summary>
            Parses the All portion of the query
            </summary>
            <param name="parent">The parent of the All node.</param>
            <returns>The lexical token representing the All query.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParseAnyAll(Microsoft.OData.UriParser.QueryToken,System.Boolean)">
            <summary>
            Parses the Any/All portion of the query
            </summary>
            <param name="parent">The parent of the Any/All node.</param>
            <param name="isAny">Denotes whether an Any or All is to be parsed.</param>
            <returns>The lexical token representing the Any/All query.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.ParseSegment(Microsoft.OData.UriParser.QueryToken)">
            <summary>
            Parses a segment.
            </summary>
            <param name="parent">The parent of the segment node.</param>
            <returns>The lexical token representing the segment.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.TokenIdentifierIs(System.String)">
            <summary>
            Checks that the current token has the specified identifier.
            </summary>
            <param name="id">Identifier to check.</param>
            <returns>true if the current token is an identifier with the specified text.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.RecurseEnter">
            <summary>
            Marks the fact that a recursive method was entered, and checks that the depth is allowed.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriQueryExpressionParser.RecurseLeave">
            <summary>
            Marks the fact that a recursive method is leaving.
            </summary>
        </member>
        <member name="T:Microsoft.OData.UriParser.UriTemplateParser">
            <summary>
            Parser for Uri Template. See <see cref="T:Microsoft.OData.UriParser.UriTemplateExpression"/> class for detail.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriTemplateParser.IsValidTemplateLiteral(System.String)">
            <summary>
            Check whether given literal matches the uri template pattern {literals}, See <see cref="T:Microsoft.OData.UriParser.UriTemplateExpression"/> class for detail.
            </summary>
            <param name="literalText">The text to be evaluated</param>
            <returns>True if <paramref name="literalText"/> is valid for Uri template</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UriTemplateParser.TryParseLiteral(System.String,Microsoft.OData.Edm.IEdmTypeReference,Microsoft.OData.UriParser.UriTemplateExpression@)">
            <summary>
            Parse a literal as Uri template.
            </summary>
            <param name="literalText">The input text.</param>
            <param name="expectedType">The expected type of the object which the Uri template stands for.</param>
            <param name="expression">The <see cref="T:Microsoft.OData.UriParser.UriTemplateExpression"/> representing the Uri template.</param>
            <returns>True if successfully expression parsed, false otherwise. </returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.QueryNodeUtils">
            <summary>
            Helper methods for working with query nodes.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.QueryNodeUtils.additionalMap">
            <summary>
            Pre-look map for BinaryOperator kind resolver
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.QueryNodeUtils.GetBinaryOperatorResultType(Microsoft.OData.Edm.IEdmPrimitiveTypeReference,Microsoft.OData.Edm.IEdmPrimitiveTypeReference,Microsoft.OData.UriParser.BinaryOperatorKind)">
            <summary>
            Compute the result type of a binary operator based on the type of its operands and the operator kind.
            </summary>
            <param name="left">The type reference on the left hand.</param>
            <param name="right">The type reference on the right hand.</param>
            <param name="operatorKind">The kind of operator.</param>
            <returns>The result type reference of the binary operator.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.QueryOptionUtils">
            <summary>
            Helper methods for working with query options.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.QueryOptionUtils.GetParameterAliases(System.Collections.Generic.List{Microsoft.OData.UriParser.CustomQueryOptionToken})">
            <summary>
            Gets parameter alias names and strings, which starts with '@' char. and remove them from queryOptions collection.
            </summary>
            <param name="queryOptions">The queryOptions collection.</param>
            <returns>The dictionary of parameter alias names and strings.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.QueryOptionUtils.GetQueryOptionValue(System.Collections.Generic.List{Microsoft.OData.UriParser.CustomQueryOptionToken},System.String)">
            <summary>
            Returns a query option value by its name from the <paramref name="queryOptions"/> collection.
            </summary>
            <param name="queryOptions">The collection of query options.</param>
            <param name="queryOptionName">The name of the query option to get.</param>
            <returns>The value of the query option or null if no such query option exists.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.QueryOptionUtils.GetQueryOptionValueAndRemove(System.Collections.Generic.List{Microsoft.OData.UriParser.CustomQueryOptionToken},System.String)">
            <summary>
            Returns a query option value by its name and removes the query option from the <paramref name="queryOptions"/> collection.
            Currently, it is only used by un-exposed syntatic tree parsing.
            </summary>
            <param name="queryOptions">The collection of query options.</param>
            <param name="queryOptionName">The name of the query option to get.</param>
            <returns>The value of the query option or null if no such query option exists.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.QueryOptionUtils.ParseQueryOptions(System.Uri)">
            <summary>
            Parses query options from a specified URI into a dictionary.
            </summary>
            <param name="uri">The uri to get the query options from.</param>
            <returns>The parsed query options.</returns>
            <remarks>This method returns <see cref="T:System.Collections.Generic.List`1"/> with all the query options.
            Note that it is valid to include multiple query options with the same name.</remarks>
        </member>
        <member name="T:Microsoft.OData.UriParser.ReadOnlyEnumerableForUriParser`1">
            <summary>
            Implementation of IEnumerable which is based on another IEnumerable
            but only exposes readonly access to that collection. This class doesn't implement
            any other public interfaces or public API unlike most other IEnumerable implementations
            which also implement other public interfaces.
            </summary>
            <typeparam name="T">The type of the items in the read-only enumerable.</typeparam>
        </member>
        <member name="F:Microsoft.OData.UriParser.ReadOnlyEnumerableForUriParser`1.sourceEnumerable">
            <summary>
            The IEnumerable to wrap.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ReadOnlyEnumerableForUriParser`1.#ctor(System.Collections.Generic.IEnumerable{`0})">
            <summary>
            Constructor.
            </summary>
            <param name="sourceEnumerable">The enumerable to wrap.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ReadOnlyEnumerableForUriParser`1.System#Collections#Generic#IEnumerable{T}#GetEnumerator">
            <summary>
            Returns the enumerator to iterate through the items.
            </summary>
            <returns>The enumerator object to use.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ReadOnlyEnumerableForUriParser`1.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Returns the (non-generic) enumerator to iterate through the items.
            </summary>
            <returns>The enumerator object to use.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.AlternateKeysODataUriResolver">
            <summary>
            Implementation for resolving the alternate keys.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.AlternateKeysODataUriResolver.model">
            <summary>
            Model to be used for resolving the alternate keys.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.AlternateKeysODataUriResolver.#ctor(Microsoft.OData.Edm.IEdmModel)">
            <summary>
            Constructs a AlternateKeysODataUriResolver with the given edmModel to be used for resolving alternate keys
            </summary>
            <param name="model">The model to be used.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.AlternateKeysODataUriResolver.ResolveKeys(Microsoft.OData.Edm.IEdmEntityType,System.Collections.Generic.IDictionary{System.String,System.String},System.Func{Microsoft.OData.Edm.IEdmTypeReference,System.String,System.Object})">
            <summary>
            Resolve keys for certain entity set, this function would be called when key is specified as name value pairs. E.g. EntitySet(ID='key')
            </summary>
            <param name="type">Type for current entityset.</param>
            <param name="namedValues">The dictionary of name value pairs.</param>
            <param name="convertFunc">The convert function to be used for value converting.</param>
            <returns>The resolved key list.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.AlternateKeysODataUriResolver.TryResolveAlternateKeys(Microsoft.OData.Edm.IEdmEntityType,System.Collections.Generic.IDictionary{System.String,System.String},System.Func{Microsoft.OData.Edm.IEdmTypeReference,System.String,System.Object},System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.Object}}@)">
            <summary>
            Try to resolve alternate keys for certain entity type, this function would be called when key is specified as name value pairs. E.g. EntitySet(ID='key')
            </summary>
            <param name="type">Type for current entityset.</param>
            <param name="namedValues">The dictionary of name value pairs.</param>
            <param name="convertFunc">The convert function to be used for value converting.</param>
            <param name="convertedPairs">The resolved key list.</param>
            <returns>True if resolve succeeded.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.AlternateKeysODataUriResolver.TryResolveKeys(Microsoft.OData.Edm.IEdmEntityType,System.Collections.Generic.IDictionary{System.String,System.String},System.Collections.Generic.IDictionary{System.String,Microsoft.OData.Edm.IEdmProperty},System.Func{Microsoft.OData.Edm.IEdmTypeReference,System.String,System.Object},System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.Object}}@)">
            <summary>
            Try to resolve keys for certain entity type, this function would be called when key is specified as name value pairs. E.g. EntitySet(ID='key')
            </summary>
            <param name="type">Type for current entityset.</param>
            <param name="namedValues">The dictionary of name value pairs.</param>
            <param name="keyProperties">Dictionary of alias to key properties.</param>
            <param name="convertFunc">The convert function to be used for value converting.</param>
            <param name="convertedPairs">The resolved key list.</param>
            <returns>True if resolve succeeded.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.ODataUriResolver">
            <summary>
            Class for resolving different kinds of Uri parsing context.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriResolver.Default">
            <summary>
            Instance for <see cref="T:Microsoft.OData.UriParser.ODataUriResolver"/>.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.ODataUriResolver.typeFacetsPromotionRules">
            <summary>
            Promotion rules for type facets.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriResolver.EnableCaseInsensitive">
            <summary>
            Whether to enable case insensitive for the resolver.
            </summary>
            <remarks>
            All extensions should look at this property and keep case sensitive behavior consistent.
            </remarks>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriResolver.EnableNoDollarQueryOptions">
            <summary>
            Gets and sets the optional-$-sign-prefix for OData system query option.
            </summary>
            <remarks>
            All extensions should look at this property and keep case sensitive behavior consistent.
            </remarks>
        </member>
        <member name="P:Microsoft.OData.UriParser.ODataUriResolver.TypeFacetsPromotionRules">
            <summary>
            Gets and sets promotion rules for type facets.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriResolver.PromoteBinaryOperandTypes(Microsoft.OData.UriParser.BinaryOperatorKind,Microsoft.OData.UriParser.SingleValueNode@,Microsoft.OData.UriParser.SingleValueNode@,Microsoft.OData.Edm.IEdmTypeReference@)">
            <summary>
            Promote the left and right operand types
            </summary>
            <param name="binaryOperatorKind">the operator kind</param>
            <param name="leftNode">the left operand</param>
            <param name="rightNode">the right operand</param>
            <param name="typeReference">type reference for the result BinaryOperatorNode.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriResolver.ResolveNavigationSource(Microsoft.OData.Edm.IEdmModel,System.String)">
            <summary>
            Resolve navigation source from model.
            </summary>
            <param name="model">The model to be used.</param>
            <param name="identifier">The identifier to be resolved.</param>
            <returns>The resolved navigation source.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriResolver.ResolveProperty(Microsoft.OData.Edm.IEdmStructuredType,System.String)">
            <summary>
            Resolve property from property name
            </summary>
            <param name="type">The declaring type.</param>
            <param name="propertyName">The property name.</param>
            <returns>The resolved <see cref="T:Microsoft.OData.Edm.IEdmProperty"/></returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriResolver.ResolveTerm(Microsoft.OData.Edm.IEdmModel,System.String)">
            <summary>
            Resolve term name from model.
            </summary>
            <param name="model">The model to be used.</param>
            <param name="termName">The term name to be resolved.</param>
            <returns>Resolved term.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriResolver.ResolveType(Microsoft.OData.Edm.IEdmModel,System.String)">
            <summary>
            Resolve type name from model.
            </summary>
            <param name="model">The model to be used.</param>
            <param name="typeName">The type name to be resolved.</param>
            <returns>Resolved type.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriResolver.ResolveBoundOperations(Microsoft.OData.Edm.IEdmModel,System.String,Microsoft.OData.Edm.IEdmType)">
            <summary>
            Resolve bound operations based on name.
            </summary>
            <param name="model">The model to be used.</param>
            <param name="identifier">The operation name.</param>
            <param name="bindingType">The type operation was binding to.</param>
            <returns>Resolved operation list.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriResolver.ResolveUnboundOperations(Microsoft.OData.Edm.IEdmModel,System.String)">
            <summary>
            Resolve unbound operations based on name.
            </summary>
            <param name="model">The model to be used.</param>
            <param name="identifier">The operation name.</param>
            <returns>Resolved operation list.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriResolver.ResolveOperationImports(Microsoft.OData.Edm.IEdmModel,System.String)">
            <summary>
            Resolve operation imports with certain name.
            </summary>
            <param name="model">The model to search.</param>
            <param name="identifier">The qualified name of the operation import which may or may not include the container name.</param>
            <returns>All operation imports that can be found by the specified name, returns an empty enumerable if no operation import exists.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriResolver.ResolveOperationParameters(Microsoft.OData.Edm.IEdmOperation,System.Collections.Generic.IDictionary{System.String,Microsoft.OData.UriParser.SingleValueNode})">
            <summary>
            Resolve operation's parameters.
            </summary>
            <param name="operation">Current operation for parameters.</param>
            <param name="input">A dictionary the parameter list.</param>
            <returns>A dictionary containing resolved parameters.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriResolver.ResolveKeys(Microsoft.OData.Edm.IEdmEntityType,System.Collections.Generic.IList{System.String},System.Func{Microsoft.OData.Edm.IEdmTypeReference,System.String,System.Object})">
            <summary>
            Resolve keys for certain entity set, this function would be called when key is specified as positional values. E.g. EntitySet('key')
            </summary>
            <param name="type">Type for current entityset.</param>
            <param name="positionalValues">The list of positional values.</param>
            <param name="convertFunc">The convert function to be used for value converting.</param>
            <returns>The resolved key list.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriResolver.ResolveKeys(Microsoft.OData.Edm.IEdmEntityType,System.Collections.Generic.IDictionary{System.String,System.String},System.Func{Microsoft.OData.Edm.IEdmTypeReference,System.String,System.Object})">
            <summary>
            Resolve keys for certain entity set, this function would be called when key is specified as name value pairs. E.g. EntitySet(ID='key')
            </summary>
            <param name="type">Type for current entityset.</param>
            <param name="namedValues">The dictionary of name value pairs.</param>
            <param name="convertFunc">The convert function to be used for value converting.</param>
            <returns>The resolved key list.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.ODataUriResolver.ResolveOperationParameterNameCaseInsensitive(Microsoft.OData.Edm.IEdmOperation,System.String)">
            <summary>
            Resolve an operation parameter's name with case insensitive enabled
            </summary>
            <param name="operation">The operation.</param>
            <param name="identifier">Name for the parameter.</param>
            <returns>The resolved operation parameter.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.StringAsEnumResolver">
            <summary>
            Implementation for resolving a literal value without qualified namespace to enum type.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.StringAsEnumResolver.PromoteBinaryOperandTypes(Microsoft.OData.UriParser.BinaryOperatorKind,Microsoft.OData.UriParser.SingleValueNode@,Microsoft.OData.UriParser.SingleValueNode@,Microsoft.OData.Edm.IEdmTypeReference@)">
            <summary>
            Promote the left and right operand types, supports enum property and string constant scenario.
            </summary>
            <param name="binaryOperatorKind">the operator kind</param>
            <param name="leftNode">the left operand</param>
            <param name="rightNode">the right operand</param>
            <param name="typeReference">type reference for the result BinaryOperatorNode.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.StringAsEnumResolver.ResolveOperationParameters(Microsoft.OData.Edm.IEdmOperation,System.Collections.Generic.IDictionary{System.String,Microsoft.OData.UriParser.SingleValueNode})">
            <summary>
            Resolve operation's parameters. Using this extension, enum value could be written as string value.
            </summary>
            <param name="operation">Current operation for parameters.</param>
            <param name="input">A dictionary the parameter list.</param>
            <returns>A dictionary containing resolved parameters.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.StringAsEnumResolver.ResolveKeys(Microsoft.OData.Edm.IEdmEntityType,System.Collections.Generic.IList{System.String},System.Func{Microsoft.OData.Edm.IEdmTypeReference,System.String,System.Object})">
            <summary>
            Resolve keys for certain entity set, this function would be called when key is specified as positional values. E.g. EntitySet('key')
            Enum value could omit type name prefix using this resolver.
            </summary>
            <param name="type">Type for current entityset.</param>
            <param name="positionalValues">The list of positional values.</param>
            <param name="convertFunc">The convert function to be used for value converting.</param>
            <returns>The resolved key list.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.StringAsEnumResolver.ResolveKeys(Microsoft.OData.Edm.IEdmEntityType,System.Collections.Generic.IDictionary{System.String,System.String},System.Func{Microsoft.OData.Edm.IEdmTypeReference,System.String,System.Object})">
            <summary>
            Resolve keys for certain entity set, this function would be called when key is specified as name value pairs. E.g. EntitySet(ID='key')
            Enum value could omit type name prefix using this resolver.
            </summary>
            <param name="type">Type for current entityset.</param>
            <param name="namedValues">The dictionary of name value pairs.</param>
            <param name="convertFunc">The convert function to be used for value converting.</param>
            <returns>The resolved key list.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.StringAsEnumResolver.TryParseEnum(Microsoft.OData.Edm.IEdmEnumType,System.String,Microsoft.OData.ODataEnumValue@)">
            <summary>
            Parse string or integer to enum value
            </summary>
            <param name="enumType">edm enum type</param>
            <param name="value">input string value</param>
            <param name="enumValue">output edm enum value</param>
            <returns>true if parse succeeds, false if fails</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.UnqualifiedODataUriResolver">
            <summary>
            Resolver that supports bound function calls.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.UnqualifiedODataUriResolver.ResolveUnboundOperations(Microsoft.OData.Edm.IEdmModel,System.String)">
            <summary>
            Resolve unbound operations based on name.
            </summary>
            <param name="model">The model to be used.</param>
            <param name="identifier">The operation name.</param>
            <returns>Resolved operation list.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.UnqualifiedODataUriResolver.ResolveBoundOperations(Microsoft.OData.Edm.IEdmModel,System.String,Microsoft.OData.Edm.IEdmType)">
            <summary>
            Resolve bound operations based on name.
            </summary>
            <param name="model">The model to be used.</param>
            <param name="identifier">The operation name.</param>
            <param name="bindingType">The type operation was binding to.</param>
            <returns>Resolved operation list.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.SearchLexer">
            <summary>
            Lexer used for search query, note this is a little different ExpressionLexer, that it use double quote as string indicator.
            TODO: Extend the expression lexer.
            The result generated by this lexer:
            AND, OR, NOT Identifier
            ( OpenParen
            ) CloseParen
            (others) StringLiteral
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SearchLexer.InvalidWordPattern">
             <summary>
             Pattern for searchWord
             From ABNF rule:
             searchWord = 1*ALPHA ; Actually: any character from the Unicode categories L or Nl,
                           ; but not the words AND, OR, and NOT
             
             \p{L} means any kind of letter from any language, include [Lo] such as CJK single character.
             </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SearchLexer.EscapeChar">
            <summary>
            Escape character used in search query
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SearchLexer.EscapeSequenceSet">
            <summary>
            Characters that could be escaped
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SearchLexer.KeyWords">
            <summary>
            Keeps all keywords can be used in search query.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.SearchLexer.isEscape">
            <summary>
            Indicate whether current char is escaped.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.SearchLexer.#ctor(System.String)">
            <summary>Initializes a new <see cref="T:Microsoft.OData.UriParser.SearchLexer"/>.</summary>
            <param name="expression">Expression to parse.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.SearchLexer.NextTokenImplementation(System.Exception@)">
            <summary>Reads the next token, skipping whitespace as necessary.</summary>
            <param name="error">Error that occurred while trying to process the next token.</param>
            <returns>The next token, which may be 'bad' if an error occurs.</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SearchLexer.IsValidSearchTermChar(System.Char)">
            <summary>
            Evaluate whether the given char is valid for a SearchTerm
            </summary>
            <param name="val">The char to be evaluated on.</param>
            <returns>Whether the given char is valid for a SearchTerm</returns>
        </member>
        <member name="M:Microsoft.OData.UriParser.SearchLexer.NextCharWithEscape">
            <summary>
            Move to next char, with escape char support.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.SearchLexer.AdvanceToNextOccuranceOfWithEscape(System.Char)">
            <summary>
            Advance to certain char, with escpae char support.
            </summary>
            <param name="endingValue">the ending delimiter.</param>
        </member>
        <member name="T:Microsoft.OData.UriParser.AggregatedCollectionPropertyNode">
            <summary>
            Node representing a originally collection resource that's been aggregated into a single value.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.AggregatedCollectionPropertyNode.source">
            <summary>
            The collection that was aggregated and contains this property.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.AggregatedCollectionPropertyNode.property">
            <summary>
            The EDM property which is to be accessed.
            </summary>
            <remarks>Only non-entity, non-collection properties are supported by this node.</remarks>
        </member>
        <member name="F:Microsoft.OData.UriParser.AggregatedCollectionPropertyNode.typeReference">
            <summary>
            The target type that the property represents.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.AggregatedCollectionPropertyNode.navigationSource">
            <summary>
            The navigation source containing the source entity.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.AggregatedCollectionPropertyNode.#ctor(Microsoft.OData.UriParser.CollectionNavigationNode,Microsoft.OData.Edm.IEdmProperty)">
            <summary>
            Constructs a <see cref="T:Microsoft.OData.UriParser.SingleValuePropertyAccessNode"/>.
            </summary>
            <param name="source">The value containing this property.</param>
            <param name="property">The EDM property which is to be accessed.</param>
            <exception cref="T:System.ArgumentNullException">Throws if input source or property is null.</exception>
            <exception cref="T:System.ArgumentException">Throws if input property is not structural, or is a collection.</exception>
        </member>
        <member name="P:Microsoft.OData.UriParser.AggregatedCollectionPropertyNode.Source">
            <summary>
            Gets the value containing this property.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.AggregatedCollectionPropertyNode.Property">
            <summary>
            Gets the EDM property which is to be accessed.
            </summary>
            <remarks>Only non-entity, non-collection properties are supported by this node.</remarks>
        </member>
        <member name="P:Microsoft.OData.UriParser.AggregatedCollectionPropertyNode.TypeReference">
            <summary>
            Gets the type of the single value this node represents.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.AggregatedCollectionPropertyNode.NavigationSource">
            <summary>
            Gets the navigation source of this node.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.AggregatedCollectionPropertyNode.StructuredTypeReference">
            <summary>
            Gets the type reference of this node.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.AggregatedCollectionPropertyNode.InternalKind">
            <summary>
            Gets the kind of this node.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.AggregatedCollectionPropertyNode.Accept``1(Microsoft.OData.UriParser.QueryNodeVisitor{``0})">
            <summary>
            Accept a <see cref="T:Microsoft.OData.UriParser.QueryNodeVisitor`1"/> that walks a tree of <see cref="T:Microsoft.OData.UriParser.QueryNode"/>s.
            </summary>
            <typeparam name="T">Type that the visitor will return after visiting this token.</typeparam>
            <param name="visitor">An implementation of the visitor interface.</param>
            <returns>An object whose type is determined by the type parameter of the visitor.</returns>
            <exception cref="T:System.ArgumentNullException">Throws if the input visitor is null.</exception>
        </member>
        <member name="T:Microsoft.OData.UriParser.AllNode">
            <summary>
            Query node representing an All query.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.AllNode.#ctor(System.Collections.ObjectModel.Collection{Microsoft.OData.UriParser.RangeVariable})">
            <summary>
            Create an AllNode
            </summary>
            <param name="rangeVariables">The name of the rangeVariables list.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.AllNode.#ctor(System.Collections.ObjectModel.Collection{Microsoft.OData.UriParser.RangeVariable},Microsoft.OData.UriParser.RangeVariable)">
            <summary>
            Create an AllNode
            </summary>
            <param name="rangeVariables">The name of the rangeVariables list.</param>
            <param name="currentRangeVariable">The new range variable being added by this all node</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.AllNode.TypeReference">
            <summary>
            The resource type of the single value this node represents.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.AllNode.InternalKind">
            <summary>
            Gets the kind of this node.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.AllNode.Accept``1(Microsoft.OData.UriParser.QueryNodeVisitor{``0})">
            <summary>
            Accept a <see cref="T:Microsoft.OData.UriParser.QueryNodeVisitor`1"/> that walks a tree of <see cref="T:Microsoft.OData.UriParser.QueryNode"/>s.
            </summary>
            <typeparam name="T">Type that the visitor will return after visiting this token.</typeparam>
            <param name="visitor">An implementation of the visitor interface.</param>
            <returns>An object whose type is determined by the type parameter of the visitor.</returns>
            <exception cref="T:System.ArgumentNullException">Throws if the input visitor is null</exception>
        </member>
        <member name="T:Microsoft.OData.UriParser.AnnotationSegment">
            <summary>
            A segment representing an Annotation
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.AnnotationSegment.term">
            <summary>
            The annotation term referred to by this segment
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.AnnotationSegment.#ctor(Microsoft.OData.Edm.Vocabularies.IEdmTerm)">
            <summary>
            Build a segment based on an annotation term
            </summary>
            <param name="term">The annotation term that this segment represents.</param>
            <exception cref="T:System.ArgumentNullException">Throws if the input annotation term is null.</exception>
        </member>
        <member name="P:Microsoft.OData.UriParser.AnnotationSegment.Term">
            <summary>
            Gets the annotation term that this segment represents.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.AnnotationSegment.EdmType">
            <summary>
            Gets the <see cref="T:Microsoft.OData.Edm.IEdmType"/> of this <see cref="T:Microsoft.OData.UriParser.AnnotationSegment"/>.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.AnnotationSegment.TranslateWith``1(Microsoft.OData.UriParser.PathSegmentTranslator{``0})">
            <summary>
            Translate a <see cref="T:Microsoft.OData.UriParser.AnnotationSegment"/> using an instance of <see cref="T:Microsoft.OData.UriParser.PathSegmentTranslator`1"/>/>.
            </summary>
            <typeparam name="T">Type that the translator will return after visiting this token.</typeparam>
            <param name="translator">An implementation of the translator interface.</param>
            <returns>An object whose type is determined by the type parameter of the translator.</returns>
            <exception cref="T:System.ArgumentNullException">Throws if the input translator is null.</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.AnnotationSegment.HandleWith(Microsoft.OData.UriParser.PathSegmentHandler)">
            <summary>
            Handle a <see cref="T:Microsoft.OData.UriParser.AnnotationSegment"/> using an instance of <see cref="T:Microsoft.OData.UriParser.PathSegmentHandler"/>.
            </summary>
            <param name="handler">An implementation of the handler interface.</param>
            <exception cref="T:System.ArgumentNullException">Throws if the input handler is null.</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.AnnotationSegment.Equals(Microsoft.OData.UriParser.ODataPathSegment)">
            <summary>
            Check if this segment is equal to another segment.
            </summary>
            <param name="other">the other segment to check.</param>
            <returns>true if the other segment is equal.</returns>
            <exception cref="T:System.ArgumentNullException">Throws if the input other is null.</exception>
        </member>
        <member name="T:Microsoft.OData.UriParser.AnyNode">
            <summary>
            Query node representing an Any query.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.AnyNode.#ctor(System.Collections.ObjectModel.Collection{Microsoft.OData.UriParser.RangeVariable})">
            <summary>
            Create a AnyNode
            </summary>
            <param name="parameters">The name of the parameter list.</param>
        </member>
        <member name="M:Microsoft.OData.UriParser.AnyNode.#ctor(System.Collections.ObjectModel.Collection{Microsoft.OData.UriParser.RangeVariable},Microsoft.OData.UriParser.RangeVariable)">
            <summary>
            Create a AnyNode
            </summary>
            <param name="parameters">The name of the parameter list.</param>
            <param name="currentRangeVariable">The name of the new range variable being added by this AnyNode</param>
        </member>
        <member name="P:Microsoft.OData.UriParser.AnyNode.TypeReference">
            <summary>
            The resource type of the single value this node represents.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.AnyNode.InternalKind">
            <summary>
            Gets the kind of this node.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.AnyNode.Accept``1(Microsoft.OData.UriParser.QueryNodeVisitor{``0})">
            <summary>
            Accept a <see cref="T:Microsoft.OData.UriParser.QueryNodeVisitor`1"/> that walks a tree of <see cref="T:Microsoft.OData.UriParser.QueryNode"/>s.
            </summary>
            <typeparam name="T">Type that the visitor will return after visiting this token.</typeparam>
            <param name="visitor">An implementation of the visitor interface.</param>
            <returns>An object whose type is determined by the type parameter of the visitor.</returns>
            <exception cref="T:System.ArgumentNullException">Throws if the input visitor is null.</exception>
        </member>
        <member name="T:Microsoft.OData.UriParser.BatchReferenceSegment">
            <summary>
            A segment representing an alias to another url in a batch.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.BatchReferenceSegment.edmType">
            <summary>
            The <see cref="T:Microsoft.OData.Edm.IEdmType"/> of the resource that this placeholder <see cref="T:Microsoft.OData.UriParser.BatchReferenceSegment"/> represents.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.BatchReferenceSegment.entitySet">
            <summary>
            The entity set from the alias.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.BatchReferenceSegment.contentId">
            <summary>
            The contentId that this alias referrs to.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.BatchReferenceSegment.#ctor(System.String,Microsoft.OData.Edm.IEdmType,Microsoft.OData.Edm.IEdmEntitySetBase)">
            <summary>
            Build a BatchReferenceSegment
            </summary>
            <param name="contentId">The contentId of this segment is referring to</param>
            <param name="edmType">The <see cref="T:Microsoft.OData.Edm.IEdmType"/> of the resource that this placeholder <see cref="T:Microsoft.OData.UriParser.BatchReferenceSegment"/> represents.</param>
            <param name="entitySet">The resulting entity set</param>
            <exception cref="T:System.ArgumentNullException">Throws if the input edmType of contentID is null.</exception>
            <exception cref="T:Microsoft.OData.ODataException">Throws if the contentID is not in the right format.</exception>
        </member>
        <member name="P:Microsoft.OData.UriParser.BatchReferenceSegment.EdmType">
            <summary>
            Gets the <see cref="T:Microsoft.OData.Edm.IEdmType"/> of the resource that this placeholder <see cref="T:Microsoft.OData.UriParser.BatchReferenceSegment"/> represents.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.BatchReferenceSegment.EntitySet">
            <summary>
            Gets the resulting entity set for this batch reference segment.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.BatchReferenceSegment.ContentId">
            <summary>
            Gets the contentId this alias is referrring to
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.BatchReferenceSegment.TranslateWith``1(Microsoft.OData.UriParser.PathSegmentTranslator{``0})">
            <summary>
            Translate this <see cref="T:Microsoft.OData.UriParser.BatchReferenceSegment"/> into something else.
            </summary>
            <typeparam name="T">Type that the translator will return after translating this segment.</typeparam>
            <param name="translator">An implementation of the translator interface.</param>
            <returns>An object whose type is determined by the type parameter of the translator.</returns>
            <exception cref="T:System.ArgumentNullException">Throws if the input translator is null.</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.BatchReferenceSegment.HandleWith(Microsoft.OData.UriParser.PathSegmentHandler)">
            <summary>
            Handle a <see cref="T:Microsoft.OData.UriParser.BatchReferenceSegment"/> using an implementation of the <see cref="T:Microsoft.OData.UriParser.PathSegmentHandler"/> interface.
            </summary>
            <param name="handler">An implementation of the Handler interface.</param>
            <exception cref="T:System.ArgumentNullException">Throws if the input Handler is null.</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.BatchReferenceSegment.Equals(Microsoft.OData.UriParser.ODataPathSegment)">
            <summary>
            Check if this segment is equal to another segment.
            </summary>
            <param name="other">the other segment to check.</param>
            <returns>true if the other segment is equal.</returns>
        </member>
        <member name="T:Microsoft.OData.UriParser.BatchSegment">
            <summary>
            A segment representing $batch
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.BatchSegment.Instance">
            <summary>
            Gets the singleton instance of the batch segment.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.BatchSegment.#ctor">
            <summary>
            Build a segment to represent $batch.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.BatchSegment.EdmType">
            <summary>
            Gets the <see cref="T:Microsoft.OData.Edm.IEdmType"/> of this <see cref="T:Microsoft.OData.UriParser.BatchSegment"/>, which is always null.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.BatchSegment.TranslateWith``1(Microsoft.OData.UriParser.PathSegmentTranslator{``0})">
            <summary>
            Translate a <see cref="T:Microsoft.OData.UriParser.BatchSegment"/> into something else using an implementation of <see cref="T:Microsoft.OData.UriParser.PathSegmentTranslator`1"/>.
            </summary>
            <typeparam name="T">Type that the translator will return after translating this segment.</typeparam>
            <param name="translator">An implementation of the translator interface.</param>
            <returns>An object whose type is determined by the type parameter of the translator.</returns>
            <exception cref="T:System.ArgumentNullException">Throws if the input translator is null.</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.BatchSegment.HandleWith(Microsoft.OData.UriParser.PathSegmentHandler)">
            <summary>
            Handle a <see cref="T:Microsoft.OData.UriParser.BatchSegment"/> using an implementation of <see cref="T:Microsoft.OData.UriParser.PathSegmentHandler"/>.
            </summary>
            <param name="handler">An implementation of the Handler interface.</param>
            <exception cref="T:System.ArgumentNullException">Throws if the input handler is null.</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.BatchSegment.Equals(Microsoft.OData.UriParser.ODataPathSegment)">
            <summary>
            Check if this segment is equal to another segment.
            </summary>
            <param name="other">The other segment to check.</param>
            <returns>True if the other segment is equivalent to this one.</returns>
            <exception cref="T:System.ArgumentNullException">Throws if the input other is null</exception>
        </member>
        <member name="T:Microsoft.OData.UriParser.BinaryOperatorNode">
            <summary>
            Query node representing a binary operator.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.BinaryOperatorNode.operatorKind">
            <summary>
            The operator represented by this node.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.BinaryOperatorNode.left">
            <summary>
            The left operand.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.BinaryOperatorNode.right">
            <summary>
            The right operand.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.BinaryOperatorNode.typeReference">
            <summary>
            Cache for the TypeReference after it has been calculated for the current state of the node.
            This can be an expensive calculation so we want to avoid doing it repeatedly.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.BinaryOperatorNode.#ctor(Microsoft.OData.UriParser.BinaryOperatorKind,Microsoft.OData.UriParser.SingleValueNode,Microsoft.OData.UriParser.SingleValueNode)">
            <summary>
            Create a BinaryOperatorNode
            </summary>
            <param name="operatorKind">The binary operator type.</param>
            <param name="left">The left operand.</param>
            <param name="right">The right operand.</param>
            <exception cref="T:System.ArgumentNullException">Throws if the left or right inputs are null.</exception>
            <exception cref="T:Microsoft.OData.ODataException">Throws if the two operands don't have the same type.</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.BinaryOperatorNode.#ctor(Microsoft.OData.UriParser.BinaryOperatorKind,Microsoft.OData.UriParser.SingleValueNode,Microsoft.OData.UriParser.SingleValueNode,Microsoft.OData.Edm.IEdmTypeReference)">
            <summary>
            Create a BinaryOperatorNode
            </summary>
            <param name="operatorKind">The binary operator type.</param>
            <param name="left">The left operand.</param>
            <param name="right">The right operand.</param>
            <param name="typeReference">The result typeReference.</param>
            <exception cref="T:System.ArgumentNullException">Throws if the left or right inputs are null.</exception>
        </member>
        <member name="P:Microsoft.OData.UriParser.BinaryOperatorNode.OperatorKind">
            <summary>
            Gets the operator represented by this node.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.BinaryOperatorNode.Left">
            <summary>
            Gets the left operand.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.BinaryOperatorNode.Right">
            <summary>
            Gets the right operand.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.BinaryOperatorNode.TypeReference">
            <summary>
            Gets the resource type of the single value this node represents.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.BinaryOperatorNode.InternalKind">
            <summary>
            Gets the kind of this node.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.BinaryOperatorNode.Accept``1(Microsoft.OData.UriParser.QueryNodeVisitor{``0})">
            <summary>
            Accept a <see cref="T:Microsoft.OData.UriParser.QueryNodeVisitor`1"/> that walks a tree of <see cref="T:Microsoft.OData.UriParser.QueryNode"/>s.
            </summary>
            <typeparam name="T">Type that the visitor will return after visiting this token.</typeparam>
            <param name="visitor">An implementation of the visitor interface.</param>
            <returns>An object whose type is determined by the type parameter of the visitor.</returns>
            <exception cref="T:System.ArgumentNullException">throws if the input visitor is null.</exception>
        </member>
        <member name="T:Microsoft.OData.UriParser.CollectionComplexNode">
            <summary>
            Node represents a collection complex property.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.CollectionComplexNode.source">
            <summary>
            The resource node containing the property.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.CollectionComplexNode.property">
            <summary>
            The EDM property which is to be accessed.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.CollectionComplexNode.itemType">
            <summary>
            The complex type of a single item from the collection represented by this node.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.CollectionComplexNode.collectionTypeReference">
            <summary>
            The type of the collection represented by this node.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.CollectionComplexNode.navigationSource">
            <summary>
            The navigation source that our collection comes from.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.CollectionComplexNode.#ctor(Microsoft.OData.UriParser.SingleResourceNode,Microsoft.OData.Edm.IEdmProperty)">
            <summary>
            Constructs a new <see cref="T:Microsoft.OData.UriParser.CollectionComplexNode"/>.
            </summary>
            <param name="source">The value containing the property.</param>
            <param name="property">The EDM property which is to be accessed.</param>
            <exception cref="T:System.ArgumentNullException">Throws if the input source or property is null.</exception>
            <exception cref="T:System.ArgumentException">Throws if the input property is not a collection of structural properties</exception>
        </member>
        <member name="M:Microsoft.OData.UriParser.CollectionComplexNode.#ctor(Microsoft.OData.Edm.IEdmNavigationSource,Microsoft.OData.Edm.IEdmProperty)">
            <summary>
            Constructs a new <see cref="T:Microsoft.OData.UriParser.CollectionComplexNode"/>.
            </summary>
            <param name="navigationSource">The navigation source containing the property.</param>
            <param name="property">The EDM property which is to be accessed.</param>
            <exception cref="T:System.ArgumentNullException">Throws if the input source or property is null.</exception>
            <exception cref="T:System.ArgumentException">Throws if the input property is not a collection of structural properties</exception>
        </member>
        <member name="P:Microsoft.OData.UriParser.CollectionComplexNode.Source">
            <summary>
            Gets the resource node containing the property.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.CollectionComplexNode.Property">
            <summary>
            Gets the EDM property which is to be accessed.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.CollectionComplexNode.ItemType">
            <summary>
            Gets the type of a single item from the collection represented by this node.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.CollectionComplexNode.CollectionType">
            <summary>
            The type of the collection represented by this node.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.CollectionComplexNode.ItemStructuredType">
            <summary>
            Gets the structured type of a single item from the collection represented by this node.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.CollectionComplexNode.NavigationSource">
            <summary>
            Gets the navigation source that our collection comes from.
            </summary>
        </member>
        <member name="P:Microsoft.OData.UriParser.CollectionComplexNode.InternalKind">
            <summary>
            Gets the kind of this node.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.CollectionComplexNode.Accept``1(Microsoft.OData.UriParser.QueryNodeVisitor{``0})">
            <summary>
            Accept a <see cref="T:Microsoft.OData.UriParser.QueryNodeVisitor`1"/> to walk a tree of <see cref="T:Microsoft.OData.UriParser.QueryNode"/>s.
            </summary>
            <typeparam name="T">Type that the visitor will return after visiting this token.</typeparam>
            <param name="visitor">An implementation of the visitor interface.</param>
            <returns>An object whose type is determined by the type parameter of the visitor.</returns>
            <exception cref="T:System.ArgumentNullException">Throws if the input visitor is null.</exception>
        </member>
        <member name="T:Microsoft.OData.UriParser.CollectionConstantNode">
            <summary>
            Node representing a constant value, can either be primitive, complex, entity, or collection value.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.CollectionConstantNode.collection">
            <summary>
            Collection of ConstantNodes.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.CollectionConstantNode.itemType">
            <summary>
            Cache for the TypeReference after it has been calculated for the current state of the node.
            </summary>
        </member>
        <member name="F:Microsoft.OData.UriParser.CollectionConstantNode.collectionTypeReference">
            <summary>
            The type of the collection represented by this node.
            </summary>
        </member>
        <member name="M:Microsoft.OData.UriParser.CollectionConstantNode.#ctor(System.Collections.Generic.IEnumerable{System.Object},System.String,Microsoft.OData.Edm.IEdmCollectionTypeReference)">
            <summary>
            Create a CollectionConstantNode
            </summary>
       &n