Files
Leeksov 4647310322 GLEGram 12.5 — Initial public release
Based on Swiftgram 12.5 (Telegram iOS 12.5).
All GLEGram features ported and organized in GLEGram/ folder.

Features: Ghost Mode, Saved Deleted Messages, Content Protection Bypass,
Font Replacement, Fake Profile, Chat Export, Plugin System, and more.

See CHANGELOG_12.5.md for full details.
2026-04-06 09:48:12 +03:00

2143 lines
100 KiB
Swift

public extension Api {
indirect enum MessageEntity: TypeConstructorDescription {
public class Cons_inputMessageEntityMentionName: TypeConstructorDescription {
public var offset: Int32
public var length: Int32
public var userId: Api.InputUser
public init(offset: Int32, length: Int32, userId: Api.InputUser) {
self.offset = offset
self.length = length
self.userId = userId
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("inputMessageEntityMentionName", [("offset", self.offset as Any), ("length", self.length as Any), ("userId", self.userId as Any)])
}
}
public class Cons_messageEntityBankCard: TypeConstructorDescription {
public var offset: Int32
public var length: Int32
public init(offset: Int32, length: Int32) {
self.offset = offset
self.length = length
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageEntityBankCard", [("offset", self.offset as Any), ("length", self.length as Any)])
}
}
public class Cons_messageEntityBlockquote: TypeConstructorDescription {
public var flags: Int32
public var offset: Int32
public var length: Int32
public init(flags: Int32, offset: Int32, length: Int32) {
self.flags = flags
self.offset = offset
self.length = length
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageEntityBlockquote", [("flags", self.flags as Any), ("offset", self.offset as Any), ("length", self.length as Any)])
}
}
public class Cons_messageEntityBold: TypeConstructorDescription {
public var offset: Int32
public var length: Int32
public init(offset: Int32, length: Int32) {
self.offset = offset
self.length = length
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageEntityBold", [("offset", self.offset as Any), ("length", self.length as Any)])
}
}
public class Cons_messageEntityBotCommand: TypeConstructorDescription {
public var offset: Int32
public var length: Int32
public init(offset: Int32, length: Int32) {
self.offset = offset
self.length = length
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageEntityBotCommand", [("offset", self.offset as Any), ("length", self.length as Any)])
}
}
public class Cons_messageEntityCashtag: TypeConstructorDescription {
public var offset: Int32
public var length: Int32
public init(offset: Int32, length: Int32) {
self.offset = offset
self.length = length
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageEntityCashtag", [("offset", self.offset as Any), ("length", self.length as Any)])
}
}
public class Cons_messageEntityCode: TypeConstructorDescription {
public var offset: Int32
public var length: Int32
public init(offset: Int32, length: Int32) {
self.offset = offset
self.length = length
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageEntityCode", [("offset", self.offset as Any), ("length", self.length as Any)])
}
}
public class Cons_messageEntityCustomEmoji: TypeConstructorDescription {
public var offset: Int32
public var length: Int32
public var documentId: Int64
public init(offset: Int32, length: Int32, documentId: Int64) {
self.offset = offset
self.length = length
self.documentId = documentId
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageEntityCustomEmoji", [("offset", self.offset as Any), ("length", self.length as Any), ("documentId", self.documentId as Any)])
}
}
public class Cons_messageEntityEmail: TypeConstructorDescription {
public var offset: Int32
public var length: Int32
public init(offset: Int32, length: Int32) {
self.offset = offset
self.length = length
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageEntityEmail", [("offset", self.offset as Any), ("length", self.length as Any)])
}
}
public class Cons_messageEntityFormattedDate: TypeConstructorDescription {
public var flags: Int32
public var offset: Int32
public var length: Int32
public var date: Int32
public init(flags: Int32, offset: Int32, length: Int32, date: Int32) {
self.flags = flags
self.offset = offset
self.length = length
self.date = date
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageEntityFormattedDate", [("flags", self.flags as Any), ("offset", self.offset as Any), ("length", self.length as Any), ("date", self.date as Any)])
}
}
public class Cons_messageEntityHashtag: TypeConstructorDescription {
public var offset: Int32
public var length: Int32
public init(offset: Int32, length: Int32) {
self.offset = offset
self.length = length
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageEntityHashtag", [("offset", self.offset as Any), ("length", self.length as Any)])
}
}
public class Cons_messageEntityItalic: TypeConstructorDescription {
public var offset: Int32
public var length: Int32
public init(offset: Int32, length: Int32) {
self.offset = offset
self.length = length
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageEntityItalic", [("offset", self.offset as Any), ("length", self.length as Any)])
}
}
public class Cons_messageEntityMention: TypeConstructorDescription {
public var offset: Int32
public var length: Int32
public init(offset: Int32, length: Int32) {
self.offset = offset
self.length = length
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageEntityMention", [("offset", self.offset as Any), ("length", self.length as Any)])
}
}
public class Cons_messageEntityMentionName: TypeConstructorDescription {
public var offset: Int32
public var length: Int32
public var userId: Int64
public init(offset: Int32, length: Int32, userId: Int64) {
self.offset = offset
self.length = length
self.userId = userId
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageEntityMentionName", [("offset", self.offset as Any), ("length", self.length as Any), ("userId", self.userId as Any)])
}
}
public class Cons_messageEntityPhone: TypeConstructorDescription {
public var offset: Int32
public var length: Int32
public init(offset: Int32, length: Int32) {
self.offset = offset
self.length = length
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageEntityPhone", [("offset", self.offset as Any), ("length", self.length as Any)])
}
}
public class Cons_messageEntityPre: TypeConstructorDescription {
public var offset: Int32
public var length: Int32
public var language: String
public init(offset: Int32, length: Int32, language: String) {
self.offset = offset
self.length = length
self.language = language
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageEntityPre", [("offset", self.offset as Any), ("length", self.length as Any), ("language", self.language as Any)])
}
}
public class Cons_messageEntitySpoiler: TypeConstructorDescription {
public var offset: Int32
public var length: Int32
public init(offset: Int32, length: Int32) {
self.offset = offset
self.length = length
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageEntitySpoiler", [("offset", self.offset as Any), ("length", self.length as Any)])
}
}
public class Cons_messageEntityStrike: TypeConstructorDescription {
public var offset: Int32
public var length: Int32
public init(offset: Int32, length: Int32) {
self.offset = offset
self.length = length
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageEntityStrike", [("offset", self.offset as Any), ("length", self.length as Any)])
}
}
public class Cons_messageEntityTextUrl: TypeConstructorDescription {
public var offset: Int32
public var length: Int32
public var url: String
public init(offset: Int32, length: Int32, url: String) {
self.offset = offset
self.length = length
self.url = url
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageEntityTextUrl", [("offset", self.offset as Any), ("length", self.length as Any), ("url", self.url as Any)])
}
}
public class Cons_messageEntityUnderline: TypeConstructorDescription {
public var offset: Int32
public var length: Int32
public init(offset: Int32, length: Int32) {
self.offset = offset
self.length = length
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageEntityUnderline", [("offset", self.offset as Any), ("length", self.length as Any)])
}
}
public class Cons_messageEntityUnknown: TypeConstructorDescription {
public var offset: Int32
public var length: Int32
public init(offset: Int32, length: Int32) {
self.offset = offset
self.length = length
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageEntityUnknown", [("offset", self.offset as Any), ("length", self.length as Any)])
}
}
public class Cons_messageEntityUrl: TypeConstructorDescription {
public var offset: Int32
public var length: Int32
public init(offset: Int32, length: Int32) {
self.offset = offset
self.length = length
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageEntityUrl", [("offset", self.offset as Any), ("length", self.length as Any)])
}
}
case inputMessageEntityMentionName(Cons_inputMessageEntityMentionName)
case messageEntityBankCard(Cons_messageEntityBankCard)
case messageEntityBlockquote(Cons_messageEntityBlockquote)
case messageEntityBold(Cons_messageEntityBold)
case messageEntityBotCommand(Cons_messageEntityBotCommand)
case messageEntityCashtag(Cons_messageEntityCashtag)
case messageEntityCode(Cons_messageEntityCode)
case messageEntityCustomEmoji(Cons_messageEntityCustomEmoji)
case messageEntityEmail(Cons_messageEntityEmail)
case messageEntityFormattedDate(Cons_messageEntityFormattedDate)
case messageEntityHashtag(Cons_messageEntityHashtag)
case messageEntityItalic(Cons_messageEntityItalic)
case messageEntityMention(Cons_messageEntityMention)
case messageEntityMentionName(Cons_messageEntityMentionName)
case messageEntityPhone(Cons_messageEntityPhone)
case messageEntityPre(Cons_messageEntityPre)
case messageEntitySpoiler(Cons_messageEntitySpoiler)
case messageEntityStrike(Cons_messageEntityStrike)
case messageEntityTextUrl(Cons_messageEntityTextUrl)
case messageEntityUnderline(Cons_messageEntityUnderline)
case messageEntityUnknown(Cons_messageEntityUnknown)
case messageEntityUrl(Cons_messageEntityUrl)
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
switch self {
case .inputMessageEntityMentionName(let _data):
if boxed {
buffer.appendInt32(546203849)
}
serializeInt32(_data.offset, buffer: buffer, boxed: false)
serializeInt32(_data.length, buffer: buffer, boxed: false)
_data.userId.serialize(buffer, true)
break
case .messageEntityBankCard(let _data):
if boxed {
buffer.appendInt32(1981704948)
}
serializeInt32(_data.offset, buffer: buffer, boxed: false)
serializeInt32(_data.length, buffer: buffer, boxed: false)
break
case .messageEntityBlockquote(let _data):
if boxed {
buffer.appendInt32(-238245204)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
serializeInt32(_data.offset, buffer: buffer, boxed: false)
serializeInt32(_data.length, buffer: buffer, boxed: false)
break
case .messageEntityBold(let _data):
if boxed {
buffer.appendInt32(-1117713463)
}
serializeInt32(_data.offset, buffer: buffer, boxed: false)
serializeInt32(_data.length, buffer: buffer, boxed: false)
break
case .messageEntityBotCommand(let _data):
if boxed {
buffer.appendInt32(1827637959)
}
serializeInt32(_data.offset, buffer: buffer, boxed: false)
serializeInt32(_data.length, buffer: buffer, boxed: false)
break
case .messageEntityCashtag(let _data):
if boxed {
buffer.appendInt32(1280209983)
}
serializeInt32(_data.offset, buffer: buffer, boxed: false)
serializeInt32(_data.length, buffer: buffer, boxed: false)
break
case .messageEntityCode(let _data):
if boxed {
buffer.appendInt32(681706865)
}
serializeInt32(_data.offset, buffer: buffer, boxed: false)
serializeInt32(_data.length, buffer: buffer, boxed: false)
break
case .messageEntityCustomEmoji(let _data):
if boxed {
buffer.appendInt32(-925956616)
}
serializeInt32(_data.offset, buffer: buffer, boxed: false)
serializeInt32(_data.length, buffer: buffer, boxed: false)
serializeInt64(_data.documentId, buffer: buffer, boxed: false)
break
case .messageEntityEmail(let _data):
if boxed {
buffer.appendInt32(1692693954)
}
serializeInt32(_data.offset, buffer: buffer, boxed: false)
serializeInt32(_data.length, buffer: buffer, boxed: false)
break
case .messageEntityFormattedDate(let _data):
if boxed {
buffer.appendInt32(-1874147385)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
serializeInt32(_data.offset, buffer: buffer, boxed: false)
serializeInt32(_data.length, buffer: buffer, boxed: false)
serializeInt32(_data.date, buffer: buffer, boxed: false)
break
case .messageEntityHashtag(let _data):
if boxed {
buffer.appendInt32(1868782349)
}
serializeInt32(_data.offset, buffer: buffer, boxed: false)
serializeInt32(_data.length, buffer: buffer, boxed: false)
break
case .messageEntityItalic(let _data):
if boxed {
buffer.appendInt32(-2106619040)
}
serializeInt32(_data.offset, buffer: buffer, boxed: false)
serializeInt32(_data.length, buffer: buffer, boxed: false)
break
case .messageEntityMention(let _data):
if boxed {
buffer.appendInt32(-100378723)
}
serializeInt32(_data.offset, buffer: buffer, boxed: false)
serializeInt32(_data.length, buffer: buffer, boxed: false)
break
case .messageEntityMentionName(let _data):
if boxed {
buffer.appendInt32(-595914432)
}
serializeInt32(_data.offset, buffer: buffer, boxed: false)
serializeInt32(_data.length, buffer: buffer, boxed: false)
serializeInt64(_data.userId, buffer: buffer, boxed: false)
break
case .messageEntityPhone(let _data):
if boxed {
buffer.appendInt32(-1687559349)
}
serializeInt32(_data.offset, buffer: buffer, boxed: false)
serializeInt32(_data.length, buffer: buffer, boxed: false)
break
case .messageEntityPre(let _data):
if boxed {
buffer.appendInt32(1938967520)
}
serializeInt32(_data.offset, buffer: buffer, boxed: false)
serializeInt32(_data.length, buffer: buffer, boxed: false)
serializeString(_data.language, buffer: buffer, boxed: false)
break
case .messageEntitySpoiler(let _data):
if boxed {
buffer.appendInt32(852137487)
}
serializeInt32(_data.offset, buffer: buffer, boxed: false)
serializeInt32(_data.length, buffer: buffer, boxed: false)
break
case .messageEntityStrike(let _data):
if boxed {
buffer.appendInt32(-1090087980)
}
serializeInt32(_data.offset, buffer: buffer, boxed: false)
serializeInt32(_data.length, buffer: buffer, boxed: false)
break
case .messageEntityTextUrl(let _data):
if boxed {
buffer.appendInt32(1990644519)
}
serializeInt32(_data.offset, buffer: buffer, boxed: false)
serializeInt32(_data.length, buffer: buffer, boxed: false)
serializeString(_data.url, buffer: buffer, boxed: false)
break
case .messageEntityUnderline(let _data):
if boxed {
buffer.appendInt32(-1672577397)
}
serializeInt32(_data.offset, buffer: buffer, boxed: false)
serializeInt32(_data.length, buffer: buffer, boxed: false)
break
case .messageEntityUnknown(let _data):
if boxed {
buffer.appendInt32(-1148011883)
}
serializeInt32(_data.offset, buffer: buffer, boxed: false)
serializeInt32(_data.length, buffer: buffer, boxed: false)
break
case .messageEntityUrl(let _data):
if boxed {
buffer.appendInt32(1859134776)
}
serializeInt32(_data.offset, buffer: buffer, boxed: false)
serializeInt32(_data.length, buffer: buffer, boxed: false)
break
}
}
public func descriptionFields() -> (String, [(String, Any)]) {
switch self {
case .inputMessageEntityMentionName(let _data):
return ("inputMessageEntityMentionName", [("offset", _data.offset as Any), ("length", _data.length as Any), ("userId", _data.userId as Any)])
case .messageEntityBankCard(let _data):
return ("messageEntityBankCard", [("offset", _data.offset as Any), ("length", _data.length as Any)])
case .messageEntityBlockquote(let _data):
return ("messageEntityBlockquote", [("flags", _data.flags as Any), ("offset", _data.offset as Any), ("length", _data.length as Any)])
case .messageEntityBold(let _data):
return ("messageEntityBold", [("offset", _data.offset as Any), ("length", _data.length as Any)])
case .messageEntityBotCommand(let _data):
return ("messageEntityBotCommand", [("offset", _data.offset as Any), ("length", _data.length as Any)])
case .messageEntityCashtag(let _data):
return ("messageEntityCashtag", [("offset", _data.offset as Any), ("length", _data.length as Any)])
case .messageEntityCode(let _data):
return ("messageEntityCode", [("offset", _data.offset as Any), ("length", _data.length as Any)])
case .messageEntityCustomEmoji(let _data):
return ("messageEntityCustomEmoji", [("offset", _data.offset as Any), ("length", _data.length as Any), ("documentId", _data.documentId as Any)])
case .messageEntityEmail(let _data):
return ("messageEntityEmail", [("offset", _data.offset as Any), ("length", _data.length as Any)])
case .messageEntityFormattedDate(let _data):
return ("messageEntityFormattedDate", [("flags", _data.flags as Any), ("offset", _data.offset as Any), ("length", _data.length as Any), ("date", _data.date as Any)])
case .messageEntityHashtag(let _data):
return ("messageEntityHashtag", [("offset", _data.offset as Any), ("length", _data.length as Any)])
case .messageEntityItalic(let _data):
return ("messageEntityItalic", [("offset", _data.offset as Any), ("length", _data.length as Any)])
case .messageEntityMention(let _data):
return ("messageEntityMention", [("offset", _data.offset as Any), ("length", _data.length as Any)])
case .messageEntityMentionName(let _data):
return ("messageEntityMentionName", [("offset", _data.offset as Any), ("length", _data.length as Any), ("userId", _data.userId as Any)])
case .messageEntityPhone(let _data):
return ("messageEntityPhone", [("offset", _data.offset as Any), ("length", _data.length as Any)])
case .messageEntityPre(let _data):
return ("messageEntityPre", [("offset", _data.offset as Any), ("length", _data.length as Any), ("language", _data.language as Any)])
case .messageEntitySpoiler(let _data):
return ("messageEntitySpoiler", [("offset", _data.offset as Any), ("length", _data.length as Any)])
case .messageEntityStrike(let _data):
return ("messageEntityStrike", [("offset", _data.offset as Any), ("length", _data.length as Any)])
case .messageEntityTextUrl(let _data):
return ("messageEntityTextUrl", [("offset", _data.offset as Any), ("length", _data.length as Any), ("url", _data.url as Any)])
case .messageEntityUnderline(let _data):
return ("messageEntityUnderline", [("offset", _data.offset as Any), ("length", _data.length as Any)])
case .messageEntityUnknown(let _data):
return ("messageEntityUnknown", [("offset", _data.offset as Any), ("length", _data.length as Any)])
case .messageEntityUrl(let _data):
return ("messageEntityUrl", [("offset", _data.offset as Any), ("length", _data.length as Any)])
}
}
public static func parse_inputMessageEntityMentionName(_ reader: BufferReader) -> MessageEntity? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
var _3: Api.InputUser?
if let signature = reader.readInt32() {
_3 = Api.parse(reader, signature: signature) as? Api.InputUser
}
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = _3 != nil
if _c1 && _c2 && _c3 {
return Api.MessageEntity.inputMessageEntityMentionName(Cons_inputMessageEntityMentionName(offset: _1!, length: _2!, userId: _3!))
}
else {
return nil
}
}
public static func parse_messageEntityBankCard(_ reader: BufferReader) -> MessageEntity? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.MessageEntity.messageEntityBankCard(Cons_messageEntityBankCard(offset: _1!, length: _2!))
}
else {
return nil
}
}
public static func parse_messageEntityBlockquote(_ reader: BufferReader) -> MessageEntity? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
var _3: Int32?
_3 = reader.readInt32()
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = _3 != nil
if _c1 && _c2 && _c3 {
return Api.MessageEntity.messageEntityBlockquote(Cons_messageEntityBlockquote(flags: _1!, offset: _2!, length: _3!))
}
else {
return nil
}
}
public static func parse_messageEntityBold(_ reader: BufferReader) -> MessageEntity? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.MessageEntity.messageEntityBold(Cons_messageEntityBold(offset: _1!, length: _2!))
}
else {
return nil
}
}
public static func parse_messageEntityBotCommand(_ reader: BufferReader) -> MessageEntity? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.MessageEntity.messageEntityBotCommand(Cons_messageEntityBotCommand(offset: _1!, length: _2!))
}
else {
return nil
}
}
public static func parse_messageEntityCashtag(_ reader: BufferReader) -> MessageEntity? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.MessageEntity.messageEntityCashtag(Cons_messageEntityCashtag(offset: _1!, length: _2!))
}
else {
return nil
}
}
public static func parse_messageEntityCode(_ reader: BufferReader) -> MessageEntity? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.MessageEntity.messageEntityCode(Cons_messageEntityCode(offset: _1!, length: _2!))
}
else {
return nil
}
}
public static func parse_messageEntityCustomEmoji(_ reader: BufferReader) -> MessageEntity? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
var _3: Int64?
_3 = reader.readInt64()
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = _3 != nil
if _c1 && _c2 && _c3 {
return Api.MessageEntity.messageEntityCustomEmoji(Cons_messageEntityCustomEmoji(offset: _1!, length: _2!, documentId: _3!))
}
else {
return nil
}
}
public static func parse_messageEntityEmail(_ reader: BufferReader) -> MessageEntity? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.MessageEntity.messageEntityEmail(Cons_messageEntityEmail(offset: _1!, length: _2!))
}
else {
return nil
}
}
public static func parse_messageEntityFormattedDate(_ reader: BufferReader) -> MessageEntity? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
var _3: Int32?
_3 = reader.readInt32()
var _4: Int32?
_4 = reader.readInt32()
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = _3 != nil
let _c4 = _4 != nil
if _c1 && _c2 && _c3 && _c4 {
return Api.MessageEntity.messageEntityFormattedDate(Cons_messageEntityFormattedDate(flags: _1!, offset: _2!, length: _3!, date: _4!))
}
else {
return nil
}
}
public static func parse_messageEntityHashtag(_ reader: BufferReader) -> MessageEntity? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.MessageEntity.messageEntityHashtag(Cons_messageEntityHashtag(offset: _1!, length: _2!))
}
else {
return nil
}
}
public static func parse_messageEntityItalic(_ reader: BufferReader) -> MessageEntity? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.MessageEntity.messageEntityItalic(Cons_messageEntityItalic(offset: _1!, length: _2!))
}
else {
return nil
}
}
public static func parse_messageEntityMention(_ reader: BufferReader) -> MessageEntity? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.MessageEntity.messageEntityMention(Cons_messageEntityMention(offset: _1!, length: _2!))
}
else {
return nil
}
}
public static func parse_messageEntityMentionName(_ reader: BufferReader) -> MessageEntity? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
var _3: Int64?
_3 = reader.readInt64()
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = _3 != nil
if _c1 && _c2 && _c3 {
return Api.MessageEntity.messageEntityMentionName(Cons_messageEntityMentionName(offset: _1!, length: _2!, userId: _3!))
}
else {
return nil
}
}
public static func parse_messageEntityPhone(_ reader: BufferReader) -> MessageEntity? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.MessageEntity.messageEntityPhone(Cons_messageEntityPhone(offset: _1!, length: _2!))
}
else {
return nil
}
}
public static func parse_messageEntityPre(_ reader: BufferReader) -> MessageEntity? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
var _3: String?
_3 = parseString(reader)
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = _3 != nil
if _c1 && _c2 && _c3 {
return Api.MessageEntity.messageEntityPre(Cons_messageEntityPre(offset: _1!, length: _2!, language: _3!))
}
else {
return nil
}
}
public static func parse_messageEntitySpoiler(_ reader: BufferReader) -> MessageEntity? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.MessageEntity.messageEntitySpoiler(Cons_messageEntitySpoiler(offset: _1!, length: _2!))
}
else {
return nil
}
}
public static func parse_messageEntityStrike(_ reader: BufferReader) -> MessageEntity? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.MessageEntity.messageEntityStrike(Cons_messageEntityStrike(offset: _1!, length: _2!))
}
else {
return nil
}
}
public static func parse_messageEntityTextUrl(_ reader: BufferReader) -> MessageEntity? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
var _3: String?
_3 = parseString(reader)
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = _3 != nil
if _c1 && _c2 && _c3 {
return Api.MessageEntity.messageEntityTextUrl(Cons_messageEntityTextUrl(offset: _1!, length: _2!, url: _3!))
}
else {
return nil
}
}
public static func parse_messageEntityUnderline(_ reader: BufferReader) -> MessageEntity? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.MessageEntity.messageEntityUnderline(Cons_messageEntityUnderline(offset: _1!, length: _2!))
}
else {
return nil
}
}
public static func parse_messageEntityUnknown(_ reader: BufferReader) -> MessageEntity? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.MessageEntity.messageEntityUnknown(Cons_messageEntityUnknown(offset: _1!, length: _2!))
}
else {
return nil
}
}
public static func parse_messageEntityUrl(_ reader: BufferReader) -> MessageEntity? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.MessageEntity.messageEntityUrl(Cons_messageEntityUrl(offset: _1!, length: _2!))
}
else {
return nil
}
}
}
}
public extension Api {
indirect enum MessageExtendedMedia: TypeConstructorDescription {
public class Cons_messageExtendedMedia: TypeConstructorDescription {
public var media: Api.MessageMedia
public init(media: Api.MessageMedia) {
self.media = media
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageExtendedMedia", [("media", self.media as Any)])
}
}
public class Cons_messageExtendedMediaPreview: TypeConstructorDescription {
public var flags: Int32
public var w: Int32?
public var h: Int32?
public var thumb: Api.PhotoSize?
public var videoDuration: Int32?
public init(flags: Int32, w: Int32?, h: Int32?, thumb: Api.PhotoSize?, videoDuration: Int32?) {
self.flags = flags
self.w = w
self.h = h
self.thumb = thumb
self.videoDuration = videoDuration
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageExtendedMediaPreview", [("flags", self.flags as Any), ("w", self.w as Any), ("h", self.h as Any), ("thumb", self.thumb as Any), ("videoDuration", self.videoDuration as Any)])
}
}
case messageExtendedMedia(Cons_messageExtendedMedia)
case messageExtendedMediaPreview(Cons_messageExtendedMediaPreview)
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
switch self {
case .messageExtendedMedia(let _data):
if boxed {
buffer.appendInt32(-297296796)
}
_data.media.serialize(buffer, true)
break
case .messageExtendedMediaPreview(let _data):
if boxed {
buffer.appendInt32(-1386050360)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 0) != 0 {
serializeInt32(_data.w!, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 0) != 0 {
serializeInt32(_data.h!, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 1) != 0 {
_data.thumb!.serialize(buffer, true)
}
if Int(_data.flags) & Int(1 << 2) != 0 {
serializeInt32(_data.videoDuration!, buffer: buffer, boxed: false)
}
break
}
}
public func descriptionFields() -> (String, [(String, Any)]) {
switch self {
case .messageExtendedMedia(let _data):
return ("messageExtendedMedia", [("media", _data.media as Any)])
case .messageExtendedMediaPreview(let _data):
return ("messageExtendedMediaPreview", [("flags", _data.flags as Any), ("w", _data.w as Any), ("h", _data.h as Any), ("thumb", _data.thumb as Any), ("videoDuration", _data.videoDuration as Any)])
}
}
public static func parse_messageExtendedMedia(_ reader: BufferReader) -> MessageExtendedMedia? {
var _1: Api.MessageMedia?
if let signature = reader.readInt32() {
_1 = Api.parse(reader, signature: signature) as? Api.MessageMedia
}
let _c1 = _1 != nil
if _c1 {
return Api.MessageExtendedMedia.messageExtendedMedia(Cons_messageExtendedMedia(media: _1!))
}
else {
return nil
}
}
public static func parse_messageExtendedMediaPreview(_ reader: BufferReader) -> MessageExtendedMedia? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
if Int(_1!) & Int(1 << 0) != 0 {
_2 = reader.readInt32()
}
var _3: Int32?
if Int(_1!) & Int(1 << 0) != 0 {
_3 = reader.readInt32()
}
var _4: Api.PhotoSize?
if Int(_1!) & Int(1 << 1) != 0 {
if let signature = reader.readInt32() {
_4 = Api.parse(reader, signature: signature) as? Api.PhotoSize
}
}
var _5: Int32?
if Int(_1!) & Int(1 << 2) != 0 {
_5 = reader.readInt32()
}
let _c1 = _1 != nil
let _c2 = (Int(_1!) & Int(1 << 0) == 0) || _2 != nil
let _c3 = (Int(_1!) & Int(1 << 0) == 0) || _3 != nil
let _c4 = (Int(_1!) & Int(1 << 1) == 0) || _4 != nil
let _c5 = (Int(_1!) & Int(1 << 2) == 0) || _5 != nil
if _c1 && _c2 && _c3 && _c4 && _c5 {
return Api.MessageExtendedMedia.messageExtendedMediaPreview(Cons_messageExtendedMediaPreview(flags: _1!, w: _2, h: _3, thumb: _4, videoDuration: _5))
}
else {
return nil
}
}
}
}
public extension Api {
enum MessageFwdHeader: TypeConstructorDescription {
public class Cons_messageFwdHeader: TypeConstructorDescription {
public var flags: Int32
public var fromId: Api.Peer?
public var fromName: String?
public var date: Int32
public var channelPost: Int32?
public var postAuthor: String?
public var savedFromPeer: Api.Peer?
public var savedFromMsgId: Int32?
public var savedFromId: Api.Peer?
public var savedFromName: String?
public var savedDate: Int32?
public var psaType: String?
public init(flags: Int32, fromId: Api.Peer?, fromName: String?, date: Int32, channelPost: Int32?, postAuthor: String?, savedFromPeer: Api.Peer?, savedFromMsgId: Int32?, savedFromId: Api.Peer?, savedFromName: String?, savedDate: Int32?, psaType: String?) {
self.flags = flags
self.fromId = fromId
self.fromName = fromName
self.date = date
self.channelPost = channelPost
self.postAuthor = postAuthor
self.savedFromPeer = savedFromPeer
self.savedFromMsgId = savedFromMsgId
self.savedFromId = savedFromId
self.savedFromName = savedFromName
self.savedDate = savedDate
self.psaType = psaType
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageFwdHeader", [("flags", self.flags as Any), ("fromId", self.fromId as Any), ("fromName", self.fromName as Any), ("date", self.date as Any), ("channelPost", self.channelPost as Any), ("postAuthor", self.postAuthor as Any), ("savedFromPeer", self.savedFromPeer as Any), ("savedFromMsgId", self.savedFromMsgId as Any), ("savedFromId", self.savedFromId as Any), ("savedFromName", self.savedFromName as Any), ("savedDate", self.savedDate as Any), ("psaType", self.psaType as Any)])
}
}
case messageFwdHeader(Cons_messageFwdHeader)
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
switch self {
case .messageFwdHeader(let _data):
if boxed {
buffer.appendInt32(1313731771)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 0) != 0 {
_data.fromId!.serialize(buffer, true)
}
if Int(_data.flags) & Int(1 << 5) != 0 {
serializeString(_data.fromName!, buffer: buffer, boxed: false)
}
serializeInt32(_data.date, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 2) != 0 {
serializeInt32(_data.channelPost!, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 3) != 0 {
serializeString(_data.postAuthor!, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 4) != 0 {
_data.savedFromPeer!.serialize(buffer, true)
}
if Int(_data.flags) & Int(1 << 4) != 0 {
serializeInt32(_data.savedFromMsgId!, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 8) != 0 {
_data.savedFromId!.serialize(buffer, true)
}
if Int(_data.flags) & Int(1 << 9) != 0 {
serializeString(_data.savedFromName!, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 10) != 0 {
serializeInt32(_data.savedDate!, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 6) != 0 {
serializeString(_data.psaType!, buffer: buffer, boxed: false)
}
break
}
}
public func descriptionFields() -> (String, [(String, Any)]) {
switch self {
case .messageFwdHeader(let _data):
return ("messageFwdHeader", [("flags", _data.flags as Any), ("fromId", _data.fromId as Any), ("fromName", _data.fromName as Any), ("date", _data.date as Any), ("channelPost", _data.channelPost as Any), ("postAuthor", _data.postAuthor as Any), ("savedFromPeer", _data.savedFromPeer as Any), ("savedFromMsgId", _data.savedFromMsgId as Any), ("savedFromId", _data.savedFromId as Any), ("savedFromName", _data.savedFromName as Any), ("savedDate", _data.savedDate as Any), ("psaType", _data.psaType as Any)])
}
}
public static func parse_messageFwdHeader(_ reader: BufferReader) -> MessageFwdHeader? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Api.Peer?
if Int(_1!) & Int(1 << 0) != 0 {
if let signature = reader.readInt32() {
_2 = Api.parse(reader, signature: signature) as? Api.Peer
}
}
var _3: String?
if Int(_1!) & Int(1 << 5) != 0 {
_3 = parseString(reader)
}
var _4: Int32?
_4 = reader.readInt32()
var _5: Int32?
if Int(_1!) & Int(1 << 2) != 0 {
_5 = reader.readInt32()
}
var _6: String?
if Int(_1!) & Int(1 << 3) != 0 {
_6 = parseString(reader)
}
var _7: Api.Peer?
if Int(_1!) & Int(1 << 4) != 0 {
if let signature = reader.readInt32() {
_7 = Api.parse(reader, signature: signature) as? Api.Peer
}
}
var _8: Int32?
if Int(_1!) & Int(1 << 4) != 0 {
_8 = reader.readInt32()
}
var _9: Api.Peer?
if Int(_1!) & Int(1 << 8) != 0 {
if let signature = reader.readInt32() {
_9 = Api.parse(reader, signature: signature) as? Api.Peer
}
}
var _10: String?
if Int(_1!) & Int(1 << 9) != 0 {
_10 = parseString(reader)
}
var _11: Int32?
if Int(_1!) & Int(1 << 10) != 0 {
_11 = reader.readInt32()
}
var _12: String?
if Int(_1!) & Int(1 << 6) != 0 {
_12 = parseString(reader)
}
let _c1 = _1 != nil
let _c2 = (Int(_1!) & Int(1 << 0) == 0) || _2 != nil
let _c3 = (Int(_1!) & Int(1 << 5) == 0) || _3 != nil
let _c4 = _4 != nil
let _c5 = (Int(_1!) & Int(1 << 2) == 0) || _5 != nil
let _c6 = (Int(_1!) & Int(1 << 3) == 0) || _6 != nil
let _c7 = (Int(_1!) & Int(1 << 4) == 0) || _7 != nil
let _c8 = (Int(_1!) & Int(1 << 4) == 0) || _8 != nil
let _c9 = (Int(_1!) & Int(1 << 8) == 0) || _9 != nil
let _c10 = (Int(_1!) & Int(1 << 9) == 0) || _10 != nil
let _c11 = (Int(_1!) & Int(1 << 10) == 0) || _11 != nil
let _c12 = (Int(_1!) & Int(1 << 6) == 0) || _12 != nil
if _c1 && _c2 && _c3 && _c4 && _c5 && _c6 && _c7 && _c8 && _c9 && _c10 && _c11 && _c12 {
return Api.MessageFwdHeader.messageFwdHeader(Cons_messageFwdHeader(flags: _1!, fromId: _2, fromName: _3, date: _4!, channelPost: _5, postAuthor: _6, savedFromPeer: _7, savedFromMsgId: _8, savedFromId: _9, savedFromName: _10, savedDate: _11, psaType: _12))
}
else {
return nil
}
}
}
}
public extension Api {
indirect enum MessageMedia: TypeConstructorDescription {
public class Cons_messageMediaContact: TypeConstructorDescription {
public var phoneNumber: String
public var firstName: String
public var lastName: String
public var vcard: String
public var userId: Int64
public init(phoneNumber: String, firstName: String, lastName: String, vcard: String, userId: Int64) {
self.phoneNumber = phoneNumber
self.firstName = firstName
self.lastName = lastName
self.vcard = vcard
self.userId = userId
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageMediaContact", [("phoneNumber", self.phoneNumber as Any), ("firstName", self.firstName as Any), ("lastName", self.lastName as Any), ("vcard", self.vcard as Any), ("userId", self.userId as Any)])
}
}
public class Cons_messageMediaDice: TypeConstructorDescription {
public var flags: Int32
public var value: Int32
public var emoticon: String
public var gameOutcome: Api.messages.EmojiGameOutcome?
public init(flags: Int32, value: Int32, emoticon: String, gameOutcome: Api.messages.EmojiGameOutcome?) {
self.flags = flags
self.value = value
self.emoticon = emoticon
self.gameOutcome = gameOutcome
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageMediaDice", [("flags", self.flags as Any), ("value", self.value as Any), ("emoticon", self.emoticon as Any), ("gameOutcome", self.gameOutcome as Any)])
}
}
public class Cons_messageMediaDocument: TypeConstructorDescription {
public var flags: Int32
public var document: Api.Document?
public var altDocuments: [Api.Document]?
public var videoCover: Api.Photo?
public var videoTimestamp: Int32?
public var ttlSeconds: Int32?
public init(flags: Int32, document: Api.Document?, altDocuments: [Api.Document]?, videoCover: Api.Photo?, videoTimestamp: Int32?, ttlSeconds: Int32?) {
self.flags = flags
self.document = document
self.altDocuments = altDocuments
self.videoCover = videoCover
self.videoTimestamp = videoTimestamp
self.ttlSeconds = ttlSeconds
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageMediaDocument", [("flags", self.flags as Any), ("document", self.document as Any), ("altDocuments", self.altDocuments as Any), ("videoCover", self.videoCover as Any), ("videoTimestamp", self.videoTimestamp as Any), ("ttlSeconds", self.ttlSeconds as Any)])
}
}
public class Cons_messageMediaGame: TypeConstructorDescription {
public var game: Api.Game
public init(game: Api.Game) {
self.game = game
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageMediaGame", [("game", self.game as Any)])
}
}
public class Cons_messageMediaGeo: TypeConstructorDescription {
public var geo: Api.GeoPoint
public init(geo: Api.GeoPoint) {
self.geo = geo
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageMediaGeo", [("geo", self.geo as Any)])
}
}
public class Cons_messageMediaGeoLive: TypeConstructorDescription {
public var flags: Int32
public var geo: Api.GeoPoint
public var heading: Int32?
public var period: Int32
public var proximityNotificationRadius: Int32?
public init(flags: Int32, geo: Api.GeoPoint, heading: Int32?, period: Int32, proximityNotificationRadius: Int32?) {
self.flags = flags
self.geo = geo
self.heading = heading
self.period = period
self.proximityNotificationRadius = proximityNotificationRadius
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageMediaGeoLive", [("flags", self.flags as Any), ("geo", self.geo as Any), ("heading", self.heading as Any), ("period", self.period as Any), ("proximityNotificationRadius", self.proximityNotificationRadius as Any)])
}
}
public class Cons_messageMediaGiveaway: TypeConstructorDescription {
public var flags: Int32
public var channels: [Int64]
public var countriesIso2: [String]?
public var prizeDescription: String?
public var quantity: Int32
public var months: Int32?
public var stars: Int64?
public var untilDate: Int32
public init(flags: Int32, channels: [Int64], countriesIso2: [String]?, prizeDescription: String?, quantity: Int32, months: Int32?, stars: Int64?, untilDate: Int32) {
self.flags = flags
self.channels = channels
self.countriesIso2 = countriesIso2
self.prizeDescription = prizeDescription
self.quantity = quantity
self.months = months
self.stars = stars
self.untilDate = untilDate
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageMediaGiveaway", [("flags", self.flags as Any), ("channels", self.channels as Any), ("countriesIso2", self.countriesIso2 as Any), ("prizeDescription", self.prizeDescription as Any), ("quantity", self.quantity as Any), ("months", self.months as Any), ("stars", self.stars as Any), ("untilDate", self.untilDate as Any)])
}
}
public class Cons_messageMediaGiveawayResults: TypeConstructorDescription {
public var flags: Int32
public var channelId: Int64
public var additionalPeersCount: Int32?
public var launchMsgId: Int32
public var winnersCount: Int32
public var unclaimedCount: Int32
public var winners: [Int64]
public var months: Int32?
public var stars: Int64?
public var prizeDescription: String?
public var untilDate: Int32
public init(flags: Int32, channelId: Int64, additionalPeersCount: Int32?, launchMsgId: Int32, winnersCount: Int32, unclaimedCount: Int32, winners: [Int64], months: Int32?, stars: Int64?, prizeDescription: String?, untilDate: Int32) {
self.flags = flags
self.channelId = channelId
self.additionalPeersCount = additionalPeersCount
self.launchMsgId = launchMsgId
self.winnersCount = winnersCount
self.unclaimedCount = unclaimedCount
self.winners = winners
self.months = months
self.stars = stars
self.prizeDescription = prizeDescription
self.untilDate = untilDate
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageMediaGiveawayResults", [("flags", self.flags as Any), ("channelId", self.channelId as Any), ("additionalPeersCount", self.additionalPeersCount as Any), ("launchMsgId", self.launchMsgId as Any), ("winnersCount", self.winnersCount as Any), ("unclaimedCount", self.unclaimedCount as Any), ("winners", self.winners as Any), ("months", self.months as Any), ("stars", self.stars as Any), ("prizeDescription", self.prizeDescription as Any), ("untilDate", self.untilDate as Any)])
}
}
public class Cons_messageMediaInvoice: TypeConstructorDescription {
public var flags: Int32
public var title: String
public var description: String
public var photo: Api.WebDocument?
public var receiptMsgId: Int32?
public var currency: String
public var totalAmount: Int64
public var startParam: String
public var extendedMedia: Api.MessageExtendedMedia?
public init(flags: Int32, title: String, description: String, photo: Api.WebDocument?, receiptMsgId: Int32?, currency: String, totalAmount: Int64, startParam: String, extendedMedia: Api.MessageExtendedMedia?) {
self.flags = flags
self.title = title
self.description = description
self.photo = photo
self.receiptMsgId = receiptMsgId
self.currency = currency
self.totalAmount = totalAmount
self.startParam = startParam
self.extendedMedia = extendedMedia
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageMediaInvoice", [("flags", self.flags as Any), ("title", self.title as Any), ("description", self.description as Any), ("photo", self.photo as Any), ("receiptMsgId", self.receiptMsgId as Any), ("currency", self.currency as Any), ("totalAmount", self.totalAmount as Any), ("startParam", self.startParam as Any), ("extendedMedia", self.extendedMedia as Any)])
}
}
public class Cons_messageMediaPaidMedia: TypeConstructorDescription {
public var starsAmount: Int64
public var extendedMedia: [Api.MessageExtendedMedia]
public init(starsAmount: Int64, extendedMedia: [Api.MessageExtendedMedia]) {
self.starsAmount = starsAmount
self.extendedMedia = extendedMedia
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageMediaPaidMedia", [("starsAmount", self.starsAmount as Any), ("extendedMedia", self.extendedMedia as Any)])
}
}
public class Cons_messageMediaPhoto: TypeConstructorDescription {
public var flags: Int32
public var photo: Api.Photo?
public var ttlSeconds: Int32?
public init(flags: Int32, photo: Api.Photo?, ttlSeconds: Int32?) {
self.flags = flags
self.photo = photo
self.ttlSeconds = ttlSeconds
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageMediaPhoto", [("flags", self.flags as Any), ("photo", self.photo as Any), ("ttlSeconds", self.ttlSeconds as Any)])
}
}
public class Cons_messageMediaPoll: TypeConstructorDescription {
public var poll: Api.Poll
public var results: Api.PollResults
public init(poll: Api.Poll, results: Api.PollResults) {
self.poll = poll
self.results = results
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageMediaPoll", [("poll", self.poll as Any), ("results", self.results as Any)])
}
}
public class Cons_messageMediaStory: TypeConstructorDescription {
public var flags: Int32
public var peer: Api.Peer
public var id: Int32
public var story: Api.StoryItem?
public init(flags: Int32, peer: Api.Peer, id: Int32, story: Api.StoryItem?) {
self.flags = flags
self.peer = peer
self.id = id
self.story = story
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageMediaStory", [("flags", self.flags as Any), ("peer", self.peer as Any), ("id", self.id as Any), ("story", self.story as Any)])
}
}
public class Cons_messageMediaToDo: TypeConstructorDescription {
public var flags: Int32
public var todo: Api.TodoList
public var completions: [Api.TodoCompletion]?
public init(flags: Int32, todo: Api.TodoList, completions: [Api.TodoCompletion]?) {
self.flags = flags
self.todo = todo
self.completions = completions
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageMediaToDo", [("flags", self.flags as Any), ("todo", self.todo as Any), ("completions", self.completions as Any)])
}
}
public class Cons_messageMediaVenue: TypeConstructorDescription {
public var geo: Api.GeoPoint
public var title: String
public var address: String
public var provider: String
public var venueId: String
public var venueType: String
public init(geo: Api.GeoPoint, title: String, address: String, provider: String, venueId: String, venueType: String) {
self.geo = geo
self.title = title
self.address = address
self.provider = provider
self.venueId = venueId
self.venueType = venueType
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageMediaVenue", [("geo", self.geo as Any), ("title", self.title as Any), ("address", self.address as Any), ("provider", self.provider as Any), ("venueId", self.venueId as Any), ("venueType", self.venueType as Any)])
}
}
public class Cons_messageMediaVideoStream: TypeConstructorDescription {
public var flags: Int32
public var call: Api.InputGroupCall
public init(flags: Int32, call: Api.InputGroupCall) {
self.flags = flags
self.call = call
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageMediaVideoStream", [("flags", self.flags as Any), ("call", self.call as Any)])
}
}
public class Cons_messageMediaWebPage: TypeConstructorDescription {
public var flags: Int32
public var webpage: Api.WebPage
public init(flags: Int32, webpage: Api.WebPage) {
self.flags = flags
self.webpage = webpage
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("messageMediaWebPage", [("flags", self.flags as Any), ("webpage", self.webpage as Any)])
}
}
case messageMediaContact(Cons_messageMediaContact)
case messageMediaDice(Cons_messageMediaDice)
case messageMediaDocument(Cons_messageMediaDocument)
case messageMediaEmpty
case messageMediaGame(Cons_messageMediaGame)
case messageMediaGeo(Cons_messageMediaGeo)
case messageMediaGeoLive(Cons_messageMediaGeoLive)
case messageMediaGiveaway(Cons_messageMediaGiveaway)
case messageMediaGiveawayResults(Cons_messageMediaGiveawayResults)
case messageMediaInvoice(Cons_messageMediaInvoice)
case messageMediaPaidMedia(Cons_messageMediaPaidMedia)
case messageMediaPhoto(Cons_messageMediaPhoto)
case messageMediaPoll(Cons_messageMediaPoll)
case messageMediaStory(Cons_messageMediaStory)
case messageMediaToDo(Cons_messageMediaToDo)
case messageMediaUnsupported
case messageMediaVenue(Cons_messageMediaVenue)
case messageMediaVideoStream(Cons_messageMediaVideoStream)
case messageMediaWebPage(Cons_messageMediaWebPage)
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
switch self {
case .messageMediaContact(let _data):
if boxed {
buffer.appendInt32(1882335561)
}
serializeString(_data.phoneNumber, buffer: buffer, boxed: false)
serializeString(_data.firstName, buffer: buffer, boxed: false)
serializeString(_data.lastName, buffer: buffer, boxed: false)
serializeString(_data.vcard, buffer: buffer, boxed: false)
serializeInt64(_data.userId, buffer: buffer, boxed: false)
break
case .messageMediaDice(let _data):
if boxed {
buffer.appendInt32(147581959)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
serializeInt32(_data.value, buffer: buffer, boxed: false)
serializeString(_data.emoticon, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 0) != 0 {
_data.gameOutcome!.serialize(buffer, true)
}
break
case .messageMediaDocument(let _data):
if boxed {
buffer.appendInt32(1389939929)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 0) != 0 {
_data.document!.serialize(buffer, true)
}
if Int(_data.flags) & Int(1 << 5) != 0 {
buffer.appendInt32(481674261)
buffer.appendInt32(Int32(_data.altDocuments!.count))
for item in _data.altDocuments! {
item.serialize(buffer, true)
}
}
if Int(_data.flags) & Int(1 << 9) != 0 {
_data.videoCover!.serialize(buffer, true)
}
if Int(_data.flags) & Int(1 << 10) != 0 {
serializeInt32(_data.videoTimestamp!, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 2) != 0 {
serializeInt32(_data.ttlSeconds!, buffer: buffer, boxed: false)
}
break
case .messageMediaEmpty:
if boxed {
buffer.appendInt32(1038967584)
}
break
case .messageMediaGame(let _data):
if boxed {
buffer.appendInt32(-38694904)
}
_data.game.serialize(buffer, true)
break
case .messageMediaGeo(let _data):
if boxed {
buffer.appendInt32(1457575028)
}
_data.geo.serialize(buffer, true)
break
case .messageMediaGeoLive(let _data):
if boxed {
buffer.appendInt32(-1186937242)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
_data.geo.serialize(buffer, true)
if Int(_data.flags) & Int(1 << 0) != 0 {
serializeInt32(_data.heading!, buffer: buffer, boxed: false)
}
serializeInt32(_data.period, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 1) != 0 {
serializeInt32(_data.proximityNotificationRadius!, buffer: buffer, boxed: false)
}
break
case .messageMediaGiveaway(let _data):
if boxed {
buffer.appendInt32(-1442366485)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
buffer.appendInt32(481674261)
buffer.appendInt32(Int32(_data.channels.count))
for item in _data.channels {
serializeInt64(item, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 1) != 0 {
buffer.appendInt32(481674261)
buffer.appendInt32(Int32(_data.countriesIso2!.count))
for item in _data.countriesIso2! {
serializeString(item, buffer: buffer, boxed: false)
}
}
if Int(_data.flags) & Int(1 << 3) != 0 {
serializeString(_data.prizeDescription!, buffer: buffer, boxed: false)
}
serializeInt32(_data.quantity, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 4) != 0 {
serializeInt32(_data.months!, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 5) != 0 {
serializeInt64(_data.stars!, buffer: buffer, boxed: false)
}
serializeInt32(_data.untilDate, buffer: buffer, boxed: false)
break
case .messageMediaGiveawayResults(let _data):
if boxed {
buffer.appendInt32(-827703647)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
serializeInt64(_data.channelId, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 3) != 0 {
serializeInt32(_data.additionalPeersCount!, buffer: buffer, boxed: false)
}
serializeInt32(_data.launchMsgId, buffer: buffer, boxed: false)
serializeInt32(_data.winnersCount, buffer: buffer, boxed: false)
serializeInt32(_data.unclaimedCount, buffer: buffer, boxed: false)
buffer.appendInt32(481674261)
buffer.appendInt32(Int32(_data.winners.count))
for item in _data.winners {
serializeInt64(item, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 4) != 0 {
serializeInt32(_data.months!, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 5) != 0 {
serializeInt64(_data.stars!, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 1) != 0 {
serializeString(_data.prizeDescription!, buffer: buffer, boxed: false)
}
serializeInt32(_data.untilDate, buffer: buffer, boxed: false)
break
case .messageMediaInvoice(let _data):
if boxed {
buffer.appendInt32(-156940077)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
serializeString(_data.title, buffer: buffer, boxed: false)
serializeString(_data.description, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 0) != 0 {
_data.photo!.serialize(buffer, true)
}
if Int(_data.flags) & Int(1 << 2) != 0 {
serializeInt32(_data.receiptMsgId!, buffer: buffer, boxed: false)
}
serializeString(_data.currency, buffer: buffer, boxed: false)
serializeInt64(_data.totalAmount, buffer: buffer, boxed: false)
serializeString(_data.startParam, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 4) != 0 {
_data.extendedMedia!.serialize(buffer, true)
}
break
case .messageMediaPaidMedia(let _data):
if boxed {
buffer.appendInt32(-1467669359)
}
serializeInt64(_data.starsAmount, buffer: buffer, boxed: false)
buffer.appendInt32(481674261)
buffer.appendInt32(Int32(_data.extendedMedia.count))
for item in _data.extendedMedia {
item.serialize(buffer, true)
}
break
case .messageMediaPhoto(let _data):
if boxed {
buffer.appendInt32(1766936791)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 0) != 0 {
_data.photo!.serialize(buffer, true)
}
if Int(_data.flags) & Int(1 << 2) != 0 {
serializeInt32(_data.ttlSeconds!, buffer: buffer, boxed: false)
}
break
case .messageMediaPoll(let _data):
if boxed {
buffer.appendInt32(1272375192)
}
_data.poll.serialize(buffer, true)
_data.results.serialize(buffer, true)
break
case .messageMediaStory(let _data):
if boxed {
buffer.appendInt32(1758159491)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
_data.peer.serialize(buffer, true)
serializeInt32(_data.id, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 0) != 0 {
_data.story!.serialize(buffer, true)
}
break
case .messageMediaToDo(let _data):
if boxed {
buffer.appendInt32(-1974226924)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
_data.todo.serialize(buffer, true)
if Int(_data.flags) & Int(1 << 0) != 0 {
buffer.appendInt32(481674261)
buffer.appendInt32(Int32(_data.completions!.count))
for item in _data.completions! {
item.serialize(buffer, true)
}
}
break
case .messageMediaUnsupported:
if boxed {
buffer.appendInt32(-1618676578)
}
break
case .messageMediaVenue(let _data):
if boxed {
buffer.appendInt32(784356159)
}
_data.geo.serialize(buffer, true)
serializeString(_data.title, buffer: buffer, boxed: false)
serializeString(_data.address, buffer: buffer, boxed: false)
serializeString(_data.provider, buffer: buffer, boxed: false)
serializeString(_data.venueId, buffer: buffer, boxed: false)
serializeString(_data.venueType, buffer: buffer, boxed: false)
break
case .messageMediaVideoStream(let _data):
if boxed {
buffer.appendInt32(-899896439)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
_data.call.serialize(buffer, true)
break
case .messageMediaWebPage(let _data):
if boxed {
buffer.appendInt32(-571405253)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
_data.webpage.serialize(buffer, true)
break
}
}
public func descriptionFields() -> (String, [(String, Any)]) {
switch self {
case .messageMediaContact(let _data):
return ("messageMediaContact", [("phoneNumber", _data.phoneNumber as Any), ("firstName", _data.firstName as Any), ("lastName", _data.lastName as Any), ("vcard", _data.vcard as Any), ("userId", _data.userId as Any)])
case .messageMediaDice(let _data):
return ("messageMediaDice", [("flags", _data.flags as Any), ("value", _data.value as Any), ("emoticon", _data.emoticon as Any), ("gameOutcome", _data.gameOutcome as Any)])
case .messageMediaDocument(let _data):
return ("messageMediaDocument", [("flags", _data.flags as Any), ("document", _data.document as Any), ("altDocuments", _data.altDocuments as Any), ("videoCover", _data.videoCover as Any), ("videoTimestamp", _data.videoTimestamp as Any), ("ttlSeconds", _data.ttlSeconds as Any)])
case .messageMediaEmpty:
return ("messageMediaEmpty", [])
case .messageMediaGame(let _data):
return ("messageMediaGame", [("game", _data.game as Any)])
case .messageMediaGeo(let _data):
return ("messageMediaGeo", [("geo", _data.geo as Any)])
case .messageMediaGeoLive(let _data):
return ("messageMediaGeoLive", [("flags", _data.flags as Any), ("geo", _data.geo as Any), ("heading", _data.heading as Any), ("period", _data.period as Any), ("proximityNotificationRadius", _data.proximityNotificationRadius as Any)])
case .messageMediaGiveaway(let _data):
return ("messageMediaGiveaway", [("flags", _data.flags as Any), ("channels", _data.channels as Any), ("countriesIso2", _data.countriesIso2 as Any), ("prizeDescription", _data.prizeDescription as Any), ("quantity", _data.quantity as Any), ("months", _data.months as Any), ("stars", _data.stars as Any), ("untilDate", _data.untilDate as Any)])
case .messageMediaGiveawayResults(let _data):
return ("messageMediaGiveawayResults", [("flags", _data.flags as Any), ("channelId", _data.channelId as Any), ("additionalPeersCount", _data.additionalPeersCount as Any), ("launchMsgId", _data.launchMsgId as Any), ("winnersCount", _data.winnersCount as Any), ("unclaimedCount", _data.unclaimedCount as Any), ("winners", _data.winners as Any), ("months", _data.months as Any), ("stars", _data.stars as Any), ("prizeDescription", _data.prizeDescription as Any), ("untilDate", _data.untilDate as Any)])
case .messageMediaInvoice(let _data):
return ("messageMediaInvoice", [("flags", _data.flags as Any), ("title", _data.title as Any), ("description", _data.description as Any), ("photo", _data.photo as Any), ("receiptMsgId", _data.receiptMsgId as Any), ("currency", _data.currency as Any), ("totalAmount", _data.totalAmount as Any), ("startParam", _data.startParam as Any), ("extendedMedia", _data.extendedMedia as Any)])
case .messageMediaPaidMedia(let _data):
return ("messageMediaPaidMedia", [("starsAmount", _data.starsAmount as Any), ("extendedMedia", _data.extendedMedia as Any)])
case .messageMediaPhoto(let _data):
return ("messageMediaPhoto", [("flags", _data.flags as Any), ("photo", _data.photo as Any), ("ttlSeconds", _data.ttlSeconds as Any)])
case .messageMediaPoll(let _data):
return ("messageMediaPoll", [("poll", _data.poll as Any), ("results", _data.results as Any)])
case .messageMediaStory(let _data):
return ("messageMediaStory", [("flags", _data.flags as Any), ("peer", _data.peer as Any), ("id", _data.id as Any), ("story", _data.story as Any)])
case .messageMediaToDo(let _data):
return ("messageMediaToDo", [("flags", _data.flags as Any), ("todo", _data.todo as Any), ("completions", _data.completions as Any)])
case .messageMediaUnsupported:
return ("messageMediaUnsupported", [])
case .messageMediaVenue(let _data):
return ("messageMediaVenue", [("geo", _data.geo as Any), ("title", _data.title as Any), ("address", _data.address as Any), ("provider", _data.provider as Any), ("venueId", _data.venueId as Any), ("venueType", _data.venueType as Any)])
case .messageMediaVideoStream(let _data):
return ("messageMediaVideoStream", [("flags", _data.flags as Any), ("call", _data.call as Any)])
case .messageMediaWebPage(let _data):
return ("messageMediaWebPage", [("flags", _data.flags as Any), ("webpage", _data.webpage as Any)])
}
}
public static func parse_messageMediaContact(_ reader: BufferReader) -> MessageMedia? {
var _1: String?
_1 = parseString(reader)
var _2: String?
_2 = parseString(reader)
var _3: String?
_3 = parseString(reader)
var _4: String?
_4 = parseString(reader)
var _5: Int64?
_5 = reader.readInt64()
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = _3 != nil
let _c4 = _4 != nil
let _c5 = _5 != nil
if _c1 && _c2 && _c3 && _c4 && _c5 {
return Api.MessageMedia.messageMediaContact(Cons_messageMediaContact(phoneNumber: _1!, firstName: _2!, lastName: _3!, vcard: _4!, userId: _5!))
}
else {
return nil
}
}
public static func parse_messageMediaDice(_ reader: BufferReader) -> MessageMedia? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
var _3: String?
_3 = parseString(reader)
var _4: Api.messages.EmojiGameOutcome?
if Int(_1!) & Int(1 << 0) != 0 {
if let signature = reader.readInt32() {
_4 = Api.parse(reader, signature: signature) as? Api.messages.EmojiGameOutcome
}
}
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = _3 != nil
let _c4 = (Int(_1!) & Int(1 << 0) == 0) || _4 != nil
if _c1 && _c2 && _c3 && _c4 {
return Api.MessageMedia.messageMediaDice(Cons_messageMediaDice(flags: _1!, value: _2!, emoticon: _3!, gameOutcome: _4))
}
else {
return nil
}
}
public static func parse_messageMediaDocument(_ reader: BufferReader) -> MessageMedia? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Api.Document?
if Int(_1!) & Int(1 << 0) != 0 {
if let signature = reader.readInt32() {
_2 = Api.parse(reader, signature: signature) as? Api.Document
}
}
var _3: [Api.Document]?
if Int(_1!) & Int(1 << 5) != 0 {
if let _ = reader.readInt32() {
_3 = Api.parseVector(reader, elementSignature: 0, elementType: Api.Document.self)
}
}
var _4: Api.Photo?
if Int(_1!) & Int(1 << 9) != 0 {
if let signature = reader.readInt32() {
_4 = Api.parse(reader, signature: signature) as? Api.Photo
}
}
var _5: Int32?
if Int(_1!) & Int(1 << 10) != 0 {
_5 = reader.readInt32()
}
var _6: Int32?
if Int(_1!) & Int(1 << 2) != 0 {
_6 = reader.readInt32()
}
let _c1 = _1 != nil
let _c2 = (Int(_1!) & Int(1 << 0) == 0) || _2 != nil
let _c3 = (Int(_1!) & Int(1 << 5) == 0) || _3 != nil
let _c4 = (Int(_1!) & Int(1 << 9) == 0) || _4 != nil
let _c5 = (Int(_1!) & Int(1 << 10) == 0) || _5 != nil
let _c6 = (Int(_1!) & Int(1 << 2) == 0) || _6 != nil
if _c1 && _c2 && _c3 && _c4 && _c5 && _c6 {
return Api.MessageMedia.messageMediaDocument(Cons_messageMediaDocument(flags: _1!, document: _2, altDocuments: _3, videoCover: _4, videoTimestamp: _5, ttlSeconds: _6))
}
else {
return nil
}
}
public static func parse_messageMediaEmpty(_ reader: BufferReader) -> MessageMedia? {
return Api.MessageMedia.messageMediaEmpty
}
public static func parse_messageMediaGame(_ reader: BufferReader) -> MessageMedia? {
var _1: Api.Game?
if let signature = reader.readInt32() {
_1 = Api.parse(reader, signature: signature) as? Api.Game
}
let _c1 = _1 != nil
if _c1 {
return Api.MessageMedia.messageMediaGame(Cons_messageMediaGame(game: _1!))
}
else {
return nil
}
}
public static func parse_messageMediaGeo(_ reader: BufferReader) -> MessageMedia? {
var _1: Api.GeoPoint?
if let signature = reader.readInt32() {
_1 = Api.parse(reader, signature: signature) as? Api.GeoPoint
}
let _c1 = _1 != nil
if _c1 {
return Api.MessageMedia.messageMediaGeo(Cons_messageMediaGeo(geo: _1!))
}
else {
return nil
}
}
public static func parse_messageMediaGeoLive(_ reader: BufferReader) -> MessageMedia? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Api.GeoPoint?
if let signature = reader.readInt32() {
_2 = Api.parse(reader, signature: signature) as? Api.GeoPoint
}
var _3: Int32?
if Int(_1!) & Int(1 << 0) != 0 {
_3 = reader.readInt32()
}
var _4: Int32?
_4 = reader.readInt32()
var _5: Int32?
if Int(_1!) & Int(1 << 1) != 0 {
_5 = reader.readInt32()
}
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = (Int(_1!) & Int(1 << 0) == 0) || _3 != nil
let _c4 = _4 != nil
let _c5 = (Int(_1!) & Int(1 << 1) == 0) || _5 != nil
if _c1 && _c2 && _c3 && _c4 && _c5 {
return Api.MessageMedia.messageMediaGeoLive(Cons_messageMediaGeoLive(flags: _1!, geo: _2!, heading: _3, period: _4!, proximityNotificationRadius: _5))
}
else {
return nil
}
}
public static func parse_messageMediaGiveaway(_ reader: BufferReader) -> MessageMedia? {
var _1: Int32?
_1 = reader.readInt32()
var _2: [Int64]?
if let _ = reader.readInt32() {
_2 = Api.parseVector(reader, elementSignature: 570911930, elementType: Int64.self)
}
var _3: [String]?
if Int(_1!) & Int(1 << 1) != 0 {
if let _ = reader.readInt32() {
_3 = Api.parseVector(reader, elementSignature: -1255641564, elementType: String.self)
}
}
var _4: String?
if Int(_1!) & Int(1 << 3) != 0 {
_4 = parseString(reader)
}
var _5: Int32?
_5 = reader.readInt32()
var _6: Int32?
if Int(_1!) & Int(1 << 4) != 0 {
_6 = reader.readInt32()
}
var _7: Int64?
if Int(_1!) & Int(1 << 5) != 0 {
_7 = reader.readInt64()
}
var _8: Int32?
_8 = reader.readInt32()
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = (Int(_1!) & Int(1 << 1) == 0) || _3 != nil
let _c4 = (Int(_1!) & Int(1 << 3) == 0) || _4 != nil
let _c5 = _5 != nil
let _c6 = (Int(_1!) & Int(1 << 4) == 0) || _6 != nil
let _c7 = (Int(_1!) & Int(1 << 5) == 0) || _7 != nil
let _c8 = _8 != nil
if _c1 && _c2 && _c3 && _c4 && _c5 && _c6 && _c7 && _c8 {
return Api.MessageMedia.messageMediaGiveaway(Cons_messageMediaGiveaway(flags: _1!, channels: _2!, countriesIso2: _3, prizeDescription: _4, quantity: _5!, months: _6, stars: _7, untilDate: _8!))
}
else {
return nil
}
}
public static func parse_messageMediaGiveawayResults(_ reader: BufferReader) -> MessageMedia? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int64?
_2 = reader.readInt64()
var _3: Int32?
if Int(_1!) & Int(1 << 3) != 0 {
_3 = reader.readInt32()
}
var _4: Int32?
_4 = reader.readInt32()
var _5: Int32?
_5 = reader.readInt32()
var _6: Int32?
_6 = reader.readInt32()
var _7: [Int64]?
if let _ = reader.readInt32() {
_7 = Api.parseVector(reader, elementSignature: 570911930, elementType: Int64.self)
}
var _8: Int32?
if Int(_1!) & Int(1 << 4) != 0 {
_8 = reader.readInt32()
}
var _9: Int64?
if Int(_1!) & Int(1 << 5) != 0 {
_9 = reader.readInt64()
}
var _10: String?
if Int(_1!) & Int(1 << 1) != 0 {
_10 = parseString(reader)
}
var _11: Int32?
_11 = reader.readInt32()
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = (Int(_1!) & Int(1 << 3) == 0) || _3 != nil
let _c4 = _4 != nil
let _c5 = _5 != nil
let _c6 = _6 != nil
let _c7 = _7 != nil
let _c8 = (Int(_1!) & Int(1 << 4) == 0) || _8 != nil
let _c9 = (Int(_1!) & Int(1 << 5) == 0) || _9 != nil
let _c10 = (Int(_1!) & Int(1 << 1) == 0) || _10 != nil
let _c11 = _11 != nil
if _c1 && _c2 && _c3 && _c4 && _c5 && _c6 && _c7 && _c8 && _c9 && _c10 && _c11 {
return Api.MessageMedia.messageMediaGiveawayResults(Cons_messageMediaGiveawayResults(flags: _1!, channelId: _2!, additionalPeersCount: _3, launchMsgId: _4!, winnersCount: _5!, unclaimedCount: _6!, winners: _7!, months: _8, stars: _9, prizeDescription: _10, untilDate: _11!))
}
else {
return nil
}
}
public static func parse_messageMediaInvoice(_ reader: BufferReader) -> MessageMedia? {
var _1: Int32?
_1 = reader.readInt32()
var _2: String?
_2 = parseString(reader)
var _3: String?
_3 = parseString(reader)
var _4: Api.WebDocument?
if Int(_1!) & Int(1 << 0) != 0 {
if let signature = reader.readInt32() {
_4 = Api.parse(reader, signature: signature) as? Api.WebDocument
}
}
var _5: Int32?
if Int(_1!) & Int(1 << 2) != 0 {
_5 = reader.readInt32()
}
var _6: String?
_6 = parseString(reader)
var _7: Int64?
_7 = reader.readInt64()
var _8: String?
_8 = parseString(reader)
var _9: Api.MessageExtendedMedia?
if Int(_1!) & Int(1 << 4) != 0 {
if let signature = reader.readInt32() {
_9 = Api.parse(reader, signature: signature) as? Api.MessageExtendedMedia
}
}
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = _3 != nil
let _c4 = (Int(_1!) & Int(1 << 0) == 0) || _4 != nil
let _c5 = (Int(_1!) & Int(1 << 2) == 0) || _5 != nil
let _c6 = _6 != nil
let _c7 = _7 != nil
let _c8 = _8 != nil
let _c9 = (Int(_1!) & Int(1 << 4) == 0) || _9 != nil
if _c1 && _c2 && _c3 && _c4 && _c5 && _c6 && _c7 && _c8 && _c9 {
return Api.MessageMedia.messageMediaInvoice(Cons_messageMediaInvoice(flags: _1!, title: _2!, description: _3!, photo: _4, receiptMsgId: _5, currency: _6!, totalAmount: _7!, startParam: _8!, extendedMedia: _9))
}
else {
return nil
}
}
public static func parse_messageMediaPaidMedia(_ reader: BufferReader) -> MessageMedia? {
var _1: Int64?
_1 = reader.readInt64()
var _2: [Api.MessageExtendedMedia]?
if let _ = reader.readInt32() {
_2 = Api.parseVector(reader, elementSignature: 0, elementType: Api.MessageExtendedMedia.self)
}
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.MessageMedia.messageMediaPaidMedia(Cons_messageMediaPaidMedia(starsAmount: _1!, extendedMedia: _2!))
}
else {
return nil
}
}
public static func parse_messageMediaPhoto(_ reader: BufferReader) -> MessageMedia? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Api.Photo?
if Int(_1!) & Int(1 << 0) != 0 {
if let signature = reader.readInt32() {
_2 = Api.parse(reader, signature: signature) as? Api.Photo
}
}
var _3: Int32?
if Int(_1!) & Int(1 << 2) != 0 {
_3 = reader.readInt32()
}
let _c1 = _1 != nil
let _c2 = (Int(_1!) & Int(1 << 0) == 0) || _2 != nil
let _c3 = (Int(_1!) & Int(1 << 2) == 0) || _3 != nil
if _c1 && _c2 && _c3 {
return Api.MessageMedia.messageMediaPhoto(Cons_messageMediaPhoto(flags: _1!, photo: _2, ttlSeconds: _3))
}
else {
return nil
}
}
public static func parse_messageMediaPoll(_ reader: BufferReader) -> MessageMedia? {
var _1: Api.Poll?
if let signature = reader.readInt32() {
_1 = Api.parse(reader, signature: signature) as? Api.Poll
}
var _2: Api.PollResults?
if let signature = reader.readInt32() {
_2 = Api.parse(reader, signature: signature) as? Api.PollResults
}
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.MessageMedia.messageMediaPoll(Cons_messageMediaPoll(poll: _1!, results: _2!))
}
else {
return nil
}
}
public static func parse_messageMediaStory(_ reader: BufferReader) -> MessageMedia? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Api.Peer?
if let signature = reader.readInt32() {
_2 = Api.parse(reader, signature: signature) as? Api.Peer
}
var _3: Int32?
_3 = reader.readInt32()
var _4: Api.StoryItem?
if Int(_1!) & Int(1 << 0) != 0 {
if let signature = reader.readInt32() {
_4 = Api.parse(reader, signature: signature) as? Api.StoryItem
}
}
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = _3 != nil
let _c4 = (Int(_1!) & Int(1 << 0) == 0) || _4 != nil
if _c1 && _c2 && _c3 && _c4 {
return Api.MessageMedia.messageMediaStory(Cons_messageMediaStory(flags: _1!, peer: _2!, id: _3!, story: _4))
}
else {
return nil
}
}
public static func parse_messageMediaToDo(_ reader: BufferReader) -> MessageMedia? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Api.TodoList?
if let signature = reader.readInt32() {
_2 = Api.parse(reader, signature: signature) as? Api.TodoList
}
var _3: [Api.TodoCompletion]?
if Int(_1!) & Int(1 << 0) != 0 {
if let _ = reader.readInt32() {
_3 = Api.parseVector(reader, elementSignature: 0, elementType: Api.TodoCompletion.self)
}
}
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = (Int(_1!) & Int(1 << 0) == 0) || _3 != nil
if _c1 && _c2 && _c3 {
return Api.MessageMedia.messageMediaToDo(Cons_messageMediaToDo(flags: _1!, todo: _2!, completions: _3))
}
else {
return nil
}
}
public static func parse_messageMediaUnsupported(_ reader: BufferReader) -> MessageMedia? {
return Api.MessageMedia.messageMediaUnsupported
}
public static func parse_messageMediaVenue(_ reader: BufferReader) -> MessageMedia? {
var _1: Api.GeoPoint?
if let signature = reader.readInt32() {
_1 = Api.parse(reader, signature: signature) as? Api.GeoPoint
}
var _2: String?
_2 = parseString(reader)
var _3: String?
_3 = parseString(reader)
var _4: String?
_4 = parseString(reader)
var _5: String?
_5 = parseString(reader)
var _6: String?
_6 = parseString(reader)
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = _3 != nil
let _c4 = _4 != nil
let _c5 = _5 != nil
let _c6 = _6 != nil
if _c1 && _c2 && _c3 && _c4 && _c5 && _c6 {
return Api.MessageMedia.messageMediaVenue(Cons_messageMediaVenue(geo: _1!, title: _2!, address: _3!, provider: _4!, venueId: _5!, venueType: _6!))
}
else {
return nil
}
}
public static func parse_messageMediaVideoStream(_ reader: BufferReader) -> MessageMedia? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Api.InputGroupCall?
if let signature = reader.readInt32() {
_2 = Api.parse(reader, signature: signature) as? Api.InputGroupCall
}
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.MessageMedia.messageMediaVideoStream(Cons_messageMediaVideoStream(flags: _1!, call: _2!))
}
else {
return nil
}
}
public static func parse_messageMediaWebPage(_ reader: BufferReader) -> MessageMedia? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Api.WebPage?
if let signature = reader.readInt32() {
_2 = Api.parse(reader, signature: signature) as? Api.WebPage
}
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.MessageMedia.messageMediaWebPage(Cons_messageMediaWebPage(flags: _1!, webpage: _2!))
}
else {
return nil
}
}
}
}