7a04f298d2
- update to latest telegram layer - remove some references to fields in tg.Entities that don't exist in the schema - originally added here: https://github.com/beeper/td/commit/820929062a2ba0104397bc01235ab58a9cff780e - referenced here - https://github.com/mautrix/telegramgo/commit/124f0967ed195b5a380c9bd02e170ada9710dde3 - https://github.com/mautrix/telegramgo/commit/4205047aab2e0639217148b5d125bfaab668bd8e
605 lines
14 KiB
Go
605 lines
14 KiB
Go
// Code generated by gotdgen, DO NOT EDIT.
|
|
|
|
package tdapi
|
|
|
|
import (
|
|
"context"
|
|
"errors"
|
|
"fmt"
|
|
"sort"
|
|
"strings"
|
|
|
|
"go.uber.org/multierr"
|
|
|
|
"go.mau.fi/mautrix-telegram/pkg/gotd/bin"
|
|
"go.mau.fi/mautrix-telegram/pkg/gotd/tdjson"
|
|
"go.mau.fi/mautrix-telegram/pkg/gotd/tdp"
|
|
"go.mau.fi/mautrix-telegram/pkg/gotd/tgerr"
|
|
)
|
|
|
|
// No-op definition for keeping imports.
|
|
var (
|
|
_ = bin.Buffer{}
|
|
_ = context.Background()
|
|
_ = fmt.Stringer(nil)
|
|
_ = strings.Builder{}
|
|
_ = errors.Is
|
|
_ = multierr.AppendInto
|
|
_ = sort.Ints
|
|
_ = tdp.Format
|
|
_ = tgerr.Error{}
|
|
_ = tdjson.Encoder{}
|
|
)
|
|
|
|
// LanguagePackInfo represents TL type `languagePackInfo#20514f5a`.
|
|
type LanguagePackInfo struct {
|
|
// Unique language pack identifier
|
|
ID string
|
|
// Identifier of a base language pack; may be empty. If a string is missed in the
|
|
// language pack, then it must be fetched from base language pack. Unsupported in custom
|
|
// language packs
|
|
BaseLanguagePackID string
|
|
// Language name
|
|
Name string
|
|
// Name of the language in that language
|
|
NativeName string
|
|
// A language code to be used to apply plural forms. See https://www.unicode
|
|
// org/cldr/charts/latest/supplemental/language_plural_rules.html for more information
|
|
PluralCode string
|
|
// True, if the language pack is official
|
|
IsOfficial bool
|
|
// True, if the language pack strings are RTL
|
|
IsRtl bool
|
|
// True, if the language pack is a beta language pack
|
|
IsBeta bool
|
|
// True, if the language pack is installed by the current user
|
|
IsInstalled bool
|
|
// Total number of non-deleted strings from the language pack
|
|
TotalStringCount int32
|
|
// Total number of translated strings from the language pack
|
|
TranslatedStringCount int32
|
|
// Total number of non-deleted strings from the language pack available locally
|
|
LocalStringCount int32
|
|
// Link to language translation interface; empty for custom local language packs
|
|
TranslationURL string
|
|
}
|
|
|
|
// LanguagePackInfoTypeID is TL type id of LanguagePackInfo.
|
|
const LanguagePackInfoTypeID = 0x20514f5a
|
|
|
|
// Ensuring interfaces in compile-time for LanguagePackInfo.
|
|
var (
|
|
_ bin.Encoder = &LanguagePackInfo{}
|
|
_ bin.Decoder = &LanguagePackInfo{}
|
|
_ bin.BareEncoder = &LanguagePackInfo{}
|
|
_ bin.BareDecoder = &LanguagePackInfo{}
|
|
)
|
|
|
|
func (l *LanguagePackInfo) Zero() bool {
|
|
if l == nil {
|
|
return true
|
|
}
|
|
if !(l.ID == "") {
|
|
return false
|
|
}
|
|
if !(l.BaseLanguagePackID == "") {
|
|
return false
|
|
}
|
|
if !(l.Name == "") {
|
|
return false
|
|
}
|
|
if !(l.NativeName == "") {
|
|
return false
|
|
}
|
|
if !(l.PluralCode == "") {
|
|
return false
|
|
}
|
|
if !(l.IsOfficial == false) {
|
|
return false
|
|
}
|
|
if !(l.IsRtl == false) {
|
|
return false
|
|
}
|
|
if !(l.IsBeta == false) {
|
|
return false
|
|
}
|
|
if !(l.IsInstalled == false) {
|
|
return false
|
|
}
|
|
if !(l.TotalStringCount == 0) {
|
|
return false
|
|
}
|
|
if !(l.TranslatedStringCount == 0) {
|
|
return false
|
|
}
|
|
if !(l.LocalStringCount == 0) {
|
|
return false
|
|
}
|
|
if !(l.TranslationURL == "") {
|
|
return false
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (l *LanguagePackInfo) String() string {
|
|
if l == nil {
|
|
return "LanguagePackInfo(nil)"
|
|
}
|
|
type Alias LanguagePackInfo
|
|
return fmt.Sprintf("LanguagePackInfo%+v", Alias(*l))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*LanguagePackInfo) TypeID() uint32 {
|
|
return LanguagePackInfoTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*LanguagePackInfo) TypeName() string {
|
|
return "languagePackInfo"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (l *LanguagePackInfo) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "languagePackInfo",
|
|
ID: LanguagePackInfoTypeID,
|
|
}
|
|
if l == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{
|
|
{
|
|
Name: "ID",
|
|
SchemaName: "id",
|
|
},
|
|
{
|
|
Name: "BaseLanguagePackID",
|
|
SchemaName: "base_language_pack_id",
|
|
},
|
|
{
|
|
Name: "Name",
|
|
SchemaName: "name",
|
|
},
|
|
{
|
|
Name: "NativeName",
|
|
SchemaName: "native_name",
|
|
},
|
|
{
|
|
Name: "PluralCode",
|
|
SchemaName: "plural_code",
|
|
},
|
|
{
|
|
Name: "IsOfficial",
|
|
SchemaName: "is_official",
|
|
},
|
|
{
|
|
Name: "IsRtl",
|
|
SchemaName: "is_rtl",
|
|
},
|
|
{
|
|
Name: "IsBeta",
|
|
SchemaName: "is_beta",
|
|
},
|
|
{
|
|
Name: "IsInstalled",
|
|
SchemaName: "is_installed",
|
|
},
|
|
{
|
|
Name: "TotalStringCount",
|
|
SchemaName: "total_string_count",
|
|
},
|
|
{
|
|
Name: "TranslatedStringCount",
|
|
SchemaName: "translated_string_count",
|
|
},
|
|
{
|
|
Name: "LocalStringCount",
|
|
SchemaName: "local_string_count",
|
|
},
|
|
{
|
|
Name: "TranslationURL",
|
|
SchemaName: "translation_url",
|
|
},
|
|
}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (l *LanguagePackInfo) Encode(b *bin.Buffer) error {
|
|
if l == nil {
|
|
return fmt.Errorf("can't encode languagePackInfo#20514f5a as nil")
|
|
}
|
|
b.PutID(LanguagePackInfoTypeID)
|
|
return l.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (l *LanguagePackInfo) EncodeBare(b *bin.Buffer) error {
|
|
if l == nil {
|
|
return fmt.Errorf("can't encode languagePackInfo#20514f5a as nil")
|
|
}
|
|
b.PutString(l.ID)
|
|
b.PutString(l.BaseLanguagePackID)
|
|
b.PutString(l.Name)
|
|
b.PutString(l.NativeName)
|
|
b.PutString(l.PluralCode)
|
|
b.PutBool(l.IsOfficial)
|
|
b.PutBool(l.IsRtl)
|
|
b.PutBool(l.IsBeta)
|
|
b.PutBool(l.IsInstalled)
|
|
b.PutInt32(l.TotalStringCount)
|
|
b.PutInt32(l.TranslatedStringCount)
|
|
b.PutInt32(l.LocalStringCount)
|
|
b.PutString(l.TranslationURL)
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (l *LanguagePackInfo) Decode(b *bin.Buffer) error {
|
|
if l == nil {
|
|
return fmt.Errorf("can't decode languagePackInfo#20514f5a to nil")
|
|
}
|
|
if err := b.ConsumeID(LanguagePackInfoTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: %w", err)
|
|
}
|
|
return l.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (l *LanguagePackInfo) DecodeBare(b *bin.Buffer) error {
|
|
if l == nil {
|
|
return fmt.Errorf("can't decode languagePackInfo#20514f5a to nil")
|
|
}
|
|
{
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field id: %w", err)
|
|
}
|
|
l.ID = value
|
|
}
|
|
{
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field base_language_pack_id: %w", err)
|
|
}
|
|
l.BaseLanguagePackID = value
|
|
}
|
|
{
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field name: %w", err)
|
|
}
|
|
l.Name = value
|
|
}
|
|
{
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field native_name: %w", err)
|
|
}
|
|
l.NativeName = value
|
|
}
|
|
{
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field plural_code: %w", err)
|
|
}
|
|
l.PluralCode = value
|
|
}
|
|
{
|
|
value, err := b.Bool()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field is_official: %w", err)
|
|
}
|
|
l.IsOfficial = value
|
|
}
|
|
{
|
|
value, err := b.Bool()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field is_rtl: %w", err)
|
|
}
|
|
l.IsRtl = value
|
|
}
|
|
{
|
|
value, err := b.Bool()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field is_beta: %w", err)
|
|
}
|
|
l.IsBeta = value
|
|
}
|
|
{
|
|
value, err := b.Bool()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field is_installed: %w", err)
|
|
}
|
|
l.IsInstalled = value
|
|
}
|
|
{
|
|
value, err := b.Int32()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field total_string_count: %w", err)
|
|
}
|
|
l.TotalStringCount = value
|
|
}
|
|
{
|
|
value, err := b.Int32()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field translated_string_count: %w", err)
|
|
}
|
|
l.TranslatedStringCount = value
|
|
}
|
|
{
|
|
value, err := b.Int32()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field local_string_count: %w", err)
|
|
}
|
|
l.LocalStringCount = value
|
|
}
|
|
{
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field translation_url: %w", err)
|
|
}
|
|
l.TranslationURL = value
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (l *LanguagePackInfo) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if l == nil {
|
|
return fmt.Errorf("can't encode languagePackInfo#20514f5a as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("languagePackInfo")
|
|
b.Comma()
|
|
b.FieldStart("id")
|
|
b.PutString(l.ID)
|
|
b.Comma()
|
|
b.FieldStart("base_language_pack_id")
|
|
b.PutString(l.BaseLanguagePackID)
|
|
b.Comma()
|
|
b.FieldStart("name")
|
|
b.PutString(l.Name)
|
|
b.Comma()
|
|
b.FieldStart("native_name")
|
|
b.PutString(l.NativeName)
|
|
b.Comma()
|
|
b.FieldStart("plural_code")
|
|
b.PutString(l.PluralCode)
|
|
b.Comma()
|
|
b.FieldStart("is_official")
|
|
b.PutBool(l.IsOfficial)
|
|
b.Comma()
|
|
b.FieldStart("is_rtl")
|
|
b.PutBool(l.IsRtl)
|
|
b.Comma()
|
|
b.FieldStart("is_beta")
|
|
b.PutBool(l.IsBeta)
|
|
b.Comma()
|
|
b.FieldStart("is_installed")
|
|
b.PutBool(l.IsInstalled)
|
|
b.Comma()
|
|
b.FieldStart("total_string_count")
|
|
b.PutInt32(l.TotalStringCount)
|
|
b.Comma()
|
|
b.FieldStart("translated_string_count")
|
|
b.PutInt32(l.TranslatedStringCount)
|
|
b.Comma()
|
|
b.FieldStart("local_string_count")
|
|
b.PutInt32(l.LocalStringCount)
|
|
b.Comma()
|
|
b.FieldStart("translation_url")
|
|
b.PutString(l.TranslationURL)
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (l *LanguagePackInfo) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if l == nil {
|
|
return fmt.Errorf("can't decode languagePackInfo#20514f5a to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("languagePackInfo"); err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: %w", err)
|
|
}
|
|
case "id":
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field id: %w", err)
|
|
}
|
|
l.ID = value
|
|
case "base_language_pack_id":
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field base_language_pack_id: %w", err)
|
|
}
|
|
l.BaseLanguagePackID = value
|
|
case "name":
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field name: %w", err)
|
|
}
|
|
l.Name = value
|
|
case "native_name":
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field native_name: %w", err)
|
|
}
|
|
l.NativeName = value
|
|
case "plural_code":
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field plural_code: %w", err)
|
|
}
|
|
l.PluralCode = value
|
|
case "is_official":
|
|
value, err := b.Bool()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field is_official: %w", err)
|
|
}
|
|
l.IsOfficial = value
|
|
case "is_rtl":
|
|
value, err := b.Bool()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field is_rtl: %w", err)
|
|
}
|
|
l.IsRtl = value
|
|
case "is_beta":
|
|
value, err := b.Bool()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field is_beta: %w", err)
|
|
}
|
|
l.IsBeta = value
|
|
case "is_installed":
|
|
value, err := b.Bool()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field is_installed: %w", err)
|
|
}
|
|
l.IsInstalled = value
|
|
case "total_string_count":
|
|
value, err := b.Int32()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field total_string_count: %w", err)
|
|
}
|
|
l.TotalStringCount = value
|
|
case "translated_string_count":
|
|
value, err := b.Int32()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field translated_string_count: %w", err)
|
|
}
|
|
l.TranslatedStringCount = value
|
|
case "local_string_count":
|
|
value, err := b.Int32()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field local_string_count: %w", err)
|
|
}
|
|
l.LocalStringCount = value
|
|
case "translation_url":
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode languagePackInfo#20514f5a: field translation_url: %w", err)
|
|
}
|
|
l.TranslationURL = value
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// GetID returns value of ID field.
|
|
func (l *LanguagePackInfo) GetID() (value string) {
|
|
if l == nil {
|
|
return
|
|
}
|
|
return l.ID
|
|
}
|
|
|
|
// GetBaseLanguagePackID returns value of BaseLanguagePackID field.
|
|
func (l *LanguagePackInfo) GetBaseLanguagePackID() (value string) {
|
|
if l == nil {
|
|
return
|
|
}
|
|
return l.BaseLanguagePackID
|
|
}
|
|
|
|
// GetName returns value of Name field.
|
|
func (l *LanguagePackInfo) GetName() (value string) {
|
|
if l == nil {
|
|
return
|
|
}
|
|
return l.Name
|
|
}
|
|
|
|
// GetNativeName returns value of NativeName field.
|
|
func (l *LanguagePackInfo) GetNativeName() (value string) {
|
|
if l == nil {
|
|
return
|
|
}
|
|
return l.NativeName
|
|
}
|
|
|
|
// GetPluralCode returns value of PluralCode field.
|
|
func (l *LanguagePackInfo) GetPluralCode() (value string) {
|
|
if l == nil {
|
|
return
|
|
}
|
|
return l.PluralCode
|
|
}
|
|
|
|
// GetIsOfficial returns value of IsOfficial field.
|
|
func (l *LanguagePackInfo) GetIsOfficial() (value bool) {
|
|
if l == nil {
|
|
return
|
|
}
|
|
return l.IsOfficial
|
|
}
|
|
|
|
// GetIsRtl returns value of IsRtl field.
|
|
func (l *LanguagePackInfo) GetIsRtl() (value bool) {
|
|
if l == nil {
|
|
return
|
|
}
|
|
return l.IsRtl
|
|
}
|
|
|
|
// GetIsBeta returns value of IsBeta field.
|
|
func (l *LanguagePackInfo) GetIsBeta() (value bool) {
|
|
if l == nil {
|
|
return
|
|
}
|
|
return l.IsBeta
|
|
}
|
|
|
|
// GetIsInstalled returns value of IsInstalled field.
|
|
func (l *LanguagePackInfo) GetIsInstalled() (value bool) {
|
|
if l == nil {
|
|
return
|
|
}
|
|
return l.IsInstalled
|
|
}
|
|
|
|
// GetTotalStringCount returns value of TotalStringCount field.
|
|
func (l *LanguagePackInfo) GetTotalStringCount() (value int32) {
|
|
if l == nil {
|
|
return
|
|
}
|
|
return l.TotalStringCount
|
|
}
|
|
|
|
// GetTranslatedStringCount returns value of TranslatedStringCount field.
|
|
func (l *LanguagePackInfo) GetTranslatedStringCount() (value int32) {
|
|
if l == nil {
|
|
return
|
|
}
|
|
return l.TranslatedStringCount
|
|
}
|
|
|
|
// GetLocalStringCount returns value of LocalStringCount field.
|
|
func (l *LanguagePackInfo) GetLocalStringCount() (value int32) {
|
|
if l == nil {
|
|
return
|
|
}
|
|
return l.LocalStringCount
|
|
}
|
|
|
|
// GetTranslationURL returns value of TranslationURL field.
|
|
func (l *LanguagePackInfo) GetTranslationURL() (value string) {
|
|
if l == nil {
|
|
return
|
|
}
|
|
return l.TranslationURL
|
|
}
|