Lines Matching refs:message
49 /// Merges data from the given byte array into an existing message.
51 /// <param name="message">The message to merge the data into.</param>
53 public static void MergeFrom(this IMessage message, byte[] data) =>
54 MergeFrom(message, data, false, null);
57 /// Merges data from the given byte array slice into an existing message.
59 /// <param name="message">The message to merge the data into.</param>
63 public static void MergeFrom(this IMessage message, byte[] data, int offset, int length) =>
64 MergeFrom(message, data, offset, length, false, null);
67 /// Merges data from the given byte string into an existing message.
69 /// <param name="message">The message to merge the data into.</param>
71 public static void MergeFrom(this IMessage message, ByteString data) =>
72 MergeFrom(message, data, false, null);
75 /// Merges data from the given stream into an existing message.
77 /// <param name="message">The message to merge the data into.</param>
79 public static void MergeFrom(this IMessage message, Stream input) =>
80 MergeFrom(message, input, false, null);
83 /// Merges length-delimited data from the given stream into an existing message.
89 /// <param name="message">The message to merge the data into.</param>
91 public static void MergeDelimitedFrom(this IMessage message, Stream input) =>
92 MergeDelimitedFrom(message, input, false, null);
95 /// Converts the given message into a byte array in protobuf encoding.
97 /// <param name="message">The message to convert.</param>
98 /// <returns>The message data as a byte array.</returns>
99 public static byte[] ToByteArray(this IMessage message)
101 ProtoPreconditions.CheckNotNull(message, "message");
102 byte[] result = new byte[message.CalculateSize()];
104 message.WriteTo(output);
110 /// Writes the given message data to the given stream in protobuf encoding.
112 /// <param name="message">The message to write to the stream.</param>
114 public static void WriteTo(this IMessage message, Stream output)
116 ProtoPreconditions.CheckNotNull(message, "message");
119 message.WriteTo(codedOutput);
124 /// Writes the length and then data of the given message to a stream.
126 /// <param name="message">The message to write.</param>
128 public static void WriteDelimitedTo(this IMessage message, Stream output)
130 ProtoPreconditions.CheckNotNull(message, "message");
133 codedOutput.WriteLength(message.CalculateSize());
134 message.WriteTo(codedOutput);
139 /// Converts the given message into a byte string in protobuf encoding.
141 /// <param name="message">The message to convert.</param>
142 /// <returns>The message data as a byte string.</returns>
143 public static ByteString ToByteString(this IMessage message)
145 ProtoPreconditions.CheckNotNull(message, "message");
146 return ByteString.AttachBytes(message.ToByteArray());
150 /// Writes the given message data to the given buffer writer in protobuf encoding.
152 /// <param name="message">The message to write to the stream.</param>
155 public static void WriteTo(this IMessage message, IBufferWriter<byte> output)
157 ProtoPreconditions.CheckNotNull(message, nameof(message));
161 WritingPrimitivesMessages.WriteRawMessage(ref ctx, message);
166 /// Writes the given message data to the given span in protobuf encoding.
168 /// of the message exactly, otherwise an exception is thrown.
170 /// <param name="message">The message to write to the stream.</param>
171 /// <param name="output">The span to write to. Size must match size of the message exactly.</param>
173 public static void WriteTo(this IMessage message, Span<byte> output)
175 ProtoPreconditions.CheckNotNull(message, nameof(message));
178 WritingPrimitivesMessages.WriteRawMessage(ref ctx, message);
183 /// Checks if all required fields in a message have values set. For proto3 messages, this returns true
185 public static bool IsInitialized(this IMessage message)
187 if (message.Descriptor.File.Syntax == Syntax.Proto3)
192 if (!message.Descriptor.IsExtensionsInitialized(message))
197 return message.Descriptor
207 var map = (IDictionary)f.Accessor.GetValue(message);
217 var enumerable = (IEnumerable)f.Accessor.GetValue(message);
222 if (f.Accessor.HasValue(message))
224 return ((IMessage)f.Accessor.GetValue(message)).IsInitialized();
233 return f.Accessor.HasValue(message);
243 internal static void MergeFrom(this IMessage message, byte[] data, bool discardUnknownFields, ExtensionRegistry registry)
245 ProtoPreconditions.CheckNotNull(message, "message");
250 message.MergeFrom(input);
254 internal static void MergeFrom(this IMessage message, byte[] data, int offset, int length, bool discardUnknownFields, ExtensionRegistry registry)
256 ProtoPreconditions.CheckNotNull(message, "message");
261 message.MergeFrom(input);
265 internal static void MergeFrom(this IMessage message, ByteString data, bool discardUnknownFields, ExtensionRegistry registry)
267 ProtoPreconditions.CheckNotNull(message, "message");
272 message.MergeFrom(input);
276 internal static void MergeFrom(this IMessage message, Stream input, bool discardUnknownFields, ExtensionRegistry registry)
278 ProtoPreconditions.CheckNotNull(message, "message");
283 message.MergeFrom(codedInput);
288 internal static void MergeFrom(this IMessage message, ReadOnlySequence<byte> data, bool discardUnknownFields, ExtensionRegistry registry)
293 ParsingPrimitivesMessages.ReadRawMessage(ref ctx, message);
297 internal static void MergeDelimitedFrom(this IMessage message, Stream input, bool discardUnknownFields, ExtensionRegistry registry)
299 ProtoPreconditions.CheckNotNull(message, "message");
303 MergeFrom(message, limitedStream, discardUnknownFields, registry);