Ejemplo n.º 1
0
        /// <summary>
        /// Deserializes a KeyValue object from a stream.
        /// </summary>
        /// <param name="stream">The stream to deserialize from.</param>
        /// <param name="options">Options to use that can influence the deserialization process.</param>
        /// <returns>A <see cref="KVObject"/> representing the KeyValues structure encoded in the stream.</returns>
        public KVObject Deserialize(Stream stream, KVSerializerOptions options = null)
        {
            Require.NotNull(stream, nameof(stream));
            var builder = new KVObjectBuilder();

            using (var reader = MakeReader(stream, builder, options ?? KVSerializerOptions.DefaultOptions))
            {
                reader.ReadObject();
            }

            return(builder.GetObject());
        }
        public KVAppendingObjectBuilder(KVObjectBuilder originalBuilder)
        {
            Require.NotNull(originalBuilder, nameof(originalBuilder));

            this.originalBuilder = originalBuilder;
        }