<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Source</name>
    </assembly>
    <members>
        <member name="T:BsonSerializer">
            <summary>
            Implements the core NETFx ISerializer interface using Json.NET serializer.
            </summary>
            <nuget id="netfx-System.BsonSerializer" />
        </member>
        <member name="T:ISerializer">
            <summary>
            Implementations of this interface are able to serialize and 
            deserialize an object graph from a stream.
            </summary>
            <nuget id="netfx-System.ISerializer" />
        </member>
        <member name="M:ISerializer.Deserialize``1(System.IO.Stream)">
            <summary>
            Deserializes an object graph from the given stream.
            </summary>
            <returns>The deserialized object.</returns>
        </member>
        <member name="M:ISerializer.Serialize``1(System.IO.Stream,``0)">
            <summary>
            Serializes the provided object graph and writes it to the storage.
            </summary>
            <param name="stream">The stream to serialize the graph into.</param>
            <param name="graph">The object graph to be serialized.</param>
        </member>
        <member name="M:BsonSerializer.#ctor(Newtonsoft.Json.JsonSerializer)">
            <summary>
            Initializes a new instance of the <see cref="T:BsonSerializer"/> class.
            </summary>
            <param name="serializer">The underlying Json.NET serializer to use.</param>
        </member>
        <member name="M:BsonSerializer.Deserialize``1(System.IO.Stream)">
            <summary>
            Deserializes an object graph of type <typeparamref name="T"/> 
            from the given stream.
            </summary>
            <typeparam name="T">The type of object graph to deserialize.</typeparam>
            <param name="stream">The serialized Json stream.</param>
        </member>
        <member name="M:BsonSerializer.Serialize``1(System.IO.Stream,``0)">
            <summary>
            Serializes the given object graph as a binary json stream.
            </summary>
            <typeparam name="T">The type of object graph to serialize, inferred by the compiler from the passed-in <paramref name="graph"/>.</typeparam>
            <param name="stream">The stream to serialize into.</param>
            <param name="graph">The object graph to serialize.</param>
        </member>
        <member name="T:Guard">
            <summary>
            Common guard class for argument validation.
            </summary>
        </member>
        <member name="M:Guard.NotNull``1(System.Linq.Expressions.Expression{System.Func{``0}},``0)">
            <summary>
            Ensures the given <paramref name="value"/> is not null.
            Throws <see cref="T:System.ArgumentNullException"/> otherwise.
            </summary>
        </member>
        <member name="M:Guard.NotNullOrEmpty(System.Linq.Expressions.Expression{System.Func{System.String}},System.String)">
            <summary>
            Ensures the given string <paramref name="value"/> is not null or empty.
            Throws <see cref="T:System.ArgumentNullException"/> in the first case, or 
            <see cref="T:System.ArgumentException"/> in the latter.
            </summary>
        </member>
    </members>
</doc>
