InputBotInlineResult.deserialize constructor

InputBotInlineResult.deserialize(
  1. BinaryReader reader
)

Deserialize.

Implementation

factory InputBotInlineResult.deserialize(BinaryReader reader) {
  // Read [InputBotInlineResult] fields.
  final flags = reader.readInt32();
  final id = reader.readString();
  final type = reader.readString();
  final hasTitleField = (flags & 2) != 0;
  final title = hasTitleField ? reader.readString() : null;
  final hasDescriptionField = (flags & 4) != 0;
  final description = hasDescriptionField ? reader.readString() : null;
  final hasUrlField = (flags & 8) != 0;
  final url = hasUrlField ? reader.readString() : null;
  final hasThumbField = (flags & 16) != 0;
  final thumb =
      hasThumbField ? reader.readObject() as InputWebDocumentBase : null;
  final hasContentField = (flags & 32) != 0;
  final content =
      hasContentField ? reader.readObject() as InputWebDocumentBase : null;
  final sendMessage = reader.readObject() as InputBotInlineMessageBase;

  // Construct [InputBotInlineResult] object.
  final returnValue = InputBotInlineResult(
    id: id,
    type: type,
    title: title,
    description: description,
    url: url,
    thumb: thumb,
    content: content,
    sendMessage: sendMessage,
  );

  // Now return the deserialized [InputBotInlineResult].
  return returnValue;
}