|
@@ -31,7 +31,9 @@
|
|
|
#endregion
|
|
|
|
|
|
using System;
|
|
|
+using System.Buffers;
|
|
|
using System.IO;
|
|
|
+using System.Security;
|
|
|
|
|
|
namespace Google.Protobuf
|
|
|
{
|
|
@@ -113,6 +115,19 @@ namespace Google.Protobuf
|
|
|
return message;
|
|
|
}
|
|
|
|
|
|
+ /// <summary>
|
|
|
+ /// Parses a message from the given sequence.
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="data">The data to parse.</param>
|
|
|
+ /// <returns>The parsed message.</returns>
|
|
|
+ [SecuritySafeCritical]
|
|
|
+ public IMessage ParseFrom(ReadOnlySequence<byte> data)
|
|
|
+ {
|
|
|
+ IMessage message = factory();
|
|
|
+ message.MergeFrom(data, DiscardUnknownFields, Extensions);
|
|
|
+ return message;
|
|
|
+ }
|
|
|
+
|
|
|
/// <summary>
|
|
|
/// Parses a length-delimited message from the given stream.
|
|
|
/// </summary>
|
|
@@ -287,6 +302,19 @@ namespace Google.Protobuf
|
|
|
return message;
|
|
|
}
|
|
|
|
|
|
+ /// <summary>
|
|
|
+ /// Parses a message from the given sequence.
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="data">The data to parse.</param>
|
|
|
+ /// <returns>The parsed message.</returns>
|
|
|
+ [SecuritySafeCritical]
|
|
|
+ public new T ParseFrom(ReadOnlySequence<byte> data)
|
|
|
+ {
|
|
|
+ T message = factory();
|
|
|
+ message.MergeFrom(data, DiscardUnknownFields, Extensions);
|
|
|
+ return message;
|
|
|
+ }
|
|
|
+
|
|
|
/// <summary>
|
|
|
/// Parses a length-delimited message from the given stream.
|
|
|
/// </summary>
|