package tg
import (
"context"
"errors"
"fmt"
"sort"
"strings"
"go.uber.org/multierr"
"github.com/gotd/td/bin"
"github.com/gotd/td/tdjson"
"github.com/gotd/td/tdp"
"github.com/gotd/td/tgerr"
)
var (
_ = bin .Buffer {}
_ = context .Background ()
_ = fmt .Stringer (nil )
_ = strings .Builder {}
_ = errors .Is
_ = multierr .AppendInto
_ = sort .Ints
_ = tdp .Format
_ = tgerr .Error {}
_ = tdjson .Encoder {}
)
type UpdateClassArray []UpdateClass
func (s UpdateClassArray ) Sort (less func (a , b UpdateClass ) bool ) UpdateClassArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateClassArray ) SortStable (less func (a , b UpdateClass ) bool ) UpdateClassArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateClassArray ) Retain (keep func (x UpdateClass ) bool ) UpdateClassArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateClassArray ) First () (v UpdateClass , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateClassArray ) Last () (v UpdateClass , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateClassArray ) PopFirst () (v UpdateClass , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateClass
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateClassArray ) Pop () (v UpdateClass , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s UpdateClassArray ) AsUpdateNewMessage () (to UpdateNewMessageArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateNewMessage )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateMessageID () (to UpdateMessageIDArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateMessageID )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateDeleteMessages () (to UpdateDeleteMessagesArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateDeleteMessages )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateUserTyping () (to UpdateUserTypingArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateUserTyping )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateChatUserTyping () (to UpdateChatUserTypingArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateChatUserTyping )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateChatParticipants () (to UpdateChatParticipantsArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateChatParticipants )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateUserStatus () (to UpdateUserStatusArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateUserStatus )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateUserName () (to UpdateUserNameArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateUserName )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateNewAuthorization () (to UpdateNewAuthorizationArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateNewAuthorization )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateNewEncryptedMessage () (to UpdateNewEncryptedMessageArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateNewEncryptedMessage )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateEncryptedChatTyping () (to UpdateEncryptedChatTypingArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateEncryptedChatTyping )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateEncryption () (to UpdateEncryptionArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateEncryption )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateEncryptedMessagesRead () (to UpdateEncryptedMessagesReadArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateEncryptedMessagesRead )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateChatParticipantAdd () (to UpdateChatParticipantAddArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateChatParticipantAdd )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateChatParticipantDelete () (to UpdateChatParticipantDeleteArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateChatParticipantDelete )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateDCOptions () (to UpdateDCOptionsArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateDCOptions )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateNotifySettings () (to UpdateNotifySettingsArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateNotifySettings )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateServiceNotification () (to UpdateServiceNotificationArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateServiceNotification )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdatePrivacy () (to UpdatePrivacyArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdatePrivacy )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateUserPhone () (to UpdateUserPhoneArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateUserPhone )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateReadHistoryInbox () (to UpdateReadHistoryInboxArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateReadHistoryInbox )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateReadHistoryOutbox () (to UpdateReadHistoryOutboxArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateReadHistoryOutbox )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateWebPage () (to UpdateWebPageArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateWebPage )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateReadMessagesContents () (to UpdateReadMessagesContentsArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateReadMessagesContents )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateChannelTooLong () (to UpdateChannelTooLongArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateChannelTooLong )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateChannel () (to UpdateChannelArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateChannel )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateNewChannelMessage () (to UpdateNewChannelMessageArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateNewChannelMessage )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateReadChannelInbox () (to UpdateReadChannelInboxArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateReadChannelInbox )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateDeleteChannelMessages () (to UpdateDeleteChannelMessagesArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateDeleteChannelMessages )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateChannelMessageViews () (to UpdateChannelMessageViewsArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateChannelMessageViews )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateChatParticipantAdmin () (to UpdateChatParticipantAdminArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateChatParticipantAdmin )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateNewStickerSet () (to UpdateNewStickerSetArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateNewStickerSet )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateStickerSetsOrder () (to UpdateStickerSetsOrderArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateStickerSetsOrder )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateStickerSets () (to UpdateStickerSetsArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateStickerSets )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateBotInlineQuery () (to UpdateBotInlineQueryArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateBotInlineQuery )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateBotInlineSend () (to UpdateBotInlineSendArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateBotInlineSend )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateEditChannelMessage () (to UpdateEditChannelMessageArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateEditChannelMessage )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateBotCallbackQuery () (to UpdateBotCallbackQueryArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateBotCallbackQuery )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateEditMessage () (to UpdateEditMessageArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateEditMessage )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateInlineBotCallbackQuery () (to UpdateInlineBotCallbackQueryArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateInlineBotCallbackQuery )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateReadChannelOutbox () (to UpdateReadChannelOutboxArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateReadChannelOutbox )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateDraftMessage () (to UpdateDraftMessageArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateDraftMessage )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateChannelWebPage () (to UpdateChannelWebPageArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateChannelWebPage )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateDialogPinned () (to UpdateDialogPinnedArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateDialogPinned )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdatePinnedDialogs () (to UpdatePinnedDialogsArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdatePinnedDialogs )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateBotWebhookJSON () (to UpdateBotWebhookJSONArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateBotWebhookJSON )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateBotWebhookJSONQuery () (to UpdateBotWebhookJSONQueryArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateBotWebhookJSONQuery )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateBotShippingQuery () (to UpdateBotShippingQueryArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateBotShippingQuery )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateBotPrecheckoutQuery () (to UpdateBotPrecheckoutQueryArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateBotPrecheckoutQuery )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdatePhoneCall () (to UpdatePhoneCallArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdatePhoneCall )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateLangPackTooLong () (to UpdateLangPackTooLongArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateLangPackTooLong )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateLangPack () (to UpdateLangPackArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateLangPack )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateChannelReadMessagesContents () (to UpdateChannelReadMessagesContentsArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateChannelReadMessagesContents )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateChannelAvailableMessages () (to UpdateChannelAvailableMessagesArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateChannelAvailableMessages )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateDialogUnreadMark () (to UpdateDialogUnreadMarkArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateDialogUnreadMark )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateMessagePoll () (to UpdateMessagePollArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateMessagePoll )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateChatDefaultBannedRights () (to UpdateChatDefaultBannedRightsArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateChatDefaultBannedRights )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateFolderPeers () (to UpdateFolderPeersArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateFolderPeers )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdatePeerSettings () (to UpdatePeerSettingsArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdatePeerSettings )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdatePeerLocated () (to UpdatePeerLocatedArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdatePeerLocated )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateNewScheduledMessage () (to UpdateNewScheduledMessageArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateNewScheduledMessage )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateDeleteScheduledMessages () (to UpdateDeleteScheduledMessagesArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateDeleteScheduledMessages )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateTheme () (to UpdateThemeArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateTheme )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateGeoLiveViewed () (to UpdateGeoLiveViewedArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateGeoLiveViewed )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateMessagePollVote () (to UpdateMessagePollVoteArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateMessagePollVote )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateDialogFilter () (to UpdateDialogFilterArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateDialogFilter )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateDialogFilterOrder () (to UpdateDialogFilterOrderArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateDialogFilterOrder )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdatePhoneCallSignalingData () (to UpdatePhoneCallSignalingDataArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdatePhoneCallSignalingData )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateChannelMessageForwards () (to UpdateChannelMessageForwardsArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateChannelMessageForwards )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateReadChannelDiscussionInbox () (to UpdateReadChannelDiscussionInboxArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateReadChannelDiscussionInbox )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateReadChannelDiscussionOutbox () (to UpdateReadChannelDiscussionOutboxArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateReadChannelDiscussionOutbox )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdatePeerBlocked () (to UpdatePeerBlockedArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdatePeerBlocked )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateChannelUserTyping () (to UpdateChannelUserTypingArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateChannelUserTyping )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdatePinnedMessages () (to UpdatePinnedMessagesArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdatePinnedMessages )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdatePinnedChannelMessages () (to UpdatePinnedChannelMessagesArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdatePinnedChannelMessages )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateChat () (to UpdateChatArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateChat )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateGroupCallParticipants () (to UpdateGroupCallParticipantsArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateGroupCallParticipants )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateGroupCall () (to UpdateGroupCallArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateGroupCall )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdatePeerHistoryTTL () (to UpdatePeerHistoryTTLArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdatePeerHistoryTTL )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateChatParticipant () (to UpdateChatParticipantArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateChatParticipant )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateChannelParticipant () (to UpdateChannelParticipantArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateChannelParticipant )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateBotStopped () (to UpdateBotStoppedArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateBotStopped )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateGroupCallConnection () (to UpdateGroupCallConnectionArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateGroupCallConnection )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateBotCommands () (to UpdateBotCommandsArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateBotCommands )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdatePendingJoinRequests () (to UpdatePendingJoinRequestsArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdatePendingJoinRequests )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateBotChatInviteRequester () (to UpdateBotChatInviteRequesterArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateBotChatInviteRequester )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateMessageReactions () (to UpdateMessageReactionsArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateMessageReactions )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateWebViewResultSent () (to UpdateWebViewResultSentArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateWebViewResultSent )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateBotMenuButton () (to UpdateBotMenuButtonArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateBotMenuButton )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateTranscribedAudio () (to UpdateTranscribedAudioArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateTranscribedAudio )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateUserEmojiStatus () (to UpdateUserEmojiStatusArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateUserEmojiStatus )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateMoveStickerSetToTop () (to UpdateMoveStickerSetToTopArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateMoveStickerSetToTop )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateMessageExtendedMedia () (to UpdateMessageExtendedMediaArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateMessageExtendedMedia )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateUser () (to UpdateUserArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateUser )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateStory () (to UpdateStoryArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateStory )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateReadStories () (to UpdateReadStoriesArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateReadStories )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateStoryID () (to UpdateStoryIDArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateStoryID )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateStoriesStealthMode () (to UpdateStoriesStealthModeArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateStoriesStealthMode )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateSentStoryReaction () (to UpdateSentStoryReactionArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateSentStoryReaction )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateBotChatBoost () (to UpdateBotChatBoostArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateBotChatBoost )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateChannelViewForumAsMessages () (to UpdateChannelViewForumAsMessagesArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateChannelViewForumAsMessages )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdatePeerWallpaper () (to UpdatePeerWallpaperArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdatePeerWallpaper )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateBotMessageReaction () (to UpdateBotMessageReactionArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateBotMessageReaction )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateBotMessageReactions () (to UpdateBotMessageReactionsArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateBotMessageReactions )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateSavedDialogPinned () (to UpdateSavedDialogPinnedArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateSavedDialogPinned )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdatePinnedSavedDialogs () (to UpdatePinnedSavedDialogsArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdatePinnedSavedDialogs )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateSMSJob () (to UpdateSMSJobArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateSMSJob )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateQuickReplies () (to UpdateQuickRepliesArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateQuickReplies )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateNewQuickReply () (to UpdateNewQuickReplyArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateNewQuickReply )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateDeleteQuickReply () (to UpdateDeleteQuickReplyArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateDeleteQuickReply )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateQuickReplyMessage () (to UpdateQuickReplyMessageArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateQuickReplyMessage )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateDeleteQuickReplyMessages () (to UpdateDeleteQuickReplyMessagesArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateDeleteQuickReplyMessages )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateBotBusinessConnect () (to UpdateBotBusinessConnectArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateBotBusinessConnect )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateBotNewBusinessMessage () (to UpdateBotNewBusinessMessageArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateBotNewBusinessMessage )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateBotEditBusinessMessage () (to UpdateBotEditBusinessMessageArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateBotEditBusinessMessage )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateBotDeleteBusinessMessage () (to UpdateBotDeleteBusinessMessageArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateBotDeleteBusinessMessage )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateNewStoryReaction () (to UpdateNewStoryReactionArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateNewStoryReaction )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateStarsBalance () (to UpdateStarsBalanceArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateStarsBalance )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateBusinessBotCallbackQuery () (to UpdateBusinessBotCallbackQueryArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateBusinessBotCallbackQuery )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateStarsRevenueStatus () (to UpdateStarsRevenueStatusArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateStarsRevenueStatus )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateBotPurchasedPaidMedia () (to UpdateBotPurchasedPaidMediaArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateBotPurchasedPaidMedia )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdatePaidReactionPrivacy () (to UpdatePaidReactionPrivacyArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdatePaidReactionPrivacy )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateSentPhoneCode () (to UpdateSentPhoneCodeArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateSentPhoneCode )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateGroupCallChainBlocks () (to UpdateGroupCallChainBlocksArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateGroupCallChainBlocks )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateReadMonoForumInbox () (to UpdateReadMonoForumInboxArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateReadMonoForumInbox )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateReadMonoForumOutbox () (to UpdateReadMonoForumOutboxArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateReadMonoForumOutbox )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateMonoForumNoPaidException () (to UpdateMonoForumNoPaidExceptionArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateMonoForumNoPaidException )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateGroupCallMessage () (to UpdateGroupCallMessageArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateGroupCallMessage )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateGroupCallEncryptedMessage () (to UpdateGroupCallEncryptedMessageArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateGroupCallEncryptedMessage )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdatePinnedForumTopic () (to UpdatePinnedForumTopicArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdatePinnedForumTopic )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdatePinnedForumTopics () (to UpdatePinnedForumTopicsArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdatePinnedForumTopics )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateDeleteGroupCallMessages () (to UpdateDeleteGroupCallMessagesArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateDeleteGroupCallMessages )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateStarGiftAuctionState () (to UpdateStarGiftAuctionStateArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateStarGiftAuctionState )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateStarGiftAuctionUserState () (to UpdateStarGiftAuctionUserStateArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateStarGiftAuctionUserState )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateEmojiGameInfo () (to UpdateEmojiGameInfoArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateEmojiGameInfo )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateChatParticipantRank () (to UpdateChatParticipantRankArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateChatParticipantRank )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateManagedBot () (to UpdateManagedBotArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateManagedBot )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateBotGuestChatQuery () (to UpdateBotGuestChatQueryArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateBotGuestChatQuery )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateJoinChatWebViewDecision () (to UpdateJoinChatWebViewDecisionArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateJoinChatWebViewDecision )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateNewBotConnection () (to UpdateNewBotConnectionArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateNewBotConnection )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateWebBrowserSettings () (to UpdateWebBrowserSettingsArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateWebBrowserSettings )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
func (s UpdateClassArray ) AsUpdateWebBrowserException () (to UpdateWebBrowserExceptionArray ) {
for _ , elem := range s {
value , ok := elem .(*UpdateWebBrowserException )
if !ok {
continue
}
to = append (to , *value )
}
return to
}
type UpdateNewMessageArray []UpdateNewMessage
func (s UpdateNewMessageArray ) Sort (less func (a , b UpdateNewMessage ) bool ) UpdateNewMessageArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateNewMessageArray ) SortStable (less func (a , b UpdateNewMessage ) bool ) UpdateNewMessageArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateNewMessageArray ) Retain (keep func (x UpdateNewMessage ) bool ) UpdateNewMessageArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateNewMessageArray ) First () (v UpdateNewMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateNewMessageArray ) Last () (v UpdateNewMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateNewMessageArray ) PopFirst () (v UpdateNewMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateNewMessage
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateNewMessageArray ) Pop () (v UpdateNewMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateMessageIDArray []UpdateMessageID
func (s UpdateMessageIDArray ) Sort (less func (a , b UpdateMessageID ) bool ) UpdateMessageIDArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateMessageIDArray ) SortStable (less func (a , b UpdateMessageID ) bool ) UpdateMessageIDArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateMessageIDArray ) Retain (keep func (x UpdateMessageID ) bool ) UpdateMessageIDArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateMessageIDArray ) First () (v UpdateMessageID , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateMessageIDArray ) Last () (v UpdateMessageID , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateMessageIDArray ) PopFirst () (v UpdateMessageID , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateMessageID
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateMessageIDArray ) Pop () (v UpdateMessageID , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s UpdateMessageIDArray ) SortByID () UpdateMessageIDArray {
return s .Sort (func (a , b UpdateMessageID ) bool {
return a .GetID () < b .GetID ()
})
}
func (s UpdateMessageIDArray ) SortStableByID () UpdateMessageIDArray {
return s .SortStable (func (a , b UpdateMessageID ) bool {
return a .GetID () < b .GetID ()
})
}
func (s UpdateMessageIDArray ) FillMap (to map [int ]UpdateMessageID ) {
for _ , value := range s {
to [value .GetID ()] = value
}
}
func (s UpdateMessageIDArray ) ToMap () map [int ]UpdateMessageID {
r := make (map [int ]UpdateMessageID , len (s ))
s .FillMap (r )
return r
}
type UpdateDeleteMessagesArray []UpdateDeleteMessages
func (s UpdateDeleteMessagesArray ) Sort (less func (a , b UpdateDeleteMessages ) bool ) UpdateDeleteMessagesArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDeleteMessagesArray ) SortStable (less func (a , b UpdateDeleteMessages ) bool ) UpdateDeleteMessagesArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDeleteMessagesArray ) Retain (keep func (x UpdateDeleteMessages ) bool ) UpdateDeleteMessagesArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateDeleteMessagesArray ) First () (v UpdateDeleteMessages , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateDeleteMessagesArray ) Last () (v UpdateDeleteMessages , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateDeleteMessagesArray ) PopFirst () (v UpdateDeleteMessages , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateDeleteMessages
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateDeleteMessagesArray ) Pop () (v UpdateDeleteMessages , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateUserTypingArray []UpdateUserTyping
func (s UpdateUserTypingArray ) Sort (less func (a , b UpdateUserTyping ) bool ) UpdateUserTypingArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateUserTypingArray ) SortStable (less func (a , b UpdateUserTyping ) bool ) UpdateUserTypingArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateUserTypingArray ) Retain (keep func (x UpdateUserTyping ) bool ) UpdateUserTypingArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateUserTypingArray ) First () (v UpdateUserTyping , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateUserTypingArray ) Last () (v UpdateUserTyping , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateUserTypingArray ) PopFirst () (v UpdateUserTyping , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateUserTyping
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateUserTypingArray ) Pop () (v UpdateUserTyping , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateChatUserTypingArray []UpdateChatUserTyping
func (s UpdateChatUserTypingArray ) Sort (less func (a , b UpdateChatUserTyping ) bool ) UpdateChatUserTypingArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChatUserTypingArray ) SortStable (less func (a , b UpdateChatUserTyping ) bool ) UpdateChatUserTypingArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChatUserTypingArray ) Retain (keep func (x UpdateChatUserTyping ) bool ) UpdateChatUserTypingArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateChatUserTypingArray ) First () (v UpdateChatUserTyping , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateChatUserTypingArray ) Last () (v UpdateChatUserTyping , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateChatUserTypingArray ) PopFirst () (v UpdateChatUserTyping , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateChatUserTyping
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateChatUserTypingArray ) Pop () (v UpdateChatUserTyping , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateChatParticipantsArray []UpdateChatParticipants
func (s UpdateChatParticipantsArray ) Sort (less func (a , b UpdateChatParticipants ) bool ) UpdateChatParticipantsArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChatParticipantsArray ) SortStable (less func (a , b UpdateChatParticipants ) bool ) UpdateChatParticipantsArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChatParticipantsArray ) Retain (keep func (x UpdateChatParticipants ) bool ) UpdateChatParticipantsArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateChatParticipantsArray ) First () (v UpdateChatParticipants , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateChatParticipantsArray ) Last () (v UpdateChatParticipants , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateChatParticipantsArray ) PopFirst () (v UpdateChatParticipants , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateChatParticipants
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateChatParticipantsArray ) Pop () (v UpdateChatParticipants , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateUserStatusArray []UpdateUserStatus
func (s UpdateUserStatusArray ) Sort (less func (a , b UpdateUserStatus ) bool ) UpdateUserStatusArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateUserStatusArray ) SortStable (less func (a , b UpdateUserStatus ) bool ) UpdateUserStatusArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateUserStatusArray ) Retain (keep func (x UpdateUserStatus ) bool ) UpdateUserStatusArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateUserStatusArray ) First () (v UpdateUserStatus , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateUserStatusArray ) Last () (v UpdateUserStatus , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateUserStatusArray ) PopFirst () (v UpdateUserStatus , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateUserStatus
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateUserStatusArray ) Pop () (v UpdateUserStatus , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateUserNameArray []UpdateUserName
func (s UpdateUserNameArray ) Sort (less func (a , b UpdateUserName ) bool ) UpdateUserNameArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateUserNameArray ) SortStable (less func (a , b UpdateUserName ) bool ) UpdateUserNameArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateUserNameArray ) Retain (keep func (x UpdateUserName ) bool ) UpdateUserNameArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateUserNameArray ) First () (v UpdateUserName , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateUserNameArray ) Last () (v UpdateUserName , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateUserNameArray ) PopFirst () (v UpdateUserName , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateUserName
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateUserNameArray ) Pop () (v UpdateUserName , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateNewAuthorizationArray []UpdateNewAuthorization
func (s UpdateNewAuthorizationArray ) Sort (less func (a , b UpdateNewAuthorization ) bool ) UpdateNewAuthorizationArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateNewAuthorizationArray ) SortStable (less func (a , b UpdateNewAuthorization ) bool ) UpdateNewAuthorizationArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateNewAuthorizationArray ) Retain (keep func (x UpdateNewAuthorization ) bool ) UpdateNewAuthorizationArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateNewAuthorizationArray ) First () (v UpdateNewAuthorization , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateNewAuthorizationArray ) Last () (v UpdateNewAuthorization , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateNewAuthorizationArray ) PopFirst () (v UpdateNewAuthorization , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateNewAuthorization
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateNewAuthorizationArray ) Pop () (v UpdateNewAuthorization , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateNewEncryptedMessageArray []UpdateNewEncryptedMessage
func (s UpdateNewEncryptedMessageArray ) Sort (less func (a , b UpdateNewEncryptedMessage ) bool ) UpdateNewEncryptedMessageArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateNewEncryptedMessageArray ) SortStable (less func (a , b UpdateNewEncryptedMessage ) bool ) UpdateNewEncryptedMessageArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateNewEncryptedMessageArray ) Retain (keep func (x UpdateNewEncryptedMessage ) bool ) UpdateNewEncryptedMessageArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateNewEncryptedMessageArray ) First () (v UpdateNewEncryptedMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateNewEncryptedMessageArray ) Last () (v UpdateNewEncryptedMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateNewEncryptedMessageArray ) PopFirst () (v UpdateNewEncryptedMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateNewEncryptedMessage
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateNewEncryptedMessageArray ) Pop () (v UpdateNewEncryptedMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateEncryptedChatTypingArray []UpdateEncryptedChatTyping
func (s UpdateEncryptedChatTypingArray ) Sort (less func (a , b UpdateEncryptedChatTyping ) bool ) UpdateEncryptedChatTypingArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateEncryptedChatTypingArray ) SortStable (less func (a , b UpdateEncryptedChatTyping ) bool ) UpdateEncryptedChatTypingArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateEncryptedChatTypingArray ) Retain (keep func (x UpdateEncryptedChatTyping ) bool ) UpdateEncryptedChatTypingArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateEncryptedChatTypingArray ) First () (v UpdateEncryptedChatTyping , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateEncryptedChatTypingArray ) Last () (v UpdateEncryptedChatTyping , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateEncryptedChatTypingArray ) PopFirst () (v UpdateEncryptedChatTyping , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateEncryptedChatTyping
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateEncryptedChatTypingArray ) Pop () (v UpdateEncryptedChatTyping , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateEncryptionArray []UpdateEncryption
func (s UpdateEncryptionArray ) Sort (less func (a , b UpdateEncryption ) bool ) UpdateEncryptionArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateEncryptionArray ) SortStable (less func (a , b UpdateEncryption ) bool ) UpdateEncryptionArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateEncryptionArray ) Retain (keep func (x UpdateEncryption ) bool ) UpdateEncryptionArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateEncryptionArray ) First () (v UpdateEncryption , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateEncryptionArray ) Last () (v UpdateEncryption , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateEncryptionArray ) PopFirst () (v UpdateEncryption , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateEncryption
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateEncryptionArray ) Pop () (v UpdateEncryption , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s UpdateEncryptionArray ) SortByDate () UpdateEncryptionArray {
return s .Sort (func (a , b UpdateEncryption ) bool {
return a .GetDate () < b .GetDate ()
})
}
func (s UpdateEncryptionArray ) SortStableByDate () UpdateEncryptionArray {
return s .SortStable (func (a , b UpdateEncryption ) bool {
return a .GetDate () < b .GetDate ()
})
}
type UpdateEncryptedMessagesReadArray []UpdateEncryptedMessagesRead
func (s UpdateEncryptedMessagesReadArray ) Sort (less func (a , b UpdateEncryptedMessagesRead ) bool ) UpdateEncryptedMessagesReadArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateEncryptedMessagesReadArray ) SortStable (less func (a , b UpdateEncryptedMessagesRead ) bool ) UpdateEncryptedMessagesReadArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateEncryptedMessagesReadArray ) Retain (keep func (x UpdateEncryptedMessagesRead ) bool ) UpdateEncryptedMessagesReadArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateEncryptedMessagesReadArray ) First () (v UpdateEncryptedMessagesRead , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateEncryptedMessagesReadArray ) Last () (v UpdateEncryptedMessagesRead , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateEncryptedMessagesReadArray ) PopFirst () (v UpdateEncryptedMessagesRead , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateEncryptedMessagesRead
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateEncryptedMessagesReadArray ) Pop () (v UpdateEncryptedMessagesRead , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s UpdateEncryptedMessagesReadArray ) SortByDate () UpdateEncryptedMessagesReadArray {
return s .Sort (func (a , b UpdateEncryptedMessagesRead ) bool {
return a .GetDate () < b .GetDate ()
})
}
func (s UpdateEncryptedMessagesReadArray ) SortStableByDate () UpdateEncryptedMessagesReadArray {
return s .SortStable (func (a , b UpdateEncryptedMessagesRead ) bool {
return a .GetDate () < b .GetDate ()
})
}
type UpdateChatParticipantAddArray []UpdateChatParticipantAdd
func (s UpdateChatParticipantAddArray ) Sort (less func (a , b UpdateChatParticipantAdd ) bool ) UpdateChatParticipantAddArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChatParticipantAddArray ) SortStable (less func (a , b UpdateChatParticipantAdd ) bool ) UpdateChatParticipantAddArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChatParticipantAddArray ) Retain (keep func (x UpdateChatParticipantAdd ) bool ) UpdateChatParticipantAddArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateChatParticipantAddArray ) First () (v UpdateChatParticipantAdd , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateChatParticipantAddArray ) Last () (v UpdateChatParticipantAdd , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateChatParticipantAddArray ) PopFirst () (v UpdateChatParticipantAdd , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateChatParticipantAdd
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateChatParticipantAddArray ) Pop () (v UpdateChatParticipantAdd , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s UpdateChatParticipantAddArray ) SortByDate () UpdateChatParticipantAddArray {
return s .Sort (func (a , b UpdateChatParticipantAdd ) bool {
return a .GetDate () < b .GetDate ()
})
}
func (s UpdateChatParticipantAddArray ) SortStableByDate () UpdateChatParticipantAddArray {
return s .SortStable (func (a , b UpdateChatParticipantAdd ) bool {
return a .GetDate () < b .GetDate ()
})
}
type UpdateChatParticipantDeleteArray []UpdateChatParticipantDelete
func (s UpdateChatParticipantDeleteArray ) Sort (less func (a , b UpdateChatParticipantDelete ) bool ) UpdateChatParticipantDeleteArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChatParticipantDeleteArray ) SortStable (less func (a , b UpdateChatParticipantDelete ) bool ) UpdateChatParticipantDeleteArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChatParticipantDeleteArray ) Retain (keep func (x UpdateChatParticipantDelete ) bool ) UpdateChatParticipantDeleteArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateChatParticipantDeleteArray ) First () (v UpdateChatParticipantDelete , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateChatParticipantDeleteArray ) Last () (v UpdateChatParticipantDelete , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateChatParticipantDeleteArray ) PopFirst () (v UpdateChatParticipantDelete , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateChatParticipantDelete
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateChatParticipantDeleteArray ) Pop () (v UpdateChatParticipantDelete , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateDCOptionsArray []UpdateDCOptions
func (s UpdateDCOptionsArray ) Sort (less func (a , b UpdateDCOptions ) bool ) UpdateDCOptionsArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDCOptionsArray ) SortStable (less func (a , b UpdateDCOptions ) bool ) UpdateDCOptionsArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDCOptionsArray ) Retain (keep func (x UpdateDCOptions ) bool ) UpdateDCOptionsArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateDCOptionsArray ) First () (v UpdateDCOptions , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateDCOptionsArray ) Last () (v UpdateDCOptions , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateDCOptionsArray ) PopFirst () (v UpdateDCOptions , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateDCOptions
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateDCOptionsArray ) Pop () (v UpdateDCOptions , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateNotifySettingsArray []UpdateNotifySettings
func (s UpdateNotifySettingsArray ) Sort (less func (a , b UpdateNotifySettings ) bool ) UpdateNotifySettingsArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateNotifySettingsArray ) SortStable (less func (a , b UpdateNotifySettings ) bool ) UpdateNotifySettingsArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateNotifySettingsArray ) Retain (keep func (x UpdateNotifySettings ) bool ) UpdateNotifySettingsArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateNotifySettingsArray ) First () (v UpdateNotifySettings , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateNotifySettingsArray ) Last () (v UpdateNotifySettings , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateNotifySettingsArray ) PopFirst () (v UpdateNotifySettings , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateNotifySettings
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateNotifySettingsArray ) Pop () (v UpdateNotifySettings , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateServiceNotificationArray []UpdateServiceNotification
func (s UpdateServiceNotificationArray ) Sort (less func (a , b UpdateServiceNotification ) bool ) UpdateServiceNotificationArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateServiceNotificationArray ) SortStable (less func (a , b UpdateServiceNotification ) bool ) UpdateServiceNotificationArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateServiceNotificationArray ) Retain (keep func (x UpdateServiceNotification ) bool ) UpdateServiceNotificationArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateServiceNotificationArray ) First () (v UpdateServiceNotification , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateServiceNotificationArray ) Last () (v UpdateServiceNotification , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateServiceNotificationArray ) PopFirst () (v UpdateServiceNotification , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateServiceNotification
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateServiceNotificationArray ) Pop () (v UpdateServiceNotification , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdatePrivacyArray []UpdatePrivacy
func (s UpdatePrivacyArray ) Sort (less func (a , b UpdatePrivacy ) bool ) UpdatePrivacyArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePrivacyArray ) SortStable (less func (a , b UpdatePrivacy ) bool ) UpdatePrivacyArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePrivacyArray ) Retain (keep func (x UpdatePrivacy ) bool ) UpdatePrivacyArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdatePrivacyArray ) First () (v UpdatePrivacy , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdatePrivacyArray ) Last () (v UpdatePrivacy , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdatePrivacyArray ) PopFirst () (v UpdatePrivacy , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdatePrivacy
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdatePrivacyArray ) Pop () (v UpdatePrivacy , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateUserPhoneArray []UpdateUserPhone
func (s UpdateUserPhoneArray ) Sort (less func (a , b UpdateUserPhone ) bool ) UpdateUserPhoneArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateUserPhoneArray ) SortStable (less func (a , b UpdateUserPhone ) bool ) UpdateUserPhoneArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateUserPhoneArray ) Retain (keep func (x UpdateUserPhone ) bool ) UpdateUserPhoneArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateUserPhoneArray ) First () (v UpdateUserPhone , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateUserPhoneArray ) Last () (v UpdateUserPhone , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateUserPhoneArray ) PopFirst () (v UpdateUserPhone , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateUserPhone
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateUserPhoneArray ) Pop () (v UpdateUserPhone , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateReadHistoryInboxArray []UpdateReadHistoryInbox
func (s UpdateReadHistoryInboxArray ) Sort (less func (a , b UpdateReadHistoryInbox ) bool ) UpdateReadHistoryInboxArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateReadHistoryInboxArray ) SortStable (less func (a , b UpdateReadHistoryInbox ) bool ) UpdateReadHistoryInboxArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateReadHistoryInboxArray ) Retain (keep func (x UpdateReadHistoryInbox ) bool ) UpdateReadHistoryInboxArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateReadHistoryInboxArray ) First () (v UpdateReadHistoryInbox , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateReadHistoryInboxArray ) Last () (v UpdateReadHistoryInbox , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateReadHistoryInboxArray ) PopFirst () (v UpdateReadHistoryInbox , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateReadHistoryInbox
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateReadHistoryInboxArray ) Pop () (v UpdateReadHistoryInbox , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateReadHistoryOutboxArray []UpdateReadHistoryOutbox
func (s UpdateReadHistoryOutboxArray ) Sort (less func (a , b UpdateReadHistoryOutbox ) bool ) UpdateReadHistoryOutboxArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateReadHistoryOutboxArray ) SortStable (less func (a , b UpdateReadHistoryOutbox ) bool ) UpdateReadHistoryOutboxArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateReadHistoryOutboxArray ) Retain (keep func (x UpdateReadHistoryOutbox ) bool ) UpdateReadHistoryOutboxArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateReadHistoryOutboxArray ) First () (v UpdateReadHistoryOutbox , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateReadHistoryOutboxArray ) Last () (v UpdateReadHistoryOutbox , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateReadHistoryOutboxArray ) PopFirst () (v UpdateReadHistoryOutbox , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateReadHistoryOutbox
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateReadHistoryOutboxArray ) Pop () (v UpdateReadHistoryOutbox , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateWebPageArray []UpdateWebPage
func (s UpdateWebPageArray ) Sort (less func (a , b UpdateWebPage ) bool ) UpdateWebPageArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateWebPageArray ) SortStable (less func (a , b UpdateWebPage ) bool ) UpdateWebPageArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateWebPageArray ) Retain (keep func (x UpdateWebPage ) bool ) UpdateWebPageArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateWebPageArray ) First () (v UpdateWebPage , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateWebPageArray ) Last () (v UpdateWebPage , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateWebPageArray ) PopFirst () (v UpdateWebPage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateWebPage
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateWebPageArray ) Pop () (v UpdateWebPage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateReadMessagesContentsArray []UpdateReadMessagesContents
func (s UpdateReadMessagesContentsArray ) Sort (less func (a , b UpdateReadMessagesContents ) bool ) UpdateReadMessagesContentsArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateReadMessagesContentsArray ) SortStable (less func (a , b UpdateReadMessagesContents ) bool ) UpdateReadMessagesContentsArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateReadMessagesContentsArray ) Retain (keep func (x UpdateReadMessagesContents ) bool ) UpdateReadMessagesContentsArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateReadMessagesContentsArray ) First () (v UpdateReadMessagesContents , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateReadMessagesContentsArray ) Last () (v UpdateReadMessagesContents , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateReadMessagesContentsArray ) PopFirst () (v UpdateReadMessagesContents , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateReadMessagesContents
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateReadMessagesContentsArray ) Pop () (v UpdateReadMessagesContents , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateChannelTooLongArray []UpdateChannelTooLong
func (s UpdateChannelTooLongArray ) Sort (less func (a , b UpdateChannelTooLong ) bool ) UpdateChannelTooLongArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChannelTooLongArray ) SortStable (less func (a , b UpdateChannelTooLong ) bool ) UpdateChannelTooLongArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChannelTooLongArray ) Retain (keep func (x UpdateChannelTooLong ) bool ) UpdateChannelTooLongArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateChannelTooLongArray ) First () (v UpdateChannelTooLong , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateChannelTooLongArray ) Last () (v UpdateChannelTooLong , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateChannelTooLongArray ) PopFirst () (v UpdateChannelTooLong , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateChannelTooLong
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateChannelTooLongArray ) Pop () (v UpdateChannelTooLong , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateChannelArray []UpdateChannel
func (s UpdateChannelArray ) Sort (less func (a , b UpdateChannel ) bool ) UpdateChannelArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChannelArray ) SortStable (less func (a , b UpdateChannel ) bool ) UpdateChannelArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChannelArray ) Retain (keep func (x UpdateChannel ) bool ) UpdateChannelArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateChannelArray ) First () (v UpdateChannel , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateChannelArray ) Last () (v UpdateChannel , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateChannelArray ) PopFirst () (v UpdateChannel , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateChannel
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateChannelArray ) Pop () (v UpdateChannel , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateNewChannelMessageArray []UpdateNewChannelMessage
func (s UpdateNewChannelMessageArray ) Sort (less func (a , b UpdateNewChannelMessage ) bool ) UpdateNewChannelMessageArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateNewChannelMessageArray ) SortStable (less func (a , b UpdateNewChannelMessage ) bool ) UpdateNewChannelMessageArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateNewChannelMessageArray ) Retain (keep func (x UpdateNewChannelMessage ) bool ) UpdateNewChannelMessageArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateNewChannelMessageArray ) First () (v UpdateNewChannelMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateNewChannelMessageArray ) Last () (v UpdateNewChannelMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateNewChannelMessageArray ) PopFirst () (v UpdateNewChannelMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateNewChannelMessage
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateNewChannelMessageArray ) Pop () (v UpdateNewChannelMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateReadChannelInboxArray []UpdateReadChannelInbox
func (s UpdateReadChannelInboxArray ) Sort (less func (a , b UpdateReadChannelInbox ) bool ) UpdateReadChannelInboxArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateReadChannelInboxArray ) SortStable (less func (a , b UpdateReadChannelInbox ) bool ) UpdateReadChannelInboxArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateReadChannelInboxArray ) Retain (keep func (x UpdateReadChannelInbox ) bool ) UpdateReadChannelInboxArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateReadChannelInboxArray ) First () (v UpdateReadChannelInbox , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateReadChannelInboxArray ) Last () (v UpdateReadChannelInbox , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateReadChannelInboxArray ) PopFirst () (v UpdateReadChannelInbox , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateReadChannelInbox
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateReadChannelInboxArray ) Pop () (v UpdateReadChannelInbox , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateDeleteChannelMessagesArray []UpdateDeleteChannelMessages
func (s UpdateDeleteChannelMessagesArray ) Sort (less func (a , b UpdateDeleteChannelMessages ) bool ) UpdateDeleteChannelMessagesArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDeleteChannelMessagesArray ) SortStable (less func (a , b UpdateDeleteChannelMessages ) bool ) UpdateDeleteChannelMessagesArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDeleteChannelMessagesArray ) Retain (keep func (x UpdateDeleteChannelMessages ) bool ) UpdateDeleteChannelMessagesArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateDeleteChannelMessagesArray ) First () (v UpdateDeleteChannelMessages , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateDeleteChannelMessagesArray ) Last () (v UpdateDeleteChannelMessages , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateDeleteChannelMessagesArray ) PopFirst () (v UpdateDeleteChannelMessages , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateDeleteChannelMessages
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateDeleteChannelMessagesArray ) Pop () (v UpdateDeleteChannelMessages , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateChannelMessageViewsArray []UpdateChannelMessageViews
func (s UpdateChannelMessageViewsArray ) Sort (less func (a , b UpdateChannelMessageViews ) bool ) UpdateChannelMessageViewsArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChannelMessageViewsArray ) SortStable (less func (a , b UpdateChannelMessageViews ) bool ) UpdateChannelMessageViewsArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChannelMessageViewsArray ) Retain (keep func (x UpdateChannelMessageViews ) bool ) UpdateChannelMessageViewsArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateChannelMessageViewsArray ) First () (v UpdateChannelMessageViews , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateChannelMessageViewsArray ) Last () (v UpdateChannelMessageViews , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateChannelMessageViewsArray ) PopFirst () (v UpdateChannelMessageViews , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateChannelMessageViews
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateChannelMessageViewsArray ) Pop () (v UpdateChannelMessageViews , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s UpdateChannelMessageViewsArray ) SortByID () UpdateChannelMessageViewsArray {
return s .Sort (func (a , b UpdateChannelMessageViews ) bool {
return a .GetID () < b .GetID ()
})
}
func (s UpdateChannelMessageViewsArray ) SortStableByID () UpdateChannelMessageViewsArray {
return s .SortStable (func (a , b UpdateChannelMessageViews ) bool {
return a .GetID () < b .GetID ()
})
}
func (s UpdateChannelMessageViewsArray ) FillMap (to map [int ]UpdateChannelMessageViews ) {
for _ , value := range s {
to [value .GetID ()] = value
}
}
func (s UpdateChannelMessageViewsArray ) ToMap () map [int ]UpdateChannelMessageViews {
r := make (map [int ]UpdateChannelMessageViews , len (s ))
s .FillMap (r )
return r
}
type UpdateChatParticipantAdminArray []UpdateChatParticipantAdmin
func (s UpdateChatParticipantAdminArray ) Sort (less func (a , b UpdateChatParticipantAdmin ) bool ) UpdateChatParticipantAdminArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChatParticipantAdminArray ) SortStable (less func (a , b UpdateChatParticipantAdmin ) bool ) UpdateChatParticipantAdminArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChatParticipantAdminArray ) Retain (keep func (x UpdateChatParticipantAdmin ) bool ) UpdateChatParticipantAdminArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateChatParticipantAdminArray ) First () (v UpdateChatParticipantAdmin , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateChatParticipantAdminArray ) Last () (v UpdateChatParticipantAdmin , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateChatParticipantAdminArray ) PopFirst () (v UpdateChatParticipantAdmin , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateChatParticipantAdmin
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateChatParticipantAdminArray ) Pop () (v UpdateChatParticipantAdmin , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateNewStickerSetArray []UpdateNewStickerSet
func (s UpdateNewStickerSetArray ) Sort (less func (a , b UpdateNewStickerSet ) bool ) UpdateNewStickerSetArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateNewStickerSetArray ) SortStable (less func (a , b UpdateNewStickerSet ) bool ) UpdateNewStickerSetArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateNewStickerSetArray ) Retain (keep func (x UpdateNewStickerSet ) bool ) UpdateNewStickerSetArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateNewStickerSetArray ) First () (v UpdateNewStickerSet , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateNewStickerSetArray ) Last () (v UpdateNewStickerSet , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateNewStickerSetArray ) PopFirst () (v UpdateNewStickerSet , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateNewStickerSet
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateNewStickerSetArray ) Pop () (v UpdateNewStickerSet , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateStickerSetsOrderArray []UpdateStickerSetsOrder
func (s UpdateStickerSetsOrderArray ) Sort (less func (a , b UpdateStickerSetsOrder ) bool ) UpdateStickerSetsOrderArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateStickerSetsOrderArray ) SortStable (less func (a , b UpdateStickerSetsOrder ) bool ) UpdateStickerSetsOrderArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateStickerSetsOrderArray ) Retain (keep func (x UpdateStickerSetsOrder ) bool ) UpdateStickerSetsOrderArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateStickerSetsOrderArray ) First () (v UpdateStickerSetsOrder , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateStickerSetsOrderArray ) Last () (v UpdateStickerSetsOrder , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateStickerSetsOrderArray ) PopFirst () (v UpdateStickerSetsOrder , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateStickerSetsOrder
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateStickerSetsOrderArray ) Pop () (v UpdateStickerSetsOrder , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateStickerSetsArray []UpdateStickerSets
func (s UpdateStickerSetsArray ) Sort (less func (a , b UpdateStickerSets ) bool ) UpdateStickerSetsArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateStickerSetsArray ) SortStable (less func (a , b UpdateStickerSets ) bool ) UpdateStickerSetsArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateStickerSetsArray ) Retain (keep func (x UpdateStickerSets ) bool ) UpdateStickerSetsArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateStickerSetsArray ) First () (v UpdateStickerSets , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateStickerSetsArray ) Last () (v UpdateStickerSets , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateStickerSetsArray ) PopFirst () (v UpdateStickerSets , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateStickerSets
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateStickerSetsArray ) Pop () (v UpdateStickerSets , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateBotInlineQueryArray []UpdateBotInlineQuery
func (s UpdateBotInlineQueryArray ) Sort (less func (a , b UpdateBotInlineQuery ) bool ) UpdateBotInlineQueryArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotInlineQueryArray ) SortStable (less func (a , b UpdateBotInlineQuery ) bool ) UpdateBotInlineQueryArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotInlineQueryArray ) Retain (keep func (x UpdateBotInlineQuery ) bool ) UpdateBotInlineQueryArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateBotInlineQueryArray ) First () (v UpdateBotInlineQuery , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateBotInlineQueryArray ) Last () (v UpdateBotInlineQuery , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateBotInlineQueryArray ) PopFirst () (v UpdateBotInlineQuery , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateBotInlineQuery
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateBotInlineQueryArray ) Pop () (v UpdateBotInlineQuery , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateBotInlineSendArray []UpdateBotInlineSend
func (s UpdateBotInlineSendArray ) Sort (less func (a , b UpdateBotInlineSend ) bool ) UpdateBotInlineSendArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotInlineSendArray ) SortStable (less func (a , b UpdateBotInlineSend ) bool ) UpdateBotInlineSendArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotInlineSendArray ) Retain (keep func (x UpdateBotInlineSend ) bool ) UpdateBotInlineSendArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateBotInlineSendArray ) First () (v UpdateBotInlineSend , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateBotInlineSendArray ) Last () (v UpdateBotInlineSend , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateBotInlineSendArray ) PopFirst () (v UpdateBotInlineSend , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateBotInlineSend
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateBotInlineSendArray ) Pop () (v UpdateBotInlineSend , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateEditChannelMessageArray []UpdateEditChannelMessage
func (s UpdateEditChannelMessageArray ) Sort (less func (a , b UpdateEditChannelMessage ) bool ) UpdateEditChannelMessageArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateEditChannelMessageArray ) SortStable (less func (a , b UpdateEditChannelMessage ) bool ) UpdateEditChannelMessageArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateEditChannelMessageArray ) Retain (keep func (x UpdateEditChannelMessage ) bool ) UpdateEditChannelMessageArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateEditChannelMessageArray ) First () (v UpdateEditChannelMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateEditChannelMessageArray ) Last () (v UpdateEditChannelMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateEditChannelMessageArray ) PopFirst () (v UpdateEditChannelMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateEditChannelMessage
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateEditChannelMessageArray ) Pop () (v UpdateEditChannelMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateBotCallbackQueryArray []UpdateBotCallbackQuery
func (s UpdateBotCallbackQueryArray ) Sort (less func (a , b UpdateBotCallbackQuery ) bool ) UpdateBotCallbackQueryArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotCallbackQueryArray ) SortStable (less func (a , b UpdateBotCallbackQuery ) bool ) UpdateBotCallbackQueryArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotCallbackQueryArray ) Retain (keep func (x UpdateBotCallbackQuery ) bool ) UpdateBotCallbackQueryArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateBotCallbackQueryArray ) First () (v UpdateBotCallbackQuery , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateBotCallbackQueryArray ) Last () (v UpdateBotCallbackQuery , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateBotCallbackQueryArray ) PopFirst () (v UpdateBotCallbackQuery , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateBotCallbackQuery
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateBotCallbackQueryArray ) Pop () (v UpdateBotCallbackQuery , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateEditMessageArray []UpdateEditMessage
func (s UpdateEditMessageArray ) Sort (less func (a , b UpdateEditMessage ) bool ) UpdateEditMessageArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateEditMessageArray ) SortStable (less func (a , b UpdateEditMessage ) bool ) UpdateEditMessageArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateEditMessageArray ) Retain (keep func (x UpdateEditMessage ) bool ) UpdateEditMessageArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateEditMessageArray ) First () (v UpdateEditMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateEditMessageArray ) Last () (v UpdateEditMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateEditMessageArray ) PopFirst () (v UpdateEditMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateEditMessage
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateEditMessageArray ) Pop () (v UpdateEditMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateInlineBotCallbackQueryArray []UpdateInlineBotCallbackQuery
func (s UpdateInlineBotCallbackQueryArray ) Sort (less func (a , b UpdateInlineBotCallbackQuery ) bool ) UpdateInlineBotCallbackQueryArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateInlineBotCallbackQueryArray ) SortStable (less func (a , b UpdateInlineBotCallbackQuery ) bool ) UpdateInlineBotCallbackQueryArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateInlineBotCallbackQueryArray ) Retain (keep func (x UpdateInlineBotCallbackQuery ) bool ) UpdateInlineBotCallbackQueryArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateInlineBotCallbackQueryArray ) First () (v UpdateInlineBotCallbackQuery , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateInlineBotCallbackQueryArray ) Last () (v UpdateInlineBotCallbackQuery , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateInlineBotCallbackQueryArray ) PopFirst () (v UpdateInlineBotCallbackQuery , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateInlineBotCallbackQuery
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateInlineBotCallbackQueryArray ) Pop () (v UpdateInlineBotCallbackQuery , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateReadChannelOutboxArray []UpdateReadChannelOutbox
func (s UpdateReadChannelOutboxArray ) Sort (less func (a , b UpdateReadChannelOutbox ) bool ) UpdateReadChannelOutboxArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateReadChannelOutboxArray ) SortStable (less func (a , b UpdateReadChannelOutbox ) bool ) UpdateReadChannelOutboxArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateReadChannelOutboxArray ) Retain (keep func (x UpdateReadChannelOutbox ) bool ) UpdateReadChannelOutboxArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateReadChannelOutboxArray ) First () (v UpdateReadChannelOutbox , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateReadChannelOutboxArray ) Last () (v UpdateReadChannelOutbox , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateReadChannelOutboxArray ) PopFirst () (v UpdateReadChannelOutbox , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateReadChannelOutbox
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateReadChannelOutboxArray ) Pop () (v UpdateReadChannelOutbox , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateDraftMessageArray []UpdateDraftMessage
func (s UpdateDraftMessageArray ) Sort (less func (a , b UpdateDraftMessage ) bool ) UpdateDraftMessageArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDraftMessageArray ) SortStable (less func (a , b UpdateDraftMessage ) bool ) UpdateDraftMessageArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDraftMessageArray ) Retain (keep func (x UpdateDraftMessage ) bool ) UpdateDraftMessageArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateDraftMessageArray ) First () (v UpdateDraftMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateDraftMessageArray ) Last () (v UpdateDraftMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateDraftMessageArray ) PopFirst () (v UpdateDraftMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateDraftMessage
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateDraftMessageArray ) Pop () (v UpdateDraftMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateChannelWebPageArray []UpdateChannelWebPage
func (s UpdateChannelWebPageArray ) Sort (less func (a , b UpdateChannelWebPage ) bool ) UpdateChannelWebPageArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChannelWebPageArray ) SortStable (less func (a , b UpdateChannelWebPage ) bool ) UpdateChannelWebPageArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChannelWebPageArray ) Retain (keep func (x UpdateChannelWebPage ) bool ) UpdateChannelWebPageArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateChannelWebPageArray ) First () (v UpdateChannelWebPage , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateChannelWebPageArray ) Last () (v UpdateChannelWebPage , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateChannelWebPageArray ) PopFirst () (v UpdateChannelWebPage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateChannelWebPage
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateChannelWebPageArray ) Pop () (v UpdateChannelWebPage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateDialogPinnedArray []UpdateDialogPinned
func (s UpdateDialogPinnedArray ) Sort (less func (a , b UpdateDialogPinned ) bool ) UpdateDialogPinnedArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDialogPinnedArray ) SortStable (less func (a , b UpdateDialogPinned ) bool ) UpdateDialogPinnedArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDialogPinnedArray ) Retain (keep func (x UpdateDialogPinned ) bool ) UpdateDialogPinnedArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateDialogPinnedArray ) First () (v UpdateDialogPinned , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateDialogPinnedArray ) Last () (v UpdateDialogPinned , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateDialogPinnedArray ) PopFirst () (v UpdateDialogPinned , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateDialogPinned
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateDialogPinnedArray ) Pop () (v UpdateDialogPinned , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdatePinnedDialogsArray []UpdatePinnedDialogs
func (s UpdatePinnedDialogsArray ) Sort (less func (a , b UpdatePinnedDialogs ) bool ) UpdatePinnedDialogsArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePinnedDialogsArray ) SortStable (less func (a , b UpdatePinnedDialogs ) bool ) UpdatePinnedDialogsArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePinnedDialogsArray ) Retain (keep func (x UpdatePinnedDialogs ) bool ) UpdatePinnedDialogsArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdatePinnedDialogsArray ) First () (v UpdatePinnedDialogs , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdatePinnedDialogsArray ) Last () (v UpdatePinnedDialogs , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdatePinnedDialogsArray ) PopFirst () (v UpdatePinnedDialogs , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdatePinnedDialogs
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdatePinnedDialogsArray ) Pop () (v UpdatePinnedDialogs , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateBotWebhookJSONArray []UpdateBotWebhookJSON
func (s UpdateBotWebhookJSONArray ) Sort (less func (a , b UpdateBotWebhookJSON ) bool ) UpdateBotWebhookJSONArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotWebhookJSONArray ) SortStable (less func (a , b UpdateBotWebhookJSON ) bool ) UpdateBotWebhookJSONArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotWebhookJSONArray ) Retain (keep func (x UpdateBotWebhookJSON ) bool ) UpdateBotWebhookJSONArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateBotWebhookJSONArray ) First () (v UpdateBotWebhookJSON , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateBotWebhookJSONArray ) Last () (v UpdateBotWebhookJSON , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateBotWebhookJSONArray ) PopFirst () (v UpdateBotWebhookJSON , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateBotWebhookJSON
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateBotWebhookJSONArray ) Pop () (v UpdateBotWebhookJSON , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateBotWebhookJSONQueryArray []UpdateBotWebhookJSONQuery
func (s UpdateBotWebhookJSONQueryArray ) Sort (less func (a , b UpdateBotWebhookJSONQuery ) bool ) UpdateBotWebhookJSONQueryArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotWebhookJSONQueryArray ) SortStable (less func (a , b UpdateBotWebhookJSONQuery ) bool ) UpdateBotWebhookJSONQueryArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotWebhookJSONQueryArray ) Retain (keep func (x UpdateBotWebhookJSONQuery ) bool ) UpdateBotWebhookJSONQueryArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateBotWebhookJSONQueryArray ) First () (v UpdateBotWebhookJSONQuery , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateBotWebhookJSONQueryArray ) Last () (v UpdateBotWebhookJSONQuery , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateBotWebhookJSONQueryArray ) PopFirst () (v UpdateBotWebhookJSONQuery , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateBotWebhookJSONQuery
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateBotWebhookJSONQueryArray ) Pop () (v UpdateBotWebhookJSONQuery , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateBotShippingQueryArray []UpdateBotShippingQuery
func (s UpdateBotShippingQueryArray ) Sort (less func (a , b UpdateBotShippingQuery ) bool ) UpdateBotShippingQueryArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotShippingQueryArray ) SortStable (less func (a , b UpdateBotShippingQuery ) bool ) UpdateBotShippingQueryArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotShippingQueryArray ) Retain (keep func (x UpdateBotShippingQuery ) bool ) UpdateBotShippingQueryArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateBotShippingQueryArray ) First () (v UpdateBotShippingQuery , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateBotShippingQueryArray ) Last () (v UpdateBotShippingQuery , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateBotShippingQueryArray ) PopFirst () (v UpdateBotShippingQuery , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateBotShippingQuery
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateBotShippingQueryArray ) Pop () (v UpdateBotShippingQuery , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateBotPrecheckoutQueryArray []UpdateBotPrecheckoutQuery
func (s UpdateBotPrecheckoutQueryArray ) Sort (less func (a , b UpdateBotPrecheckoutQuery ) bool ) UpdateBotPrecheckoutQueryArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotPrecheckoutQueryArray ) SortStable (less func (a , b UpdateBotPrecheckoutQuery ) bool ) UpdateBotPrecheckoutQueryArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotPrecheckoutQueryArray ) Retain (keep func (x UpdateBotPrecheckoutQuery ) bool ) UpdateBotPrecheckoutQueryArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateBotPrecheckoutQueryArray ) First () (v UpdateBotPrecheckoutQuery , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateBotPrecheckoutQueryArray ) Last () (v UpdateBotPrecheckoutQuery , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateBotPrecheckoutQueryArray ) PopFirst () (v UpdateBotPrecheckoutQuery , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateBotPrecheckoutQuery
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateBotPrecheckoutQueryArray ) Pop () (v UpdateBotPrecheckoutQuery , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdatePhoneCallArray []UpdatePhoneCall
func (s UpdatePhoneCallArray ) Sort (less func (a , b UpdatePhoneCall ) bool ) UpdatePhoneCallArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePhoneCallArray ) SortStable (less func (a , b UpdatePhoneCall ) bool ) UpdatePhoneCallArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePhoneCallArray ) Retain (keep func (x UpdatePhoneCall ) bool ) UpdatePhoneCallArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdatePhoneCallArray ) First () (v UpdatePhoneCall , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdatePhoneCallArray ) Last () (v UpdatePhoneCall , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdatePhoneCallArray ) PopFirst () (v UpdatePhoneCall , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdatePhoneCall
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdatePhoneCallArray ) Pop () (v UpdatePhoneCall , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateLangPackTooLongArray []UpdateLangPackTooLong
func (s UpdateLangPackTooLongArray ) Sort (less func (a , b UpdateLangPackTooLong ) bool ) UpdateLangPackTooLongArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateLangPackTooLongArray ) SortStable (less func (a , b UpdateLangPackTooLong ) bool ) UpdateLangPackTooLongArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateLangPackTooLongArray ) Retain (keep func (x UpdateLangPackTooLong ) bool ) UpdateLangPackTooLongArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateLangPackTooLongArray ) First () (v UpdateLangPackTooLong , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateLangPackTooLongArray ) Last () (v UpdateLangPackTooLong , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateLangPackTooLongArray ) PopFirst () (v UpdateLangPackTooLong , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateLangPackTooLong
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateLangPackTooLongArray ) Pop () (v UpdateLangPackTooLong , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateLangPackArray []UpdateLangPack
func (s UpdateLangPackArray ) Sort (less func (a , b UpdateLangPack ) bool ) UpdateLangPackArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateLangPackArray ) SortStable (less func (a , b UpdateLangPack ) bool ) UpdateLangPackArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateLangPackArray ) Retain (keep func (x UpdateLangPack ) bool ) UpdateLangPackArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateLangPackArray ) First () (v UpdateLangPack , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateLangPackArray ) Last () (v UpdateLangPack , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateLangPackArray ) PopFirst () (v UpdateLangPack , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateLangPack
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateLangPackArray ) Pop () (v UpdateLangPack , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateChannelReadMessagesContentsArray []UpdateChannelReadMessagesContents
func (s UpdateChannelReadMessagesContentsArray ) Sort (less func (a , b UpdateChannelReadMessagesContents ) bool ) UpdateChannelReadMessagesContentsArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChannelReadMessagesContentsArray ) SortStable (less func (a , b UpdateChannelReadMessagesContents ) bool ) UpdateChannelReadMessagesContentsArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChannelReadMessagesContentsArray ) Retain (keep func (x UpdateChannelReadMessagesContents ) bool ) UpdateChannelReadMessagesContentsArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateChannelReadMessagesContentsArray ) First () (v UpdateChannelReadMessagesContents , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateChannelReadMessagesContentsArray ) Last () (v UpdateChannelReadMessagesContents , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateChannelReadMessagesContentsArray ) PopFirst () (v UpdateChannelReadMessagesContents , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateChannelReadMessagesContents
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateChannelReadMessagesContentsArray ) Pop () (v UpdateChannelReadMessagesContents , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateChannelAvailableMessagesArray []UpdateChannelAvailableMessages
func (s UpdateChannelAvailableMessagesArray ) Sort (less func (a , b UpdateChannelAvailableMessages ) bool ) UpdateChannelAvailableMessagesArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChannelAvailableMessagesArray ) SortStable (less func (a , b UpdateChannelAvailableMessages ) bool ) UpdateChannelAvailableMessagesArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChannelAvailableMessagesArray ) Retain (keep func (x UpdateChannelAvailableMessages ) bool ) UpdateChannelAvailableMessagesArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateChannelAvailableMessagesArray ) First () (v UpdateChannelAvailableMessages , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateChannelAvailableMessagesArray ) Last () (v UpdateChannelAvailableMessages , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateChannelAvailableMessagesArray ) PopFirst () (v UpdateChannelAvailableMessages , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateChannelAvailableMessages
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateChannelAvailableMessagesArray ) Pop () (v UpdateChannelAvailableMessages , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateDialogUnreadMarkArray []UpdateDialogUnreadMark
func (s UpdateDialogUnreadMarkArray ) Sort (less func (a , b UpdateDialogUnreadMark ) bool ) UpdateDialogUnreadMarkArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDialogUnreadMarkArray ) SortStable (less func (a , b UpdateDialogUnreadMark ) bool ) UpdateDialogUnreadMarkArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDialogUnreadMarkArray ) Retain (keep func (x UpdateDialogUnreadMark ) bool ) UpdateDialogUnreadMarkArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateDialogUnreadMarkArray ) First () (v UpdateDialogUnreadMark , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateDialogUnreadMarkArray ) Last () (v UpdateDialogUnreadMark , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateDialogUnreadMarkArray ) PopFirst () (v UpdateDialogUnreadMark , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateDialogUnreadMark
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateDialogUnreadMarkArray ) Pop () (v UpdateDialogUnreadMark , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateMessagePollArray []UpdateMessagePoll
func (s UpdateMessagePollArray ) Sort (less func (a , b UpdateMessagePoll ) bool ) UpdateMessagePollArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateMessagePollArray ) SortStable (less func (a , b UpdateMessagePoll ) bool ) UpdateMessagePollArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateMessagePollArray ) Retain (keep func (x UpdateMessagePoll ) bool ) UpdateMessagePollArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateMessagePollArray ) First () (v UpdateMessagePoll , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateMessagePollArray ) Last () (v UpdateMessagePoll , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateMessagePollArray ) PopFirst () (v UpdateMessagePoll , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateMessagePoll
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateMessagePollArray ) Pop () (v UpdateMessagePoll , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateChatDefaultBannedRightsArray []UpdateChatDefaultBannedRights
func (s UpdateChatDefaultBannedRightsArray ) Sort (less func (a , b UpdateChatDefaultBannedRights ) bool ) UpdateChatDefaultBannedRightsArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChatDefaultBannedRightsArray ) SortStable (less func (a , b UpdateChatDefaultBannedRights ) bool ) UpdateChatDefaultBannedRightsArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChatDefaultBannedRightsArray ) Retain (keep func (x UpdateChatDefaultBannedRights ) bool ) UpdateChatDefaultBannedRightsArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateChatDefaultBannedRightsArray ) First () (v UpdateChatDefaultBannedRights , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateChatDefaultBannedRightsArray ) Last () (v UpdateChatDefaultBannedRights , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateChatDefaultBannedRightsArray ) PopFirst () (v UpdateChatDefaultBannedRights , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateChatDefaultBannedRights
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateChatDefaultBannedRightsArray ) Pop () (v UpdateChatDefaultBannedRights , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateFolderPeersArray []UpdateFolderPeers
func (s UpdateFolderPeersArray ) Sort (less func (a , b UpdateFolderPeers ) bool ) UpdateFolderPeersArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateFolderPeersArray ) SortStable (less func (a , b UpdateFolderPeers ) bool ) UpdateFolderPeersArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateFolderPeersArray ) Retain (keep func (x UpdateFolderPeers ) bool ) UpdateFolderPeersArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateFolderPeersArray ) First () (v UpdateFolderPeers , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateFolderPeersArray ) Last () (v UpdateFolderPeers , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateFolderPeersArray ) PopFirst () (v UpdateFolderPeers , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateFolderPeers
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateFolderPeersArray ) Pop () (v UpdateFolderPeers , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdatePeerSettingsArray []UpdatePeerSettings
func (s UpdatePeerSettingsArray ) Sort (less func (a , b UpdatePeerSettings ) bool ) UpdatePeerSettingsArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePeerSettingsArray ) SortStable (less func (a , b UpdatePeerSettings ) bool ) UpdatePeerSettingsArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePeerSettingsArray ) Retain (keep func (x UpdatePeerSettings ) bool ) UpdatePeerSettingsArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdatePeerSettingsArray ) First () (v UpdatePeerSettings , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdatePeerSettingsArray ) Last () (v UpdatePeerSettings , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdatePeerSettingsArray ) PopFirst () (v UpdatePeerSettings , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdatePeerSettings
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdatePeerSettingsArray ) Pop () (v UpdatePeerSettings , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdatePeerLocatedArray []UpdatePeerLocated
func (s UpdatePeerLocatedArray ) Sort (less func (a , b UpdatePeerLocated ) bool ) UpdatePeerLocatedArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePeerLocatedArray ) SortStable (less func (a , b UpdatePeerLocated ) bool ) UpdatePeerLocatedArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePeerLocatedArray ) Retain (keep func (x UpdatePeerLocated ) bool ) UpdatePeerLocatedArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdatePeerLocatedArray ) First () (v UpdatePeerLocated , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdatePeerLocatedArray ) Last () (v UpdatePeerLocated , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdatePeerLocatedArray ) PopFirst () (v UpdatePeerLocated , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdatePeerLocated
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdatePeerLocatedArray ) Pop () (v UpdatePeerLocated , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateNewScheduledMessageArray []UpdateNewScheduledMessage
func (s UpdateNewScheduledMessageArray ) Sort (less func (a , b UpdateNewScheduledMessage ) bool ) UpdateNewScheduledMessageArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateNewScheduledMessageArray ) SortStable (less func (a , b UpdateNewScheduledMessage ) bool ) UpdateNewScheduledMessageArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateNewScheduledMessageArray ) Retain (keep func (x UpdateNewScheduledMessage ) bool ) UpdateNewScheduledMessageArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateNewScheduledMessageArray ) First () (v UpdateNewScheduledMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateNewScheduledMessageArray ) Last () (v UpdateNewScheduledMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateNewScheduledMessageArray ) PopFirst () (v UpdateNewScheduledMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateNewScheduledMessage
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateNewScheduledMessageArray ) Pop () (v UpdateNewScheduledMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateDeleteScheduledMessagesArray []UpdateDeleteScheduledMessages
func (s UpdateDeleteScheduledMessagesArray ) Sort (less func (a , b UpdateDeleteScheduledMessages ) bool ) UpdateDeleteScheduledMessagesArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDeleteScheduledMessagesArray ) SortStable (less func (a , b UpdateDeleteScheduledMessages ) bool ) UpdateDeleteScheduledMessagesArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDeleteScheduledMessagesArray ) Retain (keep func (x UpdateDeleteScheduledMessages ) bool ) UpdateDeleteScheduledMessagesArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateDeleteScheduledMessagesArray ) First () (v UpdateDeleteScheduledMessages , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateDeleteScheduledMessagesArray ) Last () (v UpdateDeleteScheduledMessages , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateDeleteScheduledMessagesArray ) PopFirst () (v UpdateDeleteScheduledMessages , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateDeleteScheduledMessages
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateDeleteScheduledMessagesArray ) Pop () (v UpdateDeleteScheduledMessages , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateThemeArray []UpdateTheme
func (s UpdateThemeArray ) Sort (less func (a , b UpdateTheme ) bool ) UpdateThemeArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateThemeArray ) SortStable (less func (a , b UpdateTheme ) bool ) UpdateThemeArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateThemeArray ) Retain (keep func (x UpdateTheme ) bool ) UpdateThemeArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateThemeArray ) First () (v UpdateTheme , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateThemeArray ) Last () (v UpdateTheme , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateThemeArray ) PopFirst () (v UpdateTheme , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateTheme
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateThemeArray ) Pop () (v UpdateTheme , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateGeoLiveViewedArray []UpdateGeoLiveViewed
func (s UpdateGeoLiveViewedArray ) Sort (less func (a , b UpdateGeoLiveViewed ) bool ) UpdateGeoLiveViewedArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateGeoLiveViewedArray ) SortStable (less func (a , b UpdateGeoLiveViewed ) bool ) UpdateGeoLiveViewedArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateGeoLiveViewedArray ) Retain (keep func (x UpdateGeoLiveViewed ) bool ) UpdateGeoLiveViewedArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateGeoLiveViewedArray ) First () (v UpdateGeoLiveViewed , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateGeoLiveViewedArray ) Last () (v UpdateGeoLiveViewed , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateGeoLiveViewedArray ) PopFirst () (v UpdateGeoLiveViewed , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateGeoLiveViewed
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateGeoLiveViewedArray ) Pop () (v UpdateGeoLiveViewed , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateMessagePollVoteArray []UpdateMessagePollVote
func (s UpdateMessagePollVoteArray ) Sort (less func (a , b UpdateMessagePollVote ) bool ) UpdateMessagePollVoteArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateMessagePollVoteArray ) SortStable (less func (a , b UpdateMessagePollVote ) bool ) UpdateMessagePollVoteArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateMessagePollVoteArray ) Retain (keep func (x UpdateMessagePollVote ) bool ) UpdateMessagePollVoteArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateMessagePollVoteArray ) First () (v UpdateMessagePollVote , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateMessagePollVoteArray ) Last () (v UpdateMessagePollVote , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateMessagePollVoteArray ) PopFirst () (v UpdateMessagePollVote , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateMessagePollVote
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateMessagePollVoteArray ) Pop () (v UpdateMessagePollVote , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateDialogFilterArray []UpdateDialogFilter
func (s UpdateDialogFilterArray ) Sort (less func (a , b UpdateDialogFilter ) bool ) UpdateDialogFilterArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDialogFilterArray ) SortStable (less func (a , b UpdateDialogFilter ) bool ) UpdateDialogFilterArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDialogFilterArray ) Retain (keep func (x UpdateDialogFilter ) bool ) UpdateDialogFilterArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateDialogFilterArray ) First () (v UpdateDialogFilter , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateDialogFilterArray ) Last () (v UpdateDialogFilter , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateDialogFilterArray ) PopFirst () (v UpdateDialogFilter , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateDialogFilter
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateDialogFilterArray ) Pop () (v UpdateDialogFilter , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s UpdateDialogFilterArray ) SortByID () UpdateDialogFilterArray {
return s .Sort (func (a , b UpdateDialogFilter ) bool {
return a .GetID () < b .GetID ()
})
}
func (s UpdateDialogFilterArray ) SortStableByID () UpdateDialogFilterArray {
return s .SortStable (func (a , b UpdateDialogFilter ) bool {
return a .GetID () < b .GetID ()
})
}
func (s UpdateDialogFilterArray ) FillMap (to map [int ]UpdateDialogFilter ) {
for _ , value := range s {
to [value .GetID ()] = value
}
}
func (s UpdateDialogFilterArray ) ToMap () map [int ]UpdateDialogFilter {
r := make (map [int ]UpdateDialogFilter , len (s ))
s .FillMap (r )
return r
}
type UpdateDialogFilterOrderArray []UpdateDialogFilterOrder
func (s UpdateDialogFilterOrderArray ) Sort (less func (a , b UpdateDialogFilterOrder ) bool ) UpdateDialogFilterOrderArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDialogFilterOrderArray ) SortStable (less func (a , b UpdateDialogFilterOrder ) bool ) UpdateDialogFilterOrderArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDialogFilterOrderArray ) Retain (keep func (x UpdateDialogFilterOrder ) bool ) UpdateDialogFilterOrderArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateDialogFilterOrderArray ) First () (v UpdateDialogFilterOrder , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateDialogFilterOrderArray ) Last () (v UpdateDialogFilterOrder , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateDialogFilterOrderArray ) PopFirst () (v UpdateDialogFilterOrder , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateDialogFilterOrder
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateDialogFilterOrderArray ) Pop () (v UpdateDialogFilterOrder , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdatePhoneCallSignalingDataArray []UpdatePhoneCallSignalingData
func (s UpdatePhoneCallSignalingDataArray ) Sort (less func (a , b UpdatePhoneCallSignalingData ) bool ) UpdatePhoneCallSignalingDataArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePhoneCallSignalingDataArray ) SortStable (less func (a , b UpdatePhoneCallSignalingData ) bool ) UpdatePhoneCallSignalingDataArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePhoneCallSignalingDataArray ) Retain (keep func (x UpdatePhoneCallSignalingData ) bool ) UpdatePhoneCallSignalingDataArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdatePhoneCallSignalingDataArray ) First () (v UpdatePhoneCallSignalingData , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdatePhoneCallSignalingDataArray ) Last () (v UpdatePhoneCallSignalingData , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdatePhoneCallSignalingDataArray ) PopFirst () (v UpdatePhoneCallSignalingData , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdatePhoneCallSignalingData
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdatePhoneCallSignalingDataArray ) Pop () (v UpdatePhoneCallSignalingData , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateChannelMessageForwardsArray []UpdateChannelMessageForwards
func (s UpdateChannelMessageForwardsArray ) Sort (less func (a , b UpdateChannelMessageForwards ) bool ) UpdateChannelMessageForwardsArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChannelMessageForwardsArray ) SortStable (less func (a , b UpdateChannelMessageForwards ) bool ) UpdateChannelMessageForwardsArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChannelMessageForwardsArray ) Retain (keep func (x UpdateChannelMessageForwards ) bool ) UpdateChannelMessageForwardsArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateChannelMessageForwardsArray ) First () (v UpdateChannelMessageForwards , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateChannelMessageForwardsArray ) Last () (v UpdateChannelMessageForwards , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateChannelMessageForwardsArray ) PopFirst () (v UpdateChannelMessageForwards , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateChannelMessageForwards
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateChannelMessageForwardsArray ) Pop () (v UpdateChannelMessageForwards , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s UpdateChannelMessageForwardsArray ) SortByID () UpdateChannelMessageForwardsArray {
return s .Sort (func (a , b UpdateChannelMessageForwards ) bool {
return a .GetID () < b .GetID ()
})
}
func (s UpdateChannelMessageForwardsArray ) SortStableByID () UpdateChannelMessageForwardsArray {
return s .SortStable (func (a , b UpdateChannelMessageForwards ) bool {
return a .GetID () < b .GetID ()
})
}
func (s UpdateChannelMessageForwardsArray ) FillMap (to map [int ]UpdateChannelMessageForwards ) {
for _ , value := range s {
to [value .GetID ()] = value
}
}
func (s UpdateChannelMessageForwardsArray ) ToMap () map [int ]UpdateChannelMessageForwards {
r := make (map [int ]UpdateChannelMessageForwards , len (s ))
s .FillMap (r )
return r
}
type UpdateReadChannelDiscussionInboxArray []UpdateReadChannelDiscussionInbox
func (s UpdateReadChannelDiscussionInboxArray ) Sort (less func (a , b UpdateReadChannelDiscussionInbox ) bool ) UpdateReadChannelDiscussionInboxArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateReadChannelDiscussionInboxArray ) SortStable (less func (a , b UpdateReadChannelDiscussionInbox ) bool ) UpdateReadChannelDiscussionInboxArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateReadChannelDiscussionInboxArray ) Retain (keep func (x UpdateReadChannelDiscussionInbox ) bool ) UpdateReadChannelDiscussionInboxArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateReadChannelDiscussionInboxArray ) First () (v UpdateReadChannelDiscussionInbox , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateReadChannelDiscussionInboxArray ) Last () (v UpdateReadChannelDiscussionInbox , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateReadChannelDiscussionInboxArray ) PopFirst () (v UpdateReadChannelDiscussionInbox , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateReadChannelDiscussionInbox
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateReadChannelDiscussionInboxArray ) Pop () (v UpdateReadChannelDiscussionInbox , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateReadChannelDiscussionOutboxArray []UpdateReadChannelDiscussionOutbox
func (s UpdateReadChannelDiscussionOutboxArray ) Sort (less func (a , b UpdateReadChannelDiscussionOutbox ) bool ) UpdateReadChannelDiscussionOutboxArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateReadChannelDiscussionOutboxArray ) SortStable (less func (a , b UpdateReadChannelDiscussionOutbox ) bool ) UpdateReadChannelDiscussionOutboxArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateReadChannelDiscussionOutboxArray ) Retain (keep func (x UpdateReadChannelDiscussionOutbox ) bool ) UpdateReadChannelDiscussionOutboxArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateReadChannelDiscussionOutboxArray ) First () (v UpdateReadChannelDiscussionOutbox , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateReadChannelDiscussionOutboxArray ) Last () (v UpdateReadChannelDiscussionOutbox , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateReadChannelDiscussionOutboxArray ) PopFirst () (v UpdateReadChannelDiscussionOutbox , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateReadChannelDiscussionOutbox
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateReadChannelDiscussionOutboxArray ) Pop () (v UpdateReadChannelDiscussionOutbox , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdatePeerBlockedArray []UpdatePeerBlocked
func (s UpdatePeerBlockedArray ) Sort (less func (a , b UpdatePeerBlocked ) bool ) UpdatePeerBlockedArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePeerBlockedArray ) SortStable (less func (a , b UpdatePeerBlocked ) bool ) UpdatePeerBlockedArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePeerBlockedArray ) Retain (keep func (x UpdatePeerBlocked ) bool ) UpdatePeerBlockedArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdatePeerBlockedArray ) First () (v UpdatePeerBlocked , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdatePeerBlockedArray ) Last () (v UpdatePeerBlocked , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdatePeerBlockedArray ) PopFirst () (v UpdatePeerBlocked , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdatePeerBlocked
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdatePeerBlockedArray ) Pop () (v UpdatePeerBlocked , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateChannelUserTypingArray []UpdateChannelUserTyping
func (s UpdateChannelUserTypingArray ) Sort (less func (a , b UpdateChannelUserTyping ) bool ) UpdateChannelUserTypingArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChannelUserTypingArray ) SortStable (less func (a , b UpdateChannelUserTyping ) bool ) UpdateChannelUserTypingArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChannelUserTypingArray ) Retain (keep func (x UpdateChannelUserTyping ) bool ) UpdateChannelUserTypingArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateChannelUserTypingArray ) First () (v UpdateChannelUserTyping , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateChannelUserTypingArray ) Last () (v UpdateChannelUserTyping , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateChannelUserTypingArray ) PopFirst () (v UpdateChannelUserTyping , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateChannelUserTyping
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateChannelUserTypingArray ) Pop () (v UpdateChannelUserTyping , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdatePinnedMessagesArray []UpdatePinnedMessages
func (s UpdatePinnedMessagesArray ) Sort (less func (a , b UpdatePinnedMessages ) bool ) UpdatePinnedMessagesArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePinnedMessagesArray ) SortStable (less func (a , b UpdatePinnedMessages ) bool ) UpdatePinnedMessagesArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePinnedMessagesArray ) Retain (keep func (x UpdatePinnedMessages ) bool ) UpdatePinnedMessagesArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdatePinnedMessagesArray ) First () (v UpdatePinnedMessages , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdatePinnedMessagesArray ) Last () (v UpdatePinnedMessages , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdatePinnedMessagesArray ) PopFirst () (v UpdatePinnedMessages , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdatePinnedMessages
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdatePinnedMessagesArray ) Pop () (v UpdatePinnedMessages , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdatePinnedChannelMessagesArray []UpdatePinnedChannelMessages
func (s UpdatePinnedChannelMessagesArray ) Sort (less func (a , b UpdatePinnedChannelMessages ) bool ) UpdatePinnedChannelMessagesArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePinnedChannelMessagesArray ) SortStable (less func (a , b UpdatePinnedChannelMessages ) bool ) UpdatePinnedChannelMessagesArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePinnedChannelMessagesArray ) Retain (keep func (x UpdatePinnedChannelMessages ) bool ) UpdatePinnedChannelMessagesArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdatePinnedChannelMessagesArray ) First () (v UpdatePinnedChannelMessages , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdatePinnedChannelMessagesArray ) Last () (v UpdatePinnedChannelMessages , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdatePinnedChannelMessagesArray ) PopFirst () (v UpdatePinnedChannelMessages , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdatePinnedChannelMessages
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdatePinnedChannelMessagesArray ) Pop () (v UpdatePinnedChannelMessages , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateChatArray []UpdateChat
func (s UpdateChatArray ) Sort (less func (a , b UpdateChat ) bool ) UpdateChatArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChatArray ) SortStable (less func (a , b UpdateChat ) bool ) UpdateChatArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChatArray ) Retain (keep func (x UpdateChat ) bool ) UpdateChatArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateChatArray ) First () (v UpdateChat , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateChatArray ) Last () (v UpdateChat , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateChatArray ) PopFirst () (v UpdateChat , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateChat
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateChatArray ) Pop () (v UpdateChat , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateGroupCallParticipantsArray []UpdateGroupCallParticipants
func (s UpdateGroupCallParticipantsArray ) Sort (less func (a , b UpdateGroupCallParticipants ) bool ) UpdateGroupCallParticipantsArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateGroupCallParticipantsArray ) SortStable (less func (a , b UpdateGroupCallParticipants ) bool ) UpdateGroupCallParticipantsArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateGroupCallParticipantsArray ) Retain (keep func (x UpdateGroupCallParticipants ) bool ) UpdateGroupCallParticipantsArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateGroupCallParticipantsArray ) First () (v UpdateGroupCallParticipants , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateGroupCallParticipantsArray ) Last () (v UpdateGroupCallParticipants , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateGroupCallParticipantsArray ) PopFirst () (v UpdateGroupCallParticipants , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateGroupCallParticipants
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateGroupCallParticipantsArray ) Pop () (v UpdateGroupCallParticipants , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateGroupCallArray []UpdateGroupCall
func (s UpdateGroupCallArray ) Sort (less func (a , b UpdateGroupCall ) bool ) UpdateGroupCallArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateGroupCallArray ) SortStable (less func (a , b UpdateGroupCall ) bool ) UpdateGroupCallArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateGroupCallArray ) Retain (keep func (x UpdateGroupCall ) bool ) UpdateGroupCallArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateGroupCallArray ) First () (v UpdateGroupCall , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateGroupCallArray ) Last () (v UpdateGroupCall , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateGroupCallArray ) PopFirst () (v UpdateGroupCall , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateGroupCall
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateGroupCallArray ) Pop () (v UpdateGroupCall , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdatePeerHistoryTTLArray []UpdatePeerHistoryTTL
func (s UpdatePeerHistoryTTLArray ) Sort (less func (a , b UpdatePeerHistoryTTL ) bool ) UpdatePeerHistoryTTLArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePeerHistoryTTLArray ) SortStable (less func (a , b UpdatePeerHistoryTTL ) bool ) UpdatePeerHistoryTTLArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePeerHistoryTTLArray ) Retain (keep func (x UpdatePeerHistoryTTL ) bool ) UpdatePeerHistoryTTLArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdatePeerHistoryTTLArray ) First () (v UpdatePeerHistoryTTL , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdatePeerHistoryTTLArray ) Last () (v UpdatePeerHistoryTTL , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdatePeerHistoryTTLArray ) PopFirst () (v UpdatePeerHistoryTTL , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdatePeerHistoryTTL
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdatePeerHistoryTTLArray ) Pop () (v UpdatePeerHistoryTTL , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateChatParticipantArray []UpdateChatParticipant
func (s UpdateChatParticipantArray ) Sort (less func (a , b UpdateChatParticipant ) bool ) UpdateChatParticipantArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChatParticipantArray ) SortStable (less func (a , b UpdateChatParticipant ) bool ) UpdateChatParticipantArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChatParticipantArray ) Retain (keep func (x UpdateChatParticipant ) bool ) UpdateChatParticipantArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateChatParticipantArray ) First () (v UpdateChatParticipant , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateChatParticipantArray ) Last () (v UpdateChatParticipant , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateChatParticipantArray ) PopFirst () (v UpdateChatParticipant , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateChatParticipant
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateChatParticipantArray ) Pop () (v UpdateChatParticipant , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s UpdateChatParticipantArray ) SortByDate () UpdateChatParticipantArray {
return s .Sort (func (a , b UpdateChatParticipant ) bool {
return a .GetDate () < b .GetDate ()
})
}
func (s UpdateChatParticipantArray ) SortStableByDate () UpdateChatParticipantArray {
return s .SortStable (func (a , b UpdateChatParticipant ) bool {
return a .GetDate () < b .GetDate ()
})
}
type UpdateChannelParticipantArray []UpdateChannelParticipant
func (s UpdateChannelParticipantArray ) Sort (less func (a , b UpdateChannelParticipant ) bool ) UpdateChannelParticipantArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChannelParticipantArray ) SortStable (less func (a , b UpdateChannelParticipant ) bool ) UpdateChannelParticipantArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChannelParticipantArray ) Retain (keep func (x UpdateChannelParticipant ) bool ) UpdateChannelParticipantArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateChannelParticipantArray ) First () (v UpdateChannelParticipant , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateChannelParticipantArray ) Last () (v UpdateChannelParticipant , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateChannelParticipantArray ) PopFirst () (v UpdateChannelParticipant , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateChannelParticipant
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateChannelParticipantArray ) Pop () (v UpdateChannelParticipant , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s UpdateChannelParticipantArray ) SortByDate () UpdateChannelParticipantArray {
return s .Sort (func (a , b UpdateChannelParticipant ) bool {
return a .GetDate () < b .GetDate ()
})
}
func (s UpdateChannelParticipantArray ) SortStableByDate () UpdateChannelParticipantArray {
return s .SortStable (func (a , b UpdateChannelParticipant ) bool {
return a .GetDate () < b .GetDate ()
})
}
type UpdateBotStoppedArray []UpdateBotStopped
func (s UpdateBotStoppedArray ) Sort (less func (a , b UpdateBotStopped ) bool ) UpdateBotStoppedArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotStoppedArray ) SortStable (less func (a , b UpdateBotStopped ) bool ) UpdateBotStoppedArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotStoppedArray ) Retain (keep func (x UpdateBotStopped ) bool ) UpdateBotStoppedArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateBotStoppedArray ) First () (v UpdateBotStopped , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateBotStoppedArray ) Last () (v UpdateBotStopped , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateBotStoppedArray ) PopFirst () (v UpdateBotStopped , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateBotStopped
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateBotStoppedArray ) Pop () (v UpdateBotStopped , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s UpdateBotStoppedArray ) SortByDate () UpdateBotStoppedArray {
return s .Sort (func (a , b UpdateBotStopped ) bool {
return a .GetDate () < b .GetDate ()
})
}
func (s UpdateBotStoppedArray ) SortStableByDate () UpdateBotStoppedArray {
return s .SortStable (func (a , b UpdateBotStopped ) bool {
return a .GetDate () < b .GetDate ()
})
}
type UpdateGroupCallConnectionArray []UpdateGroupCallConnection
func (s UpdateGroupCallConnectionArray ) Sort (less func (a , b UpdateGroupCallConnection ) bool ) UpdateGroupCallConnectionArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateGroupCallConnectionArray ) SortStable (less func (a , b UpdateGroupCallConnection ) bool ) UpdateGroupCallConnectionArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateGroupCallConnectionArray ) Retain (keep func (x UpdateGroupCallConnection ) bool ) UpdateGroupCallConnectionArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateGroupCallConnectionArray ) First () (v UpdateGroupCallConnection , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateGroupCallConnectionArray ) Last () (v UpdateGroupCallConnection , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateGroupCallConnectionArray ) PopFirst () (v UpdateGroupCallConnection , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateGroupCallConnection
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateGroupCallConnectionArray ) Pop () (v UpdateGroupCallConnection , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateBotCommandsArray []UpdateBotCommands
func (s UpdateBotCommandsArray ) Sort (less func (a , b UpdateBotCommands ) bool ) UpdateBotCommandsArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotCommandsArray ) SortStable (less func (a , b UpdateBotCommands ) bool ) UpdateBotCommandsArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotCommandsArray ) Retain (keep func (x UpdateBotCommands ) bool ) UpdateBotCommandsArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateBotCommandsArray ) First () (v UpdateBotCommands , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateBotCommandsArray ) Last () (v UpdateBotCommands , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateBotCommandsArray ) PopFirst () (v UpdateBotCommands , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateBotCommands
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateBotCommandsArray ) Pop () (v UpdateBotCommands , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdatePendingJoinRequestsArray []UpdatePendingJoinRequests
func (s UpdatePendingJoinRequestsArray ) Sort (less func (a , b UpdatePendingJoinRequests ) bool ) UpdatePendingJoinRequestsArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePendingJoinRequestsArray ) SortStable (less func (a , b UpdatePendingJoinRequests ) bool ) UpdatePendingJoinRequestsArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePendingJoinRequestsArray ) Retain (keep func (x UpdatePendingJoinRequests ) bool ) UpdatePendingJoinRequestsArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdatePendingJoinRequestsArray ) First () (v UpdatePendingJoinRequests , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdatePendingJoinRequestsArray ) Last () (v UpdatePendingJoinRequests , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdatePendingJoinRequestsArray ) PopFirst () (v UpdatePendingJoinRequests , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdatePendingJoinRequests
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdatePendingJoinRequestsArray ) Pop () (v UpdatePendingJoinRequests , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateBotChatInviteRequesterArray []UpdateBotChatInviteRequester
func (s UpdateBotChatInviteRequesterArray ) Sort (less func (a , b UpdateBotChatInviteRequester ) bool ) UpdateBotChatInviteRequesterArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotChatInviteRequesterArray ) SortStable (less func (a , b UpdateBotChatInviteRequester ) bool ) UpdateBotChatInviteRequesterArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotChatInviteRequesterArray ) Retain (keep func (x UpdateBotChatInviteRequester ) bool ) UpdateBotChatInviteRequesterArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateBotChatInviteRequesterArray ) First () (v UpdateBotChatInviteRequester , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateBotChatInviteRequesterArray ) Last () (v UpdateBotChatInviteRequester , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateBotChatInviteRequesterArray ) PopFirst () (v UpdateBotChatInviteRequester , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateBotChatInviteRequester
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateBotChatInviteRequesterArray ) Pop () (v UpdateBotChatInviteRequester , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s UpdateBotChatInviteRequesterArray ) SortByDate () UpdateBotChatInviteRequesterArray {
return s .Sort (func (a , b UpdateBotChatInviteRequester ) bool {
return a .GetDate () < b .GetDate ()
})
}
func (s UpdateBotChatInviteRequesterArray ) SortStableByDate () UpdateBotChatInviteRequesterArray {
return s .SortStable (func (a , b UpdateBotChatInviteRequester ) bool {
return a .GetDate () < b .GetDate ()
})
}
type UpdateMessageReactionsArray []UpdateMessageReactions
func (s UpdateMessageReactionsArray ) Sort (less func (a , b UpdateMessageReactions ) bool ) UpdateMessageReactionsArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateMessageReactionsArray ) SortStable (less func (a , b UpdateMessageReactions ) bool ) UpdateMessageReactionsArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateMessageReactionsArray ) Retain (keep func (x UpdateMessageReactions ) bool ) UpdateMessageReactionsArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateMessageReactionsArray ) First () (v UpdateMessageReactions , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateMessageReactionsArray ) Last () (v UpdateMessageReactions , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateMessageReactionsArray ) PopFirst () (v UpdateMessageReactions , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateMessageReactions
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateMessageReactionsArray ) Pop () (v UpdateMessageReactions , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateWebViewResultSentArray []UpdateWebViewResultSent
func (s UpdateWebViewResultSentArray ) Sort (less func (a , b UpdateWebViewResultSent ) bool ) UpdateWebViewResultSentArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateWebViewResultSentArray ) SortStable (less func (a , b UpdateWebViewResultSent ) bool ) UpdateWebViewResultSentArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateWebViewResultSentArray ) Retain (keep func (x UpdateWebViewResultSent ) bool ) UpdateWebViewResultSentArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateWebViewResultSentArray ) First () (v UpdateWebViewResultSent , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateWebViewResultSentArray ) Last () (v UpdateWebViewResultSent , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateWebViewResultSentArray ) PopFirst () (v UpdateWebViewResultSent , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateWebViewResultSent
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateWebViewResultSentArray ) Pop () (v UpdateWebViewResultSent , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateBotMenuButtonArray []UpdateBotMenuButton
func (s UpdateBotMenuButtonArray ) Sort (less func (a , b UpdateBotMenuButton ) bool ) UpdateBotMenuButtonArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotMenuButtonArray ) SortStable (less func (a , b UpdateBotMenuButton ) bool ) UpdateBotMenuButtonArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotMenuButtonArray ) Retain (keep func (x UpdateBotMenuButton ) bool ) UpdateBotMenuButtonArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateBotMenuButtonArray ) First () (v UpdateBotMenuButton , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateBotMenuButtonArray ) Last () (v UpdateBotMenuButton , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateBotMenuButtonArray ) PopFirst () (v UpdateBotMenuButton , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateBotMenuButton
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateBotMenuButtonArray ) Pop () (v UpdateBotMenuButton , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateTranscribedAudioArray []UpdateTranscribedAudio
func (s UpdateTranscribedAudioArray ) Sort (less func (a , b UpdateTranscribedAudio ) bool ) UpdateTranscribedAudioArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateTranscribedAudioArray ) SortStable (less func (a , b UpdateTranscribedAudio ) bool ) UpdateTranscribedAudioArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateTranscribedAudioArray ) Retain (keep func (x UpdateTranscribedAudio ) bool ) UpdateTranscribedAudioArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateTranscribedAudioArray ) First () (v UpdateTranscribedAudio , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateTranscribedAudioArray ) Last () (v UpdateTranscribedAudio , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateTranscribedAudioArray ) PopFirst () (v UpdateTranscribedAudio , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateTranscribedAudio
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateTranscribedAudioArray ) Pop () (v UpdateTranscribedAudio , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateUserEmojiStatusArray []UpdateUserEmojiStatus
func (s UpdateUserEmojiStatusArray ) Sort (less func (a , b UpdateUserEmojiStatus ) bool ) UpdateUserEmojiStatusArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateUserEmojiStatusArray ) SortStable (less func (a , b UpdateUserEmojiStatus ) bool ) UpdateUserEmojiStatusArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateUserEmojiStatusArray ) Retain (keep func (x UpdateUserEmojiStatus ) bool ) UpdateUserEmojiStatusArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateUserEmojiStatusArray ) First () (v UpdateUserEmojiStatus , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateUserEmojiStatusArray ) Last () (v UpdateUserEmojiStatus , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateUserEmojiStatusArray ) PopFirst () (v UpdateUserEmojiStatus , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateUserEmojiStatus
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateUserEmojiStatusArray ) Pop () (v UpdateUserEmojiStatus , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateMoveStickerSetToTopArray []UpdateMoveStickerSetToTop
func (s UpdateMoveStickerSetToTopArray ) Sort (less func (a , b UpdateMoveStickerSetToTop ) bool ) UpdateMoveStickerSetToTopArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateMoveStickerSetToTopArray ) SortStable (less func (a , b UpdateMoveStickerSetToTop ) bool ) UpdateMoveStickerSetToTopArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateMoveStickerSetToTopArray ) Retain (keep func (x UpdateMoveStickerSetToTop ) bool ) UpdateMoveStickerSetToTopArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateMoveStickerSetToTopArray ) First () (v UpdateMoveStickerSetToTop , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateMoveStickerSetToTopArray ) Last () (v UpdateMoveStickerSetToTop , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateMoveStickerSetToTopArray ) PopFirst () (v UpdateMoveStickerSetToTop , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateMoveStickerSetToTop
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateMoveStickerSetToTopArray ) Pop () (v UpdateMoveStickerSetToTop , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateMessageExtendedMediaArray []UpdateMessageExtendedMedia
func (s UpdateMessageExtendedMediaArray ) Sort (less func (a , b UpdateMessageExtendedMedia ) bool ) UpdateMessageExtendedMediaArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateMessageExtendedMediaArray ) SortStable (less func (a , b UpdateMessageExtendedMedia ) bool ) UpdateMessageExtendedMediaArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateMessageExtendedMediaArray ) Retain (keep func (x UpdateMessageExtendedMedia ) bool ) UpdateMessageExtendedMediaArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateMessageExtendedMediaArray ) First () (v UpdateMessageExtendedMedia , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateMessageExtendedMediaArray ) Last () (v UpdateMessageExtendedMedia , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateMessageExtendedMediaArray ) PopFirst () (v UpdateMessageExtendedMedia , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateMessageExtendedMedia
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateMessageExtendedMediaArray ) Pop () (v UpdateMessageExtendedMedia , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateUserArray []UpdateUser
func (s UpdateUserArray ) Sort (less func (a , b UpdateUser ) bool ) UpdateUserArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateUserArray ) SortStable (less func (a , b UpdateUser ) bool ) UpdateUserArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateUserArray ) Retain (keep func (x UpdateUser ) bool ) UpdateUserArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateUserArray ) First () (v UpdateUser , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateUserArray ) Last () (v UpdateUser , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateUserArray ) PopFirst () (v UpdateUser , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateUser
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateUserArray ) Pop () (v UpdateUser , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateStoryArray []UpdateStory
func (s UpdateStoryArray ) Sort (less func (a , b UpdateStory ) bool ) UpdateStoryArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateStoryArray ) SortStable (less func (a , b UpdateStory ) bool ) UpdateStoryArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateStoryArray ) Retain (keep func (x UpdateStory ) bool ) UpdateStoryArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateStoryArray ) First () (v UpdateStory , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateStoryArray ) Last () (v UpdateStory , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateStoryArray ) PopFirst () (v UpdateStory , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateStory
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateStoryArray ) Pop () (v UpdateStory , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateReadStoriesArray []UpdateReadStories
func (s UpdateReadStoriesArray ) Sort (less func (a , b UpdateReadStories ) bool ) UpdateReadStoriesArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateReadStoriesArray ) SortStable (less func (a , b UpdateReadStories ) bool ) UpdateReadStoriesArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateReadStoriesArray ) Retain (keep func (x UpdateReadStories ) bool ) UpdateReadStoriesArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateReadStoriesArray ) First () (v UpdateReadStories , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateReadStoriesArray ) Last () (v UpdateReadStories , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateReadStoriesArray ) PopFirst () (v UpdateReadStories , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateReadStories
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateReadStoriesArray ) Pop () (v UpdateReadStories , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateStoryIDArray []UpdateStoryID
func (s UpdateStoryIDArray ) Sort (less func (a , b UpdateStoryID ) bool ) UpdateStoryIDArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateStoryIDArray ) SortStable (less func (a , b UpdateStoryID ) bool ) UpdateStoryIDArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateStoryIDArray ) Retain (keep func (x UpdateStoryID ) bool ) UpdateStoryIDArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateStoryIDArray ) First () (v UpdateStoryID , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateStoryIDArray ) Last () (v UpdateStoryID , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateStoryIDArray ) PopFirst () (v UpdateStoryID , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateStoryID
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateStoryIDArray ) Pop () (v UpdateStoryID , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s UpdateStoryIDArray ) SortByID () UpdateStoryIDArray {
return s .Sort (func (a , b UpdateStoryID ) bool {
return a .GetID () < b .GetID ()
})
}
func (s UpdateStoryIDArray ) SortStableByID () UpdateStoryIDArray {
return s .SortStable (func (a , b UpdateStoryID ) bool {
return a .GetID () < b .GetID ()
})
}
func (s UpdateStoryIDArray ) FillMap (to map [int ]UpdateStoryID ) {
for _ , value := range s {
to [value .GetID ()] = value
}
}
func (s UpdateStoryIDArray ) ToMap () map [int ]UpdateStoryID {
r := make (map [int ]UpdateStoryID , len (s ))
s .FillMap (r )
return r
}
type UpdateStoriesStealthModeArray []UpdateStoriesStealthMode
func (s UpdateStoriesStealthModeArray ) Sort (less func (a , b UpdateStoriesStealthMode ) bool ) UpdateStoriesStealthModeArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateStoriesStealthModeArray ) SortStable (less func (a , b UpdateStoriesStealthMode ) bool ) UpdateStoriesStealthModeArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateStoriesStealthModeArray ) Retain (keep func (x UpdateStoriesStealthMode ) bool ) UpdateStoriesStealthModeArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateStoriesStealthModeArray ) First () (v UpdateStoriesStealthMode , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateStoriesStealthModeArray ) Last () (v UpdateStoriesStealthMode , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateStoriesStealthModeArray ) PopFirst () (v UpdateStoriesStealthMode , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateStoriesStealthMode
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateStoriesStealthModeArray ) Pop () (v UpdateStoriesStealthMode , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateSentStoryReactionArray []UpdateSentStoryReaction
func (s UpdateSentStoryReactionArray ) Sort (less func (a , b UpdateSentStoryReaction ) bool ) UpdateSentStoryReactionArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateSentStoryReactionArray ) SortStable (less func (a , b UpdateSentStoryReaction ) bool ) UpdateSentStoryReactionArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateSentStoryReactionArray ) Retain (keep func (x UpdateSentStoryReaction ) bool ) UpdateSentStoryReactionArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateSentStoryReactionArray ) First () (v UpdateSentStoryReaction , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateSentStoryReactionArray ) Last () (v UpdateSentStoryReaction , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateSentStoryReactionArray ) PopFirst () (v UpdateSentStoryReaction , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateSentStoryReaction
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateSentStoryReactionArray ) Pop () (v UpdateSentStoryReaction , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateBotChatBoostArray []UpdateBotChatBoost
func (s UpdateBotChatBoostArray ) Sort (less func (a , b UpdateBotChatBoost ) bool ) UpdateBotChatBoostArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotChatBoostArray ) SortStable (less func (a , b UpdateBotChatBoost ) bool ) UpdateBotChatBoostArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotChatBoostArray ) Retain (keep func (x UpdateBotChatBoost ) bool ) UpdateBotChatBoostArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateBotChatBoostArray ) First () (v UpdateBotChatBoost , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateBotChatBoostArray ) Last () (v UpdateBotChatBoost , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateBotChatBoostArray ) PopFirst () (v UpdateBotChatBoost , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateBotChatBoost
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateBotChatBoostArray ) Pop () (v UpdateBotChatBoost , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateChannelViewForumAsMessagesArray []UpdateChannelViewForumAsMessages
func (s UpdateChannelViewForumAsMessagesArray ) Sort (less func (a , b UpdateChannelViewForumAsMessages ) bool ) UpdateChannelViewForumAsMessagesArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChannelViewForumAsMessagesArray ) SortStable (less func (a , b UpdateChannelViewForumAsMessages ) bool ) UpdateChannelViewForumAsMessagesArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChannelViewForumAsMessagesArray ) Retain (keep func (x UpdateChannelViewForumAsMessages ) bool ) UpdateChannelViewForumAsMessagesArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateChannelViewForumAsMessagesArray ) First () (v UpdateChannelViewForumAsMessages , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateChannelViewForumAsMessagesArray ) Last () (v UpdateChannelViewForumAsMessages , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateChannelViewForumAsMessagesArray ) PopFirst () (v UpdateChannelViewForumAsMessages , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateChannelViewForumAsMessages
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateChannelViewForumAsMessagesArray ) Pop () (v UpdateChannelViewForumAsMessages , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdatePeerWallpaperArray []UpdatePeerWallpaper
func (s UpdatePeerWallpaperArray ) Sort (less func (a , b UpdatePeerWallpaper ) bool ) UpdatePeerWallpaperArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePeerWallpaperArray ) SortStable (less func (a , b UpdatePeerWallpaper ) bool ) UpdatePeerWallpaperArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePeerWallpaperArray ) Retain (keep func (x UpdatePeerWallpaper ) bool ) UpdatePeerWallpaperArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdatePeerWallpaperArray ) First () (v UpdatePeerWallpaper , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdatePeerWallpaperArray ) Last () (v UpdatePeerWallpaper , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdatePeerWallpaperArray ) PopFirst () (v UpdatePeerWallpaper , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdatePeerWallpaper
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdatePeerWallpaperArray ) Pop () (v UpdatePeerWallpaper , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateBotMessageReactionArray []UpdateBotMessageReaction
func (s UpdateBotMessageReactionArray ) Sort (less func (a , b UpdateBotMessageReaction ) bool ) UpdateBotMessageReactionArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotMessageReactionArray ) SortStable (less func (a , b UpdateBotMessageReaction ) bool ) UpdateBotMessageReactionArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotMessageReactionArray ) Retain (keep func (x UpdateBotMessageReaction ) bool ) UpdateBotMessageReactionArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateBotMessageReactionArray ) First () (v UpdateBotMessageReaction , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateBotMessageReactionArray ) Last () (v UpdateBotMessageReaction , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateBotMessageReactionArray ) PopFirst () (v UpdateBotMessageReaction , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateBotMessageReaction
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateBotMessageReactionArray ) Pop () (v UpdateBotMessageReaction , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s UpdateBotMessageReactionArray ) SortByDate () UpdateBotMessageReactionArray {
return s .Sort (func (a , b UpdateBotMessageReaction ) bool {
return a .GetDate () < b .GetDate ()
})
}
func (s UpdateBotMessageReactionArray ) SortStableByDate () UpdateBotMessageReactionArray {
return s .SortStable (func (a , b UpdateBotMessageReaction ) bool {
return a .GetDate () < b .GetDate ()
})
}
type UpdateBotMessageReactionsArray []UpdateBotMessageReactions
func (s UpdateBotMessageReactionsArray ) Sort (less func (a , b UpdateBotMessageReactions ) bool ) UpdateBotMessageReactionsArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotMessageReactionsArray ) SortStable (less func (a , b UpdateBotMessageReactions ) bool ) UpdateBotMessageReactionsArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotMessageReactionsArray ) Retain (keep func (x UpdateBotMessageReactions ) bool ) UpdateBotMessageReactionsArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateBotMessageReactionsArray ) First () (v UpdateBotMessageReactions , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateBotMessageReactionsArray ) Last () (v UpdateBotMessageReactions , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateBotMessageReactionsArray ) PopFirst () (v UpdateBotMessageReactions , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateBotMessageReactions
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateBotMessageReactionsArray ) Pop () (v UpdateBotMessageReactions , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s UpdateBotMessageReactionsArray ) SortByDate () UpdateBotMessageReactionsArray {
return s .Sort (func (a , b UpdateBotMessageReactions ) bool {
return a .GetDate () < b .GetDate ()
})
}
func (s UpdateBotMessageReactionsArray ) SortStableByDate () UpdateBotMessageReactionsArray {
return s .SortStable (func (a , b UpdateBotMessageReactions ) bool {
return a .GetDate () < b .GetDate ()
})
}
type UpdateSavedDialogPinnedArray []UpdateSavedDialogPinned
func (s UpdateSavedDialogPinnedArray ) Sort (less func (a , b UpdateSavedDialogPinned ) bool ) UpdateSavedDialogPinnedArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateSavedDialogPinnedArray ) SortStable (less func (a , b UpdateSavedDialogPinned ) bool ) UpdateSavedDialogPinnedArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateSavedDialogPinnedArray ) Retain (keep func (x UpdateSavedDialogPinned ) bool ) UpdateSavedDialogPinnedArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateSavedDialogPinnedArray ) First () (v UpdateSavedDialogPinned , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateSavedDialogPinnedArray ) Last () (v UpdateSavedDialogPinned , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateSavedDialogPinnedArray ) PopFirst () (v UpdateSavedDialogPinned , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateSavedDialogPinned
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateSavedDialogPinnedArray ) Pop () (v UpdateSavedDialogPinned , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdatePinnedSavedDialogsArray []UpdatePinnedSavedDialogs
func (s UpdatePinnedSavedDialogsArray ) Sort (less func (a , b UpdatePinnedSavedDialogs ) bool ) UpdatePinnedSavedDialogsArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePinnedSavedDialogsArray ) SortStable (less func (a , b UpdatePinnedSavedDialogs ) bool ) UpdatePinnedSavedDialogsArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePinnedSavedDialogsArray ) Retain (keep func (x UpdatePinnedSavedDialogs ) bool ) UpdatePinnedSavedDialogsArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdatePinnedSavedDialogsArray ) First () (v UpdatePinnedSavedDialogs , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdatePinnedSavedDialogsArray ) Last () (v UpdatePinnedSavedDialogs , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdatePinnedSavedDialogsArray ) PopFirst () (v UpdatePinnedSavedDialogs , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdatePinnedSavedDialogs
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdatePinnedSavedDialogsArray ) Pop () (v UpdatePinnedSavedDialogs , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateSMSJobArray []UpdateSMSJob
func (s UpdateSMSJobArray ) Sort (less func (a , b UpdateSMSJob ) bool ) UpdateSMSJobArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateSMSJobArray ) SortStable (less func (a , b UpdateSMSJob ) bool ) UpdateSMSJobArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateSMSJobArray ) Retain (keep func (x UpdateSMSJob ) bool ) UpdateSMSJobArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateSMSJobArray ) First () (v UpdateSMSJob , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateSMSJobArray ) Last () (v UpdateSMSJob , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateSMSJobArray ) PopFirst () (v UpdateSMSJob , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateSMSJob
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateSMSJobArray ) Pop () (v UpdateSMSJob , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateQuickRepliesArray []UpdateQuickReplies
func (s UpdateQuickRepliesArray ) Sort (less func (a , b UpdateQuickReplies ) bool ) UpdateQuickRepliesArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateQuickRepliesArray ) SortStable (less func (a , b UpdateQuickReplies ) bool ) UpdateQuickRepliesArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateQuickRepliesArray ) Retain (keep func (x UpdateQuickReplies ) bool ) UpdateQuickRepliesArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateQuickRepliesArray ) First () (v UpdateQuickReplies , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateQuickRepliesArray ) Last () (v UpdateQuickReplies , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateQuickRepliesArray ) PopFirst () (v UpdateQuickReplies , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateQuickReplies
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateQuickRepliesArray ) Pop () (v UpdateQuickReplies , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateNewQuickReplyArray []UpdateNewQuickReply
func (s UpdateNewQuickReplyArray ) Sort (less func (a , b UpdateNewQuickReply ) bool ) UpdateNewQuickReplyArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateNewQuickReplyArray ) SortStable (less func (a , b UpdateNewQuickReply ) bool ) UpdateNewQuickReplyArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateNewQuickReplyArray ) Retain (keep func (x UpdateNewQuickReply ) bool ) UpdateNewQuickReplyArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateNewQuickReplyArray ) First () (v UpdateNewQuickReply , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateNewQuickReplyArray ) Last () (v UpdateNewQuickReply , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateNewQuickReplyArray ) PopFirst () (v UpdateNewQuickReply , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateNewQuickReply
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateNewQuickReplyArray ) Pop () (v UpdateNewQuickReply , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateDeleteQuickReplyArray []UpdateDeleteQuickReply
func (s UpdateDeleteQuickReplyArray ) Sort (less func (a , b UpdateDeleteQuickReply ) bool ) UpdateDeleteQuickReplyArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDeleteQuickReplyArray ) SortStable (less func (a , b UpdateDeleteQuickReply ) bool ) UpdateDeleteQuickReplyArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDeleteQuickReplyArray ) Retain (keep func (x UpdateDeleteQuickReply ) bool ) UpdateDeleteQuickReplyArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateDeleteQuickReplyArray ) First () (v UpdateDeleteQuickReply , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateDeleteQuickReplyArray ) Last () (v UpdateDeleteQuickReply , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateDeleteQuickReplyArray ) PopFirst () (v UpdateDeleteQuickReply , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateDeleteQuickReply
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateDeleteQuickReplyArray ) Pop () (v UpdateDeleteQuickReply , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateQuickReplyMessageArray []UpdateQuickReplyMessage
func (s UpdateQuickReplyMessageArray ) Sort (less func (a , b UpdateQuickReplyMessage ) bool ) UpdateQuickReplyMessageArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateQuickReplyMessageArray ) SortStable (less func (a , b UpdateQuickReplyMessage ) bool ) UpdateQuickReplyMessageArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateQuickReplyMessageArray ) Retain (keep func (x UpdateQuickReplyMessage ) bool ) UpdateQuickReplyMessageArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateQuickReplyMessageArray ) First () (v UpdateQuickReplyMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateQuickReplyMessageArray ) Last () (v UpdateQuickReplyMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateQuickReplyMessageArray ) PopFirst () (v UpdateQuickReplyMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateQuickReplyMessage
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateQuickReplyMessageArray ) Pop () (v UpdateQuickReplyMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateDeleteQuickReplyMessagesArray []UpdateDeleteQuickReplyMessages
func (s UpdateDeleteQuickReplyMessagesArray ) Sort (less func (a , b UpdateDeleteQuickReplyMessages ) bool ) UpdateDeleteQuickReplyMessagesArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDeleteQuickReplyMessagesArray ) SortStable (less func (a , b UpdateDeleteQuickReplyMessages ) bool ) UpdateDeleteQuickReplyMessagesArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDeleteQuickReplyMessagesArray ) Retain (keep func (x UpdateDeleteQuickReplyMessages ) bool ) UpdateDeleteQuickReplyMessagesArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateDeleteQuickReplyMessagesArray ) First () (v UpdateDeleteQuickReplyMessages , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateDeleteQuickReplyMessagesArray ) Last () (v UpdateDeleteQuickReplyMessages , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateDeleteQuickReplyMessagesArray ) PopFirst () (v UpdateDeleteQuickReplyMessages , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateDeleteQuickReplyMessages
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateDeleteQuickReplyMessagesArray ) Pop () (v UpdateDeleteQuickReplyMessages , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateBotBusinessConnectArray []UpdateBotBusinessConnect
func (s UpdateBotBusinessConnectArray ) Sort (less func (a , b UpdateBotBusinessConnect ) bool ) UpdateBotBusinessConnectArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotBusinessConnectArray ) SortStable (less func (a , b UpdateBotBusinessConnect ) bool ) UpdateBotBusinessConnectArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotBusinessConnectArray ) Retain (keep func (x UpdateBotBusinessConnect ) bool ) UpdateBotBusinessConnectArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateBotBusinessConnectArray ) First () (v UpdateBotBusinessConnect , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateBotBusinessConnectArray ) Last () (v UpdateBotBusinessConnect , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateBotBusinessConnectArray ) PopFirst () (v UpdateBotBusinessConnect , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateBotBusinessConnect
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateBotBusinessConnectArray ) Pop () (v UpdateBotBusinessConnect , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateBotNewBusinessMessageArray []UpdateBotNewBusinessMessage
func (s UpdateBotNewBusinessMessageArray ) Sort (less func (a , b UpdateBotNewBusinessMessage ) bool ) UpdateBotNewBusinessMessageArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotNewBusinessMessageArray ) SortStable (less func (a , b UpdateBotNewBusinessMessage ) bool ) UpdateBotNewBusinessMessageArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotNewBusinessMessageArray ) Retain (keep func (x UpdateBotNewBusinessMessage ) bool ) UpdateBotNewBusinessMessageArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateBotNewBusinessMessageArray ) First () (v UpdateBotNewBusinessMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateBotNewBusinessMessageArray ) Last () (v UpdateBotNewBusinessMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateBotNewBusinessMessageArray ) PopFirst () (v UpdateBotNewBusinessMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateBotNewBusinessMessage
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateBotNewBusinessMessageArray ) Pop () (v UpdateBotNewBusinessMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateBotEditBusinessMessageArray []UpdateBotEditBusinessMessage
func (s UpdateBotEditBusinessMessageArray ) Sort (less func (a , b UpdateBotEditBusinessMessage ) bool ) UpdateBotEditBusinessMessageArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotEditBusinessMessageArray ) SortStable (less func (a , b UpdateBotEditBusinessMessage ) bool ) UpdateBotEditBusinessMessageArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotEditBusinessMessageArray ) Retain (keep func (x UpdateBotEditBusinessMessage ) bool ) UpdateBotEditBusinessMessageArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateBotEditBusinessMessageArray ) First () (v UpdateBotEditBusinessMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateBotEditBusinessMessageArray ) Last () (v UpdateBotEditBusinessMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateBotEditBusinessMessageArray ) PopFirst () (v UpdateBotEditBusinessMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateBotEditBusinessMessage
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateBotEditBusinessMessageArray ) Pop () (v UpdateBotEditBusinessMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateBotDeleteBusinessMessageArray []UpdateBotDeleteBusinessMessage
func (s UpdateBotDeleteBusinessMessageArray ) Sort (less func (a , b UpdateBotDeleteBusinessMessage ) bool ) UpdateBotDeleteBusinessMessageArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotDeleteBusinessMessageArray ) SortStable (less func (a , b UpdateBotDeleteBusinessMessage ) bool ) UpdateBotDeleteBusinessMessageArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotDeleteBusinessMessageArray ) Retain (keep func (x UpdateBotDeleteBusinessMessage ) bool ) UpdateBotDeleteBusinessMessageArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateBotDeleteBusinessMessageArray ) First () (v UpdateBotDeleteBusinessMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateBotDeleteBusinessMessageArray ) Last () (v UpdateBotDeleteBusinessMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateBotDeleteBusinessMessageArray ) PopFirst () (v UpdateBotDeleteBusinessMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateBotDeleteBusinessMessage
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateBotDeleteBusinessMessageArray ) Pop () (v UpdateBotDeleteBusinessMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateNewStoryReactionArray []UpdateNewStoryReaction
func (s UpdateNewStoryReactionArray ) Sort (less func (a , b UpdateNewStoryReaction ) bool ) UpdateNewStoryReactionArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateNewStoryReactionArray ) SortStable (less func (a , b UpdateNewStoryReaction ) bool ) UpdateNewStoryReactionArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateNewStoryReactionArray ) Retain (keep func (x UpdateNewStoryReaction ) bool ) UpdateNewStoryReactionArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateNewStoryReactionArray ) First () (v UpdateNewStoryReaction , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateNewStoryReactionArray ) Last () (v UpdateNewStoryReaction , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateNewStoryReactionArray ) PopFirst () (v UpdateNewStoryReaction , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateNewStoryReaction
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateNewStoryReactionArray ) Pop () (v UpdateNewStoryReaction , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateStarsBalanceArray []UpdateStarsBalance
func (s UpdateStarsBalanceArray ) Sort (less func (a , b UpdateStarsBalance ) bool ) UpdateStarsBalanceArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateStarsBalanceArray ) SortStable (less func (a , b UpdateStarsBalance ) bool ) UpdateStarsBalanceArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateStarsBalanceArray ) Retain (keep func (x UpdateStarsBalance ) bool ) UpdateStarsBalanceArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateStarsBalanceArray ) First () (v UpdateStarsBalance , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateStarsBalanceArray ) Last () (v UpdateStarsBalance , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateStarsBalanceArray ) PopFirst () (v UpdateStarsBalance , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateStarsBalance
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateStarsBalanceArray ) Pop () (v UpdateStarsBalance , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateBusinessBotCallbackQueryArray []UpdateBusinessBotCallbackQuery
func (s UpdateBusinessBotCallbackQueryArray ) Sort (less func (a , b UpdateBusinessBotCallbackQuery ) bool ) UpdateBusinessBotCallbackQueryArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBusinessBotCallbackQueryArray ) SortStable (less func (a , b UpdateBusinessBotCallbackQuery ) bool ) UpdateBusinessBotCallbackQueryArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBusinessBotCallbackQueryArray ) Retain (keep func (x UpdateBusinessBotCallbackQuery ) bool ) UpdateBusinessBotCallbackQueryArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateBusinessBotCallbackQueryArray ) First () (v UpdateBusinessBotCallbackQuery , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateBusinessBotCallbackQueryArray ) Last () (v UpdateBusinessBotCallbackQuery , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateBusinessBotCallbackQueryArray ) PopFirst () (v UpdateBusinessBotCallbackQuery , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateBusinessBotCallbackQuery
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateBusinessBotCallbackQueryArray ) Pop () (v UpdateBusinessBotCallbackQuery , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateStarsRevenueStatusArray []UpdateStarsRevenueStatus
func (s UpdateStarsRevenueStatusArray ) Sort (less func (a , b UpdateStarsRevenueStatus ) bool ) UpdateStarsRevenueStatusArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateStarsRevenueStatusArray ) SortStable (less func (a , b UpdateStarsRevenueStatus ) bool ) UpdateStarsRevenueStatusArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateStarsRevenueStatusArray ) Retain (keep func (x UpdateStarsRevenueStatus ) bool ) UpdateStarsRevenueStatusArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateStarsRevenueStatusArray ) First () (v UpdateStarsRevenueStatus , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateStarsRevenueStatusArray ) Last () (v UpdateStarsRevenueStatus , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateStarsRevenueStatusArray ) PopFirst () (v UpdateStarsRevenueStatus , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateStarsRevenueStatus
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateStarsRevenueStatusArray ) Pop () (v UpdateStarsRevenueStatus , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateBotPurchasedPaidMediaArray []UpdateBotPurchasedPaidMedia
func (s UpdateBotPurchasedPaidMediaArray ) Sort (less func (a , b UpdateBotPurchasedPaidMedia ) bool ) UpdateBotPurchasedPaidMediaArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotPurchasedPaidMediaArray ) SortStable (less func (a , b UpdateBotPurchasedPaidMedia ) bool ) UpdateBotPurchasedPaidMediaArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotPurchasedPaidMediaArray ) Retain (keep func (x UpdateBotPurchasedPaidMedia ) bool ) UpdateBotPurchasedPaidMediaArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateBotPurchasedPaidMediaArray ) First () (v UpdateBotPurchasedPaidMedia , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateBotPurchasedPaidMediaArray ) Last () (v UpdateBotPurchasedPaidMedia , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateBotPurchasedPaidMediaArray ) PopFirst () (v UpdateBotPurchasedPaidMedia , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateBotPurchasedPaidMedia
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateBotPurchasedPaidMediaArray ) Pop () (v UpdateBotPurchasedPaidMedia , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdatePaidReactionPrivacyArray []UpdatePaidReactionPrivacy
func (s UpdatePaidReactionPrivacyArray ) Sort (less func (a , b UpdatePaidReactionPrivacy ) bool ) UpdatePaidReactionPrivacyArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePaidReactionPrivacyArray ) SortStable (less func (a , b UpdatePaidReactionPrivacy ) bool ) UpdatePaidReactionPrivacyArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePaidReactionPrivacyArray ) Retain (keep func (x UpdatePaidReactionPrivacy ) bool ) UpdatePaidReactionPrivacyArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdatePaidReactionPrivacyArray ) First () (v UpdatePaidReactionPrivacy , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdatePaidReactionPrivacyArray ) Last () (v UpdatePaidReactionPrivacy , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdatePaidReactionPrivacyArray ) PopFirst () (v UpdatePaidReactionPrivacy , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdatePaidReactionPrivacy
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdatePaidReactionPrivacyArray ) Pop () (v UpdatePaidReactionPrivacy , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateSentPhoneCodeArray []UpdateSentPhoneCode
func (s UpdateSentPhoneCodeArray ) Sort (less func (a , b UpdateSentPhoneCode ) bool ) UpdateSentPhoneCodeArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateSentPhoneCodeArray ) SortStable (less func (a , b UpdateSentPhoneCode ) bool ) UpdateSentPhoneCodeArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateSentPhoneCodeArray ) Retain (keep func (x UpdateSentPhoneCode ) bool ) UpdateSentPhoneCodeArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateSentPhoneCodeArray ) First () (v UpdateSentPhoneCode , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateSentPhoneCodeArray ) Last () (v UpdateSentPhoneCode , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateSentPhoneCodeArray ) PopFirst () (v UpdateSentPhoneCode , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateSentPhoneCode
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateSentPhoneCodeArray ) Pop () (v UpdateSentPhoneCode , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateGroupCallChainBlocksArray []UpdateGroupCallChainBlocks
func (s UpdateGroupCallChainBlocksArray ) Sort (less func (a , b UpdateGroupCallChainBlocks ) bool ) UpdateGroupCallChainBlocksArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateGroupCallChainBlocksArray ) SortStable (less func (a , b UpdateGroupCallChainBlocks ) bool ) UpdateGroupCallChainBlocksArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateGroupCallChainBlocksArray ) Retain (keep func (x UpdateGroupCallChainBlocks ) bool ) UpdateGroupCallChainBlocksArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateGroupCallChainBlocksArray ) First () (v UpdateGroupCallChainBlocks , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateGroupCallChainBlocksArray ) Last () (v UpdateGroupCallChainBlocks , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateGroupCallChainBlocksArray ) PopFirst () (v UpdateGroupCallChainBlocks , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateGroupCallChainBlocks
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateGroupCallChainBlocksArray ) Pop () (v UpdateGroupCallChainBlocks , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateReadMonoForumInboxArray []UpdateReadMonoForumInbox
func (s UpdateReadMonoForumInboxArray ) Sort (less func (a , b UpdateReadMonoForumInbox ) bool ) UpdateReadMonoForumInboxArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateReadMonoForumInboxArray ) SortStable (less func (a , b UpdateReadMonoForumInbox ) bool ) UpdateReadMonoForumInboxArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateReadMonoForumInboxArray ) Retain (keep func (x UpdateReadMonoForumInbox ) bool ) UpdateReadMonoForumInboxArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateReadMonoForumInboxArray ) First () (v UpdateReadMonoForumInbox , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateReadMonoForumInboxArray ) Last () (v UpdateReadMonoForumInbox , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateReadMonoForumInboxArray ) PopFirst () (v UpdateReadMonoForumInbox , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateReadMonoForumInbox
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateReadMonoForumInboxArray ) Pop () (v UpdateReadMonoForumInbox , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateReadMonoForumOutboxArray []UpdateReadMonoForumOutbox
func (s UpdateReadMonoForumOutboxArray ) Sort (less func (a , b UpdateReadMonoForumOutbox ) bool ) UpdateReadMonoForumOutboxArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateReadMonoForumOutboxArray ) SortStable (less func (a , b UpdateReadMonoForumOutbox ) bool ) UpdateReadMonoForumOutboxArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateReadMonoForumOutboxArray ) Retain (keep func (x UpdateReadMonoForumOutbox ) bool ) UpdateReadMonoForumOutboxArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateReadMonoForumOutboxArray ) First () (v UpdateReadMonoForumOutbox , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateReadMonoForumOutboxArray ) Last () (v UpdateReadMonoForumOutbox , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateReadMonoForumOutboxArray ) PopFirst () (v UpdateReadMonoForumOutbox , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateReadMonoForumOutbox
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateReadMonoForumOutboxArray ) Pop () (v UpdateReadMonoForumOutbox , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateMonoForumNoPaidExceptionArray []UpdateMonoForumNoPaidException
func (s UpdateMonoForumNoPaidExceptionArray ) Sort (less func (a , b UpdateMonoForumNoPaidException ) bool ) UpdateMonoForumNoPaidExceptionArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateMonoForumNoPaidExceptionArray ) SortStable (less func (a , b UpdateMonoForumNoPaidException ) bool ) UpdateMonoForumNoPaidExceptionArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateMonoForumNoPaidExceptionArray ) Retain (keep func (x UpdateMonoForumNoPaidException ) bool ) UpdateMonoForumNoPaidExceptionArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateMonoForumNoPaidExceptionArray ) First () (v UpdateMonoForumNoPaidException , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateMonoForumNoPaidExceptionArray ) Last () (v UpdateMonoForumNoPaidException , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateMonoForumNoPaidExceptionArray ) PopFirst () (v UpdateMonoForumNoPaidException , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateMonoForumNoPaidException
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateMonoForumNoPaidExceptionArray ) Pop () (v UpdateMonoForumNoPaidException , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateGroupCallMessageArray []UpdateGroupCallMessage
func (s UpdateGroupCallMessageArray ) Sort (less func (a , b UpdateGroupCallMessage ) bool ) UpdateGroupCallMessageArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateGroupCallMessageArray ) SortStable (less func (a , b UpdateGroupCallMessage ) bool ) UpdateGroupCallMessageArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateGroupCallMessageArray ) Retain (keep func (x UpdateGroupCallMessage ) bool ) UpdateGroupCallMessageArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateGroupCallMessageArray ) First () (v UpdateGroupCallMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateGroupCallMessageArray ) Last () (v UpdateGroupCallMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateGroupCallMessageArray ) PopFirst () (v UpdateGroupCallMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateGroupCallMessage
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateGroupCallMessageArray ) Pop () (v UpdateGroupCallMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateGroupCallEncryptedMessageArray []UpdateGroupCallEncryptedMessage
func (s UpdateGroupCallEncryptedMessageArray ) Sort (less func (a , b UpdateGroupCallEncryptedMessage ) bool ) UpdateGroupCallEncryptedMessageArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateGroupCallEncryptedMessageArray ) SortStable (less func (a , b UpdateGroupCallEncryptedMessage ) bool ) UpdateGroupCallEncryptedMessageArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateGroupCallEncryptedMessageArray ) Retain (keep func (x UpdateGroupCallEncryptedMessage ) bool ) UpdateGroupCallEncryptedMessageArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateGroupCallEncryptedMessageArray ) First () (v UpdateGroupCallEncryptedMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateGroupCallEncryptedMessageArray ) Last () (v UpdateGroupCallEncryptedMessage , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateGroupCallEncryptedMessageArray ) PopFirst () (v UpdateGroupCallEncryptedMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateGroupCallEncryptedMessage
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateGroupCallEncryptedMessageArray ) Pop () (v UpdateGroupCallEncryptedMessage , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdatePinnedForumTopicArray []UpdatePinnedForumTopic
func (s UpdatePinnedForumTopicArray ) Sort (less func (a , b UpdatePinnedForumTopic ) bool ) UpdatePinnedForumTopicArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePinnedForumTopicArray ) SortStable (less func (a , b UpdatePinnedForumTopic ) bool ) UpdatePinnedForumTopicArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePinnedForumTopicArray ) Retain (keep func (x UpdatePinnedForumTopic ) bool ) UpdatePinnedForumTopicArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdatePinnedForumTopicArray ) First () (v UpdatePinnedForumTopic , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdatePinnedForumTopicArray ) Last () (v UpdatePinnedForumTopic , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdatePinnedForumTopicArray ) PopFirst () (v UpdatePinnedForumTopic , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdatePinnedForumTopic
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdatePinnedForumTopicArray ) Pop () (v UpdatePinnedForumTopic , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdatePinnedForumTopicsArray []UpdatePinnedForumTopics
func (s UpdatePinnedForumTopicsArray ) Sort (less func (a , b UpdatePinnedForumTopics ) bool ) UpdatePinnedForumTopicsArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePinnedForumTopicsArray ) SortStable (less func (a , b UpdatePinnedForumTopics ) bool ) UpdatePinnedForumTopicsArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdatePinnedForumTopicsArray ) Retain (keep func (x UpdatePinnedForumTopics ) bool ) UpdatePinnedForumTopicsArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdatePinnedForumTopicsArray ) First () (v UpdatePinnedForumTopics , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdatePinnedForumTopicsArray ) Last () (v UpdatePinnedForumTopics , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdatePinnedForumTopicsArray ) PopFirst () (v UpdatePinnedForumTopics , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdatePinnedForumTopics
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdatePinnedForumTopicsArray ) Pop () (v UpdatePinnedForumTopics , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateDeleteGroupCallMessagesArray []UpdateDeleteGroupCallMessages
func (s UpdateDeleteGroupCallMessagesArray ) Sort (less func (a , b UpdateDeleteGroupCallMessages ) bool ) UpdateDeleteGroupCallMessagesArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDeleteGroupCallMessagesArray ) SortStable (less func (a , b UpdateDeleteGroupCallMessages ) bool ) UpdateDeleteGroupCallMessagesArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateDeleteGroupCallMessagesArray ) Retain (keep func (x UpdateDeleteGroupCallMessages ) bool ) UpdateDeleteGroupCallMessagesArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateDeleteGroupCallMessagesArray ) First () (v UpdateDeleteGroupCallMessages , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateDeleteGroupCallMessagesArray ) Last () (v UpdateDeleteGroupCallMessages , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateDeleteGroupCallMessagesArray ) PopFirst () (v UpdateDeleteGroupCallMessages , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateDeleteGroupCallMessages
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateDeleteGroupCallMessagesArray ) Pop () (v UpdateDeleteGroupCallMessages , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateStarGiftAuctionStateArray []UpdateStarGiftAuctionState
func (s UpdateStarGiftAuctionStateArray ) Sort (less func (a , b UpdateStarGiftAuctionState ) bool ) UpdateStarGiftAuctionStateArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateStarGiftAuctionStateArray ) SortStable (less func (a , b UpdateStarGiftAuctionState ) bool ) UpdateStarGiftAuctionStateArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateStarGiftAuctionStateArray ) Retain (keep func (x UpdateStarGiftAuctionState ) bool ) UpdateStarGiftAuctionStateArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateStarGiftAuctionStateArray ) First () (v UpdateStarGiftAuctionState , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateStarGiftAuctionStateArray ) Last () (v UpdateStarGiftAuctionState , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateStarGiftAuctionStateArray ) PopFirst () (v UpdateStarGiftAuctionState , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateStarGiftAuctionState
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateStarGiftAuctionStateArray ) Pop () (v UpdateStarGiftAuctionState , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateStarGiftAuctionUserStateArray []UpdateStarGiftAuctionUserState
func (s UpdateStarGiftAuctionUserStateArray ) Sort (less func (a , b UpdateStarGiftAuctionUserState ) bool ) UpdateStarGiftAuctionUserStateArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateStarGiftAuctionUserStateArray ) SortStable (less func (a , b UpdateStarGiftAuctionUserState ) bool ) UpdateStarGiftAuctionUserStateArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateStarGiftAuctionUserStateArray ) Retain (keep func (x UpdateStarGiftAuctionUserState ) bool ) UpdateStarGiftAuctionUserStateArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateStarGiftAuctionUserStateArray ) First () (v UpdateStarGiftAuctionUserState , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateStarGiftAuctionUserStateArray ) Last () (v UpdateStarGiftAuctionUserState , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateStarGiftAuctionUserStateArray ) PopFirst () (v UpdateStarGiftAuctionUserState , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateStarGiftAuctionUserState
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateStarGiftAuctionUserStateArray ) Pop () (v UpdateStarGiftAuctionUserState , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateEmojiGameInfoArray []UpdateEmojiGameInfo
func (s UpdateEmojiGameInfoArray ) Sort (less func (a , b UpdateEmojiGameInfo ) bool ) UpdateEmojiGameInfoArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateEmojiGameInfoArray ) SortStable (less func (a , b UpdateEmojiGameInfo ) bool ) UpdateEmojiGameInfoArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateEmojiGameInfoArray ) Retain (keep func (x UpdateEmojiGameInfo ) bool ) UpdateEmojiGameInfoArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateEmojiGameInfoArray ) First () (v UpdateEmojiGameInfo , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateEmojiGameInfoArray ) Last () (v UpdateEmojiGameInfo , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateEmojiGameInfoArray ) PopFirst () (v UpdateEmojiGameInfo , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateEmojiGameInfo
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateEmojiGameInfoArray ) Pop () (v UpdateEmojiGameInfo , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateChatParticipantRankArray []UpdateChatParticipantRank
func (s UpdateChatParticipantRankArray ) Sort (less func (a , b UpdateChatParticipantRank ) bool ) UpdateChatParticipantRankArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChatParticipantRankArray ) SortStable (less func (a , b UpdateChatParticipantRank ) bool ) UpdateChatParticipantRankArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateChatParticipantRankArray ) Retain (keep func (x UpdateChatParticipantRank ) bool ) UpdateChatParticipantRankArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateChatParticipantRankArray ) First () (v UpdateChatParticipantRank , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateChatParticipantRankArray ) Last () (v UpdateChatParticipantRank , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateChatParticipantRankArray ) PopFirst () (v UpdateChatParticipantRank , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateChatParticipantRank
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateChatParticipantRankArray ) Pop () (v UpdateChatParticipantRank , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateManagedBotArray []UpdateManagedBot
func (s UpdateManagedBotArray ) Sort (less func (a , b UpdateManagedBot ) bool ) UpdateManagedBotArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateManagedBotArray ) SortStable (less func (a , b UpdateManagedBot ) bool ) UpdateManagedBotArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateManagedBotArray ) Retain (keep func (x UpdateManagedBot ) bool ) UpdateManagedBotArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateManagedBotArray ) First () (v UpdateManagedBot , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateManagedBotArray ) Last () (v UpdateManagedBot , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateManagedBotArray ) PopFirst () (v UpdateManagedBot , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateManagedBot
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateManagedBotArray ) Pop () (v UpdateManagedBot , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateBotGuestChatQueryArray []UpdateBotGuestChatQuery
func (s UpdateBotGuestChatQueryArray ) Sort (less func (a , b UpdateBotGuestChatQuery ) bool ) UpdateBotGuestChatQueryArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotGuestChatQueryArray ) SortStable (less func (a , b UpdateBotGuestChatQuery ) bool ) UpdateBotGuestChatQueryArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateBotGuestChatQueryArray ) Retain (keep func (x UpdateBotGuestChatQuery ) bool ) UpdateBotGuestChatQueryArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateBotGuestChatQueryArray ) First () (v UpdateBotGuestChatQuery , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateBotGuestChatQueryArray ) Last () (v UpdateBotGuestChatQuery , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateBotGuestChatQueryArray ) PopFirst () (v UpdateBotGuestChatQuery , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateBotGuestChatQuery
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateBotGuestChatQueryArray ) Pop () (v UpdateBotGuestChatQuery , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateJoinChatWebViewDecisionArray []UpdateJoinChatWebViewDecision
func (s UpdateJoinChatWebViewDecisionArray ) Sort (less func (a , b UpdateJoinChatWebViewDecision ) bool ) UpdateJoinChatWebViewDecisionArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateJoinChatWebViewDecisionArray ) SortStable (less func (a , b UpdateJoinChatWebViewDecision ) bool ) UpdateJoinChatWebViewDecisionArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateJoinChatWebViewDecisionArray ) Retain (keep func (x UpdateJoinChatWebViewDecision ) bool ) UpdateJoinChatWebViewDecisionArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateJoinChatWebViewDecisionArray ) First () (v UpdateJoinChatWebViewDecision , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateJoinChatWebViewDecisionArray ) Last () (v UpdateJoinChatWebViewDecision , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateJoinChatWebViewDecisionArray ) PopFirst () (v UpdateJoinChatWebViewDecision , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateJoinChatWebViewDecision
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateJoinChatWebViewDecisionArray ) Pop () (v UpdateJoinChatWebViewDecision , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateNewBotConnectionArray []UpdateNewBotConnection
func (s UpdateNewBotConnectionArray ) Sort (less func (a , b UpdateNewBotConnection ) bool ) UpdateNewBotConnectionArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateNewBotConnectionArray ) SortStable (less func (a , b UpdateNewBotConnection ) bool ) UpdateNewBotConnectionArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateNewBotConnectionArray ) Retain (keep func (x UpdateNewBotConnection ) bool ) UpdateNewBotConnectionArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateNewBotConnectionArray ) First () (v UpdateNewBotConnection , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateNewBotConnectionArray ) Last () (v UpdateNewBotConnection , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateNewBotConnectionArray ) PopFirst () (v UpdateNewBotConnection , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateNewBotConnection
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateNewBotConnectionArray ) Pop () (v UpdateNewBotConnection , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateWebBrowserSettingsArray []UpdateWebBrowserSettings
func (s UpdateWebBrowserSettingsArray ) Sort (less func (a , b UpdateWebBrowserSettings ) bool ) UpdateWebBrowserSettingsArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateWebBrowserSettingsArray ) SortStable (less func (a , b UpdateWebBrowserSettings ) bool ) UpdateWebBrowserSettingsArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateWebBrowserSettingsArray ) Retain (keep func (x UpdateWebBrowserSettings ) bool ) UpdateWebBrowserSettingsArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateWebBrowserSettingsArray ) First () (v UpdateWebBrowserSettings , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateWebBrowserSettingsArray ) Last () (v UpdateWebBrowserSettings , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateWebBrowserSettingsArray ) PopFirst () (v UpdateWebBrowserSettings , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateWebBrowserSettings
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateWebBrowserSettingsArray ) Pop () (v UpdateWebBrowserSettings , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
type UpdateWebBrowserExceptionArray []UpdateWebBrowserException
func (s UpdateWebBrowserExceptionArray ) Sort (less func (a , b UpdateWebBrowserException ) bool ) UpdateWebBrowserExceptionArray {
sort .Slice (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateWebBrowserExceptionArray ) SortStable (less func (a , b UpdateWebBrowserException ) bool ) UpdateWebBrowserExceptionArray {
sort .SliceStable (s , func (i , j int ) bool {
return less (s [i ], s [j ])
})
return s
}
func (s UpdateWebBrowserExceptionArray ) Retain (keep func (x UpdateWebBrowserException ) bool ) UpdateWebBrowserExceptionArray {
n := 0
for _ , x := range s {
if keep (x ) {
s [n ] = x
n ++
}
}
s = s [:n ]
return s
}
func (s UpdateWebBrowserExceptionArray ) First () (v UpdateWebBrowserException , ok bool ) {
if len (s ) < 1 {
return
}
return s [0 ], true
}
func (s UpdateWebBrowserExceptionArray ) Last () (v UpdateWebBrowserException , ok bool ) {
if len (s ) < 1 {
return
}
return s [len (s )-1 ], true
}
func (s *UpdateWebBrowserExceptionArray ) PopFirst () (v UpdateWebBrowserException , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [0 ]
copy (a [0 :], a [1 :])
var zero UpdateWebBrowserException
a [len (a )-1 ] = zero
a = a [:len (a )-1 ]
*s = a
return v , true
}
func (s *UpdateWebBrowserExceptionArray ) Pop () (v UpdateWebBrowserException , ok bool ) {
if s == nil || len (*s ) < 1 {
return
}
a := *s
v = a [len (a )-1 ]
a = a [:len (a )-1 ]
*s = a
return v , true
}
The pages are generated with Golds v0.8.4 . (GOOS=linux GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu .
PR and bug reports are welcome and can be submitted to the issue list .
Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds .