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
1600 lines
43 KiB
Go
1600 lines
43 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{}
|
|
)
|
|
|
|
// ReportReasonSpam represents TL type `reportReasonSpam#b80e23bf`.
|
|
type ReportReasonSpam struct {
|
|
}
|
|
|
|
// ReportReasonSpamTypeID is TL type id of ReportReasonSpam.
|
|
const ReportReasonSpamTypeID = 0xb80e23bf
|
|
|
|
// construct implements constructor of ReportReasonClass.
|
|
func (r ReportReasonSpam) construct() ReportReasonClass { return &r }
|
|
|
|
// Ensuring interfaces in compile-time for ReportReasonSpam.
|
|
var (
|
|
_ bin.Encoder = &ReportReasonSpam{}
|
|
_ bin.Decoder = &ReportReasonSpam{}
|
|
_ bin.BareEncoder = &ReportReasonSpam{}
|
|
_ bin.BareDecoder = &ReportReasonSpam{}
|
|
|
|
_ ReportReasonClass = &ReportReasonSpam{}
|
|
)
|
|
|
|
func (r *ReportReasonSpam) Zero() bool {
|
|
if r == nil {
|
|
return true
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (r *ReportReasonSpam) String() string {
|
|
if r == nil {
|
|
return "ReportReasonSpam(nil)"
|
|
}
|
|
type Alias ReportReasonSpam
|
|
return fmt.Sprintf("ReportReasonSpam%+v", Alias(*r))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*ReportReasonSpam) TypeID() uint32 {
|
|
return ReportReasonSpamTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*ReportReasonSpam) TypeName() string {
|
|
return "reportReasonSpam"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (r *ReportReasonSpam) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "reportReasonSpam",
|
|
ID: ReportReasonSpamTypeID,
|
|
}
|
|
if r == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (r *ReportReasonSpam) Encode(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonSpam#b80e23bf as nil")
|
|
}
|
|
b.PutID(ReportReasonSpamTypeID)
|
|
return r.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (r *ReportReasonSpam) EncodeBare(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonSpam#b80e23bf as nil")
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (r *ReportReasonSpam) Decode(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonSpam#b80e23bf to nil")
|
|
}
|
|
if err := b.ConsumeID(ReportReasonSpamTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode reportReasonSpam#b80e23bf: %w", err)
|
|
}
|
|
return r.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (r *ReportReasonSpam) DecodeBare(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonSpam#b80e23bf to nil")
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (r *ReportReasonSpam) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonSpam#b80e23bf as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("reportReasonSpam")
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (r *ReportReasonSpam) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonSpam#b80e23bf to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("reportReasonSpam"); err != nil {
|
|
return fmt.Errorf("unable to decode reportReasonSpam#b80e23bf: %w", err)
|
|
}
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// ReportReasonViolence represents TL type `reportReasonViolence#7983c739`.
|
|
type ReportReasonViolence struct {
|
|
}
|
|
|
|
// ReportReasonViolenceTypeID is TL type id of ReportReasonViolence.
|
|
const ReportReasonViolenceTypeID = 0x7983c739
|
|
|
|
// construct implements constructor of ReportReasonClass.
|
|
func (r ReportReasonViolence) construct() ReportReasonClass { return &r }
|
|
|
|
// Ensuring interfaces in compile-time for ReportReasonViolence.
|
|
var (
|
|
_ bin.Encoder = &ReportReasonViolence{}
|
|
_ bin.Decoder = &ReportReasonViolence{}
|
|
_ bin.BareEncoder = &ReportReasonViolence{}
|
|
_ bin.BareDecoder = &ReportReasonViolence{}
|
|
|
|
_ ReportReasonClass = &ReportReasonViolence{}
|
|
)
|
|
|
|
func (r *ReportReasonViolence) Zero() bool {
|
|
if r == nil {
|
|
return true
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (r *ReportReasonViolence) String() string {
|
|
if r == nil {
|
|
return "ReportReasonViolence(nil)"
|
|
}
|
|
type Alias ReportReasonViolence
|
|
return fmt.Sprintf("ReportReasonViolence%+v", Alias(*r))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*ReportReasonViolence) TypeID() uint32 {
|
|
return ReportReasonViolenceTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*ReportReasonViolence) TypeName() string {
|
|
return "reportReasonViolence"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (r *ReportReasonViolence) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "reportReasonViolence",
|
|
ID: ReportReasonViolenceTypeID,
|
|
}
|
|
if r == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (r *ReportReasonViolence) Encode(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonViolence#7983c739 as nil")
|
|
}
|
|
b.PutID(ReportReasonViolenceTypeID)
|
|
return r.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (r *ReportReasonViolence) EncodeBare(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonViolence#7983c739 as nil")
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (r *ReportReasonViolence) Decode(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonViolence#7983c739 to nil")
|
|
}
|
|
if err := b.ConsumeID(ReportReasonViolenceTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode reportReasonViolence#7983c739: %w", err)
|
|
}
|
|
return r.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (r *ReportReasonViolence) DecodeBare(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonViolence#7983c739 to nil")
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (r *ReportReasonViolence) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonViolence#7983c739 as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("reportReasonViolence")
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (r *ReportReasonViolence) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonViolence#7983c739 to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("reportReasonViolence"); err != nil {
|
|
return fmt.Errorf("unable to decode reportReasonViolence#7983c739: %w", err)
|
|
}
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// ReportReasonPornography represents TL type `reportReasonPornography#4ddf1cf7`.
|
|
type ReportReasonPornography struct {
|
|
}
|
|
|
|
// ReportReasonPornographyTypeID is TL type id of ReportReasonPornography.
|
|
const ReportReasonPornographyTypeID = 0x4ddf1cf7
|
|
|
|
// construct implements constructor of ReportReasonClass.
|
|
func (r ReportReasonPornography) construct() ReportReasonClass { return &r }
|
|
|
|
// Ensuring interfaces in compile-time for ReportReasonPornography.
|
|
var (
|
|
_ bin.Encoder = &ReportReasonPornography{}
|
|
_ bin.Decoder = &ReportReasonPornography{}
|
|
_ bin.BareEncoder = &ReportReasonPornography{}
|
|
_ bin.BareDecoder = &ReportReasonPornography{}
|
|
|
|
_ ReportReasonClass = &ReportReasonPornography{}
|
|
)
|
|
|
|
func (r *ReportReasonPornography) Zero() bool {
|
|
if r == nil {
|
|
return true
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (r *ReportReasonPornography) String() string {
|
|
if r == nil {
|
|
return "ReportReasonPornography(nil)"
|
|
}
|
|
type Alias ReportReasonPornography
|
|
return fmt.Sprintf("ReportReasonPornography%+v", Alias(*r))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*ReportReasonPornography) TypeID() uint32 {
|
|
return ReportReasonPornographyTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*ReportReasonPornography) TypeName() string {
|
|
return "reportReasonPornography"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (r *ReportReasonPornography) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "reportReasonPornography",
|
|
ID: ReportReasonPornographyTypeID,
|
|
}
|
|
if r == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (r *ReportReasonPornography) Encode(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonPornography#4ddf1cf7 as nil")
|
|
}
|
|
b.PutID(ReportReasonPornographyTypeID)
|
|
return r.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (r *ReportReasonPornography) EncodeBare(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonPornography#4ddf1cf7 as nil")
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (r *ReportReasonPornography) Decode(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonPornography#4ddf1cf7 to nil")
|
|
}
|
|
if err := b.ConsumeID(ReportReasonPornographyTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode reportReasonPornography#4ddf1cf7: %w", err)
|
|
}
|
|
return r.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (r *ReportReasonPornography) DecodeBare(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonPornography#4ddf1cf7 to nil")
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (r *ReportReasonPornography) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonPornography#4ddf1cf7 as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("reportReasonPornography")
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (r *ReportReasonPornography) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonPornography#4ddf1cf7 to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("reportReasonPornography"); err != nil {
|
|
return fmt.Errorf("unable to decode reportReasonPornography#4ddf1cf7: %w", err)
|
|
}
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// ReportReasonChildAbuse represents TL type `reportReasonChildAbuse#2d5d42fe`.
|
|
type ReportReasonChildAbuse struct {
|
|
}
|
|
|
|
// ReportReasonChildAbuseTypeID is TL type id of ReportReasonChildAbuse.
|
|
const ReportReasonChildAbuseTypeID = 0x2d5d42fe
|
|
|
|
// construct implements constructor of ReportReasonClass.
|
|
func (r ReportReasonChildAbuse) construct() ReportReasonClass { return &r }
|
|
|
|
// Ensuring interfaces in compile-time for ReportReasonChildAbuse.
|
|
var (
|
|
_ bin.Encoder = &ReportReasonChildAbuse{}
|
|
_ bin.Decoder = &ReportReasonChildAbuse{}
|
|
_ bin.BareEncoder = &ReportReasonChildAbuse{}
|
|
_ bin.BareDecoder = &ReportReasonChildAbuse{}
|
|
|
|
_ ReportReasonClass = &ReportReasonChildAbuse{}
|
|
)
|
|
|
|
func (r *ReportReasonChildAbuse) Zero() bool {
|
|
if r == nil {
|
|
return true
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (r *ReportReasonChildAbuse) String() string {
|
|
if r == nil {
|
|
return "ReportReasonChildAbuse(nil)"
|
|
}
|
|
type Alias ReportReasonChildAbuse
|
|
return fmt.Sprintf("ReportReasonChildAbuse%+v", Alias(*r))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*ReportReasonChildAbuse) TypeID() uint32 {
|
|
return ReportReasonChildAbuseTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*ReportReasonChildAbuse) TypeName() string {
|
|
return "reportReasonChildAbuse"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (r *ReportReasonChildAbuse) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "reportReasonChildAbuse",
|
|
ID: ReportReasonChildAbuseTypeID,
|
|
}
|
|
if r == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (r *ReportReasonChildAbuse) Encode(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonChildAbuse#2d5d42fe as nil")
|
|
}
|
|
b.PutID(ReportReasonChildAbuseTypeID)
|
|
return r.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (r *ReportReasonChildAbuse) EncodeBare(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonChildAbuse#2d5d42fe as nil")
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (r *ReportReasonChildAbuse) Decode(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonChildAbuse#2d5d42fe to nil")
|
|
}
|
|
if err := b.ConsumeID(ReportReasonChildAbuseTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode reportReasonChildAbuse#2d5d42fe: %w", err)
|
|
}
|
|
return r.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (r *ReportReasonChildAbuse) DecodeBare(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonChildAbuse#2d5d42fe to nil")
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (r *ReportReasonChildAbuse) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonChildAbuse#2d5d42fe as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("reportReasonChildAbuse")
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (r *ReportReasonChildAbuse) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonChildAbuse#2d5d42fe to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("reportReasonChildAbuse"); err != nil {
|
|
return fmt.Errorf("unable to decode reportReasonChildAbuse#2d5d42fe: %w", err)
|
|
}
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// ReportReasonCopyright represents TL type `reportReasonCopyright#57e22faf`.
|
|
type ReportReasonCopyright struct {
|
|
}
|
|
|
|
// ReportReasonCopyrightTypeID is TL type id of ReportReasonCopyright.
|
|
const ReportReasonCopyrightTypeID = 0x57e22faf
|
|
|
|
// construct implements constructor of ReportReasonClass.
|
|
func (r ReportReasonCopyright) construct() ReportReasonClass { return &r }
|
|
|
|
// Ensuring interfaces in compile-time for ReportReasonCopyright.
|
|
var (
|
|
_ bin.Encoder = &ReportReasonCopyright{}
|
|
_ bin.Decoder = &ReportReasonCopyright{}
|
|
_ bin.BareEncoder = &ReportReasonCopyright{}
|
|
_ bin.BareDecoder = &ReportReasonCopyright{}
|
|
|
|
_ ReportReasonClass = &ReportReasonCopyright{}
|
|
)
|
|
|
|
func (r *ReportReasonCopyright) Zero() bool {
|
|
if r == nil {
|
|
return true
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (r *ReportReasonCopyright) String() string {
|
|
if r == nil {
|
|
return "ReportReasonCopyright(nil)"
|
|
}
|
|
type Alias ReportReasonCopyright
|
|
return fmt.Sprintf("ReportReasonCopyright%+v", Alias(*r))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*ReportReasonCopyright) TypeID() uint32 {
|
|
return ReportReasonCopyrightTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*ReportReasonCopyright) TypeName() string {
|
|
return "reportReasonCopyright"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (r *ReportReasonCopyright) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "reportReasonCopyright",
|
|
ID: ReportReasonCopyrightTypeID,
|
|
}
|
|
if r == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (r *ReportReasonCopyright) Encode(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonCopyright#57e22faf as nil")
|
|
}
|
|
b.PutID(ReportReasonCopyrightTypeID)
|
|
return r.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (r *ReportReasonCopyright) EncodeBare(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonCopyright#57e22faf as nil")
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (r *ReportReasonCopyright) Decode(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonCopyright#57e22faf to nil")
|
|
}
|
|
if err := b.ConsumeID(ReportReasonCopyrightTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode reportReasonCopyright#57e22faf: %w", err)
|
|
}
|
|
return r.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (r *ReportReasonCopyright) DecodeBare(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonCopyright#57e22faf to nil")
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (r *ReportReasonCopyright) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonCopyright#57e22faf as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("reportReasonCopyright")
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (r *ReportReasonCopyright) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonCopyright#57e22faf to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("reportReasonCopyright"); err != nil {
|
|
return fmt.Errorf("unable to decode reportReasonCopyright#57e22faf: %w", err)
|
|
}
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// ReportReasonUnrelatedLocation represents TL type `reportReasonUnrelatedLocation#5381830`.
|
|
type ReportReasonUnrelatedLocation struct {
|
|
}
|
|
|
|
// ReportReasonUnrelatedLocationTypeID is TL type id of ReportReasonUnrelatedLocation.
|
|
const ReportReasonUnrelatedLocationTypeID = 0x5381830
|
|
|
|
// construct implements constructor of ReportReasonClass.
|
|
func (r ReportReasonUnrelatedLocation) construct() ReportReasonClass { return &r }
|
|
|
|
// Ensuring interfaces in compile-time for ReportReasonUnrelatedLocation.
|
|
var (
|
|
_ bin.Encoder = &ReportReasonUnrelatedLocation{}
|
|
_ bin.Decoder = &ReportReasonUnrelatedLocation{}
|
|
_ bin.BareEncoder = &ReportReasonUnrelatedLocation{}
|
|
_ bin.BareDecoder = &ReportReasonUnrelatedLocation{}
|
|
|
|
_ ReportReasonClass = &ReportReasonUnrelatedLocation{}
|
|
)
|
|
|
|
func (r *ReportReasonUnrelatedLocation) Zero() bool {
|
|
if r == nil {
|
|
return true
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (r *ReportReasonUnrelatedLocation) String() string {
|
|
if r == nil {
|
|
return "ReportReasonUnrelatedLocation(nil)"
|
|
}
|
|
type Alias ReportReasonUnrelatedLocation
|
|
return fmt.Sprintf("ReportReasonUnrelatedLocation%+v", Alias(*r))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*ReportReasonUnrelatedLocation) TypeID() uint32 {
|
|
return ReportReasonUnrelatedLocationTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*ReportReasonUnrelatedLocation) TypeName() string {
|
|
return "reportReasonUnrelatedLocation"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (r *ReportReasonUnrelatedLocation) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "reportReasonUnrelatedLocation",
|
|
ID: ReportReasonUnrelatedLocationTypeID,
|
|
}
|
|
if r == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (r *ReportReasonUnrelatedLocation) Encode(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonUnrelatedLocation#5381830 as nil")
|
|
}
|
|
b.PutID(ReportReasonUnrelatedLocationTypeID)
|
|
return r.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (r *ReportReasonUnrelatedLocation) EncodeBare(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonUnrelatedLocation#5381830 as nil")
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (r *ReportReasonUnrelatedLocation) Decode(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonUnrelatedLocation#5381830 to nil")
|
|
}
|
|
if err := b.ConsumeID(ReportReasonUnrelatedLocationTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode reportReasonUnrelatedLocation#5381830: %w", err)
|
|
}
|
|
return r.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (r *ReportReasonUnrelatedLocation) DecodeBare(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonUnrelatedLocation#5381830 to nil")
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (r *ReportReasonUnrelatedLocation) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonUnrelatedLocation#5381830 as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("reportReasonUnrelatedLocation")
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (r *ReportReasonUnrelatedLocation) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonUnrelatedLocation#5381830 to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("reportReasonUnrelatedLocation"); err != nil {
|
|
return fmt.Errorf("unable to decode reportReasonUnrelatedLocation#5381830: %w", err)
|
|
}
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// ReportReasonFake represents TL type `reportReasonFake#15083fe0`.
|
|
type ReportReasonFake struct {
|
|
}
|
|
|
|
// ReportReasonFakeTypeID is TL type id of ReportReasonFake.
|
|
const ReportReasonFakeTypeID = 0x15083fe0
|
|
|
|
// construct implements constructor of ReportReasonClass.
|
|
func (r ReportReasonFake) construct() ReportReasonClass { return &r }
|
|
|
|
// Ensuring interfaces in compile-time for ReportReasonFake.
|
|
var (
|
|
_ bin.Encoder = &ReportReasonFake{}
|
|
_ bin.Decoder = &ReportReasonFake{}
|
|
_ bin.BareEncoder = &ReportReasonFake{}
|
|
_ bin.BareDecoder = &ReportReasonFake{}
|
|
|
|
_ ReportReasonClass = &ReportReasonFake{}
|
|
)
|
|
|
|
func (r *ReportReasonFake) Zero() bool {
|
|
if r == nil {
|
|
return true
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (r *ReportReasonFake) String() string {
|
|
if r == nil {
|
|
return "ReportReasonFake(nil)"
|
|
}
|
|
type Alias ReportReasonFake
|
|
return fmt.Sprintf("ReportReasonFake%+v", Alias(*r))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*ReportReasonFake) TypeID() uint32 {
|
|
return ReportReasonFakeTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*ReportReasonFake) TypeName() string {
|
|
return "reportReasonFake"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (r *ReportReasonFake) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "reportReasonFake",
|
|
ID: ReportReasonFakeTypeID,
|
|
}
|
|
if r == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (r *ReportReasonFake) Encode(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonFake#15083fe0 as nil")
|
|
}
|
|
b.PutID(ReportReasonFakeTypeID)
|
|
return r.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (r *ReportReasonFake) EncodeBare(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonFake#15083fe0 as nil")
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (r *ReportReasonFake) Decode(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonFake#15083fe0 to nil")
|
|
}
|
|
if err := b.ConsumeID(ReportReasonFakeTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode reportReasonFake#15083fe0: %w", err)
|
|
}
|
|
return r.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (r *ReportReasonFake) DecodeBare(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonFake#15083fe0 to nil")
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (r *ReportReasonFake) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonFake#15083fe0 as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("reportReasonFake")
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (r *ReportReasonFake) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonFake#15083fe0 to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("reportReasonFake"); err != nil {
|
|
return fmt.Errorf("unable to decode reportReasonFake#15083fe0: %w", err)
|
|
}
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// ReportReasonIllegalDrugs represents TL type `reportReasonIllegalDrugs#fc541220`.
|
|
type ReportReasonIllegalDrugs struct {
|
|
}
|
|
|
|
// ReportReasonIllegalDrugsTypeID is TL type id of ReportReasonIllegalDrugs.
|
|
const ReportReasonIllegalDrugsTypeID = 0xfc541220
|
|
|
|
// construct implements constructor of ReportReasonClass.
|
|
func (r ReportReasonIllegalDrugs) construct() ReportReasonClass { return &r }
|
|
|
|
// Ensuring interfaces in compile-time for ReportReasonIllegalDrugs.
|
|
var (
|
|
_ bin.Encoder = &ReportReasonIllegalDrugs{}
|
|
_ bin.Decoder = &ReportReasonIllegalDrugs{}
|
|
_ bin.BareEncoder = &ReportReasonIllegalDrugs{}
|
|
_ bin.BareDecoder = &ReportReasonIllegalDrugs{}
|
|
|
|
_ ReportReasonClass = &ReportReasonIllegalDrugs{}
|
|
)
|
|
|
|
func (r *ReportReasonIllegalDrugs) Zero() bool {
|
|
if r == nil {
|
|
return true
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (r *ReportReasonIllegalDrugs) String() string {
|
|
if r == nil {
|
|
return "ReportReasonIllegalDrugs(nil)"
|
|
}
|
|
type Alias ReportReasonIllegalDrugs
|
|
return fmt.Sprintf("ReportReasonIllegalDrugs%+v", Alias(*r))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*ReportReasonIllegalDrugs) TypeID() uint32 {
|
|
return ReportReasonIllegalDrugsTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*ReportReasonIllegalDrugs) TypeName() string {
|
|
return "reportReasonIllegalDrugs"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (r *ReportReasonIllegalDrugs) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "reportReasonIllegalDrugs",
|
|
ID: ReportReasonIllegalDrugsTypeID,
|
|
}
|
|
if r == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (r *ReportReasonIllegalDrugs) Encode(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonIllegalDrugs#fc541220 as nil")
|
|
}
|
|
b.PutID(ReportReasonIllegalDrugsTypeID)
|
|
return r.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (r *ReportReasonIllegalDrugs) EncodeBare(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonIllegalDrugs#fc541220 as nil")
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (r *ReportReasonIllegalDrugs) Decode(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonIllegalDrugs#fc541220 to nil")
|
|
}
|
|
if err := b.ConsumeID(ReportReasonIllegalDrugsTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode reportReasonIllegalDrugs#fc541220: %w", err)
|
|
}
|
|
return r.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (r *ReportReasonIllegalDrugs) DecodeBare(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonIllegalDrugs#fc541220 to nil")
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (r *ReportReasonIllegalDrugs) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonIllegalDrugs#fc541220 as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("reportReasonIllegalDrugs")
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (r *ReportReasonIllegalDrugs) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonIllegalDrugs#fc541220 to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("reportReasonIllegalDrugs"); err != nil {
|
|
return fmt.Errorf("unable to decode reportReasonIllegalDrugs#fc541220: %w", err)
|
|
}
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// ReportReasonPersonalDetails represents TL type `reportReasonPersonalDetails#a14b9412`.
|
|
type ReportReasonPersonalDetails struct {
|
|
}
|
|
|
|
// ReportReasonPersonalDetailsTypeID is TL type id of ReportReasonPersonalDetails.
|
|
const ReportReasonPersonalDetailsTypeID = 0xa14b9412
|
|
|
|
// construct implements constructor of ReportReasonClass.
|
|
func (r ReportReasonPersonalDetails) construct() ReportReasonClass { return &r }
|
|
|
|
// Ensuring interfaces in compile-time for ReportReasonPersonalDetails.
|
|
var (
|
|
_ bin.Encoder = &ReportReasonPersonalDetails{}
|
|
_ bin.Decoder = &ReportReasonPersonalDetails{}
|
|
_ bin.BareEncoder = &ReportReasonPersonalDetails{}
|
|
_ bin.BareDecoder = &ReportReasonPersonalDetails{}
|
|
|
|
_ ReportReasonClass = &ReportReasonPersonalDetails{}
|
|
)
|
|
|
|
func (r *ReportReasonPersonalDetails) Zero() bool {
|
|
if r == nil {
|
|
return true
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (r *ReportReasonPersonalDetails) String() string {
|
|
if r == nil {
|
|
return "ReportReasonPersonalDetails(nil)"
|
|
}
|
|
type Alias ReportReasonPersonalDetails
|
|
return fmt.Sprintf("ReportReasonPersonalDetails%+v", Alias(*r))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*ReportReasonPersonalDetails) TypeID() uint32 {
|
|
return ReportReasonPersonalDetailsTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*ReportReasonPersonalDetails) TypeName() string {
|
|
return "reportReasonPersonalDetails"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (r *ReportReasonPersonalDetails) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "reportReasonPersonalDetails",
|
|
ID: ReportReasonPersonalDetailsTypeID,
|
|
}
|
|
if r == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (r *ReportReasonPersonalDetails) Encode(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonPersonalDetails#a14b9412 as nil")
|
|
}
|
|
b.PutID(ReportReasonPersonalDetailsTypeID)
|
|
return r.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (r *ReportReasonPersonalDetails) EncodeBare(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonPersonalDetails#a14b9412 as nil")
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (r *ReportReasonPersonalDetails) Decode(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonPersonalDetails#a14b9412 to nil")
|
|
}
|
|
if err := b.ConsumeID(ReportReasonPersonalDetailsTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode reportReasonPersonalDetails#a14b9412: %w", err)
|
|
}
|
|
return r.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (r *ReportReasonPersonalDetails) DecodeBare(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonPersonalDetails#a14b9412 to nil")
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (r *ReportReasonPersonalDetails) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonPersonalDetails#a14b9412 as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("reportReasonPersonalDetails")
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (r *ReportReasonPersonalDetails) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonPersonalDetails#a14b9412 to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("reportReasonPersonalDetails"); err != nil {
|
|
return fmt.Errorf("unable to decode reportReasonPersonalDetails#a14b9412: %w", err)
|
|
}
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// ReportReasonCustom represents TL type `reportReasonCustom#adb7da73`.
|
|
type ReportReasonCustom struct {
|
|
}
|
|
|
|
// ReportReasonCustomTypeID is TL type id of ReportReasonCustom.
|
|
const ReportReasonCustomTypeID = 0xadb7da73
|
|
|
|
// construct implements constructor of ReportReasonClass.
|
|
func (r ReportReasonCustom) construct() ReportReasonClass { return &r }
|
|
|
|
// Ensuring interfaces in compile-time for ReportReasonCustom.
|
|
var (
|
|
_ bin.Encoder = &ReportReasonCustom{}
|
|
_ bin.Decoder = &ReportReasonCustom{}
|
|
_ bin.BareEncoder = &ReportReasonCustom{}
|
|
_ bin.BareDecoder = &ReportReasonCustom{}
|
|
|
|
_ ReportReasonClass = &ReportReasonCustom{}
|
|
)
|
|
|
|
func (r *ReportReasonCustom) Zero() bool {
|
|
if r == nil {
|
|
return true
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (r *ReportReasonCustom) String() string {
|
|
if r == nil {
|
|
return "ReportReasonCustom(nil)"
|
|
}
|
|
type Alias ReportReasonCustom
|
|
return fmt.Sprintf("ReportReasonCustom%+v", Alias(*r))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*ReportReasonCustom) TypeID() uint32 {
|
|
return ReportReasonCustomTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*ReportReasonCustom) TypeName() string {
|
|
return "reportReasonCustom"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (r *ReportReasonCustom) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "reportReasonCustom",
|
|
ID: ReportReasonCustomTypeID,
|
|
}
|
|
if r == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (r *ReportReasonCustom) Encode(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonCustom#adb7da73 as nil")
|
|
}
|
|
b.PutID(ReportReasonCustomTypeID)
|
|
return r.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (r *ReportReasonCustom) EncodeBare(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonCustom#adb7da73 as nil")
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (r *ReportReasonCustom) Decode(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonCustom#adb7da73 to nil")
|
|
}
|
|
if err := b.ConsumeID(ReportReasonCustomTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode reportReasonCustom#adb7da73: %w", err)
|
|
}
|
|
return r.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (r *ReportReasonCustom) DecodeBare(b *bin.Buffer) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonCustom#adb7da73 to nil")
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (r *ReportReasonCustom) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't encode reportReasonCustom#adb7da73 as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("reportReasonCustom")
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (r *ReportReasonCustom) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if r == nil {
|
|
return fmt.Errorf("can't decode reportReasonCustom#adb7da73 to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("reportReasonCustom"); err != nil {
|
|
return fmt.Errorf("unable to decode reportReasonCustom#adb7da73: %w", err)
|
|
}
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// ReportReasonClassName is schema name of ReportReasonClass.
|
|
const ReportReasonClassName = "ReportReason"
|
|
|
|
// ReportReasonClass represents ReportReason generic type.
|
|
//
|
|
// Example:
|
|
//
|
|
// g, err := tdapi.DecodeReportReason(buf)
|
|
// if err != nil {
|
|
// panic(err)
|
|
// }
|
|
// switch v := g.(type) {
|
|
// case *tdapi.ReportReasonSpam: // reportReasonSpam#b80e23bf
|
|
// case *tdapi.ReportReasonViolence: // reportReasonViolence#7983c739
|
|
// case *tdapi.ReportReasonPornography: // reportReasonPornography#4ddf1cf7
|
|
// case *tdapi.ReportReasonChildAbuse: // reportReasonChildAbuse#2d5d42fe
|
|
// case *tdapi.ReportReasonCopyright: // reportReasonCopyright#57e22faf
|
|
// case *tdapi.ReportReasonUnrelatedLocation: // reportReasonUnrelatedLocation#5381830
|
|
// case *tdapi.ReportReasonFake: // reportReasonFake#15083fe0
|
|
// case *tdapi.ReportReasonIllegalDrugs: // reportReasonIllegalDrugs#fc541220
|
|
// case *tdapi.ReportReasonPersonalDetails: // reportReasonPersonalDetails#a14b9412
|
|
// case *tdapi.ReportReasonCustom: // reportReasonCustom#adb7da73
|
|
// default: panic(v)
|
|
// }
|
|
type ReportReasonClass interface {
|
|
bin.Encoder
|
|
bin.Decoder
|
|
bin.BareEncoder
|
|
bin.BareDecoder
|
|
construct() ReportReasonClass
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
TypeID() uint32
|
|
// TypeName returns name of type in TL schema.
|
|
TypeName() string
|
|
// String implements fmt.Stringer.
|
|
String() string
|
|
// Zero returns true if current object has a zero value.
|
|
Zero() bool
|
|
|
|
EncodeTDLibJSON(b tdjson.Encoder) error
|
|
DecodeTDLibJSON(b tdjson.Decoder) error
|
|
}
|
|
|
|
// DecodeReportReason implements binary de-serialization for ReportReasonClass.
|
|
func DecodeReportReason(buf *bin.Buffer) (ReportReasonClass, error) {
|
|
id, err := buf.PeekID()
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
switch id {
|
|
case ReportReasonSpamTypeID:
|
|
// Decoding reportReasonSpam#b80e23bf.
|
|
v := ReportReasonSpam{}
|
|
if err := v.Decode(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode ReportReasonClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case ReportReasonViolenceTypeID:
|
|
// Decoding reportReasonViolence#7983c739.
|
|
v := ReportReasonViolence{}
|
|
if err := v.Decode(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode ReportReasonClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case ReportReasonPornographyTypeID:
|
|
// Decoding reportReasonPornography#4ddf1cf7.
|
|
v := ReportReasonPornography{}
|
|
if err := v.Decode(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode ReportReasonClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case ReportReasonChildAbuseTypeID:
|
|
// Decoding reportReasonChildAbuse#2d5d42fe.
|
|
v := ReportReasonChildAbuse{}
|
|
if err := v.Decode(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode ReportReasonClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case ReportReasonCopyrightTypeID:
|
|
// Decoding reportReasonCopyright#57e22faf.
|
|
v := ReportReasonCopyright{}
|
|
if err := v.Decode(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode ReportReasonClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case ReportReasonUnrelatedLocationTypeID:
|
|
// Decoding reportReasonUnrelatedLocation#5381830.
|
|
v := ReportReasonUnrelatedLocation{}
|
|
if err := v.Decode(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode ReportReasonClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case ReportReasonFakeTypeID:
|
|
// Decoding reportReasonFake#15083fe0.
|
|
v := ReportReasonFake{}
|
|
if err := v.Decode(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode ReportReasonClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case ReportReasonIllegalDrugsTypeID:
|
|
// Decoding reportReasonIllegalDrugs#fc541220.
|
|
v := ReportReasonIllegalDrugs{}
|
|
if err := v.Decode(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode ReportReasonClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case ReportReasonPersonalDetailsTypeID:
|
|
// Decoding reportReasonPersonalDetails#a14b9412.
|
|
v := ReportReasonPersonalDetails{}
|
|
if err := v.Decode(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode ReportReasonClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case ReportReasonCustomTypeID:
|
|
// Decoding reportReasonCustom#adb7da73.
|
|
v := ReportReasonCustom{}
|
|
if err := v.Decode(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode ReportReasonClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
default:
|
|
return nil, fmt.Errorf("unable to decode ReportReasonClass: %w", bin.NewUnexpectedID(id))
|
|
}
|
|
}
|
|
|
|
// DecodeTDLibJSONReportReason implements binary de-serialization for ReportReasonClass.
|
|
func DecodeTDLibJSONReportReason(buf tdjson.Decoder) (ReportReasonClass, error) {
|
|
id, err := buf.FindTypeID()
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
switch id {
|
|
case "reportReasonSpam":
|
|
// Decoding reportReasonSpam#b80e23bf.
|
|
v := ReportReasonSpam{}
|
|
if err := v.DecodeTDLibJSON(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode ReportReasonClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case "reportReasonViolence":
|
|
// Decoding reportReasonViolence#7983c739.
|
|
v := ReportReasonViolence{}
|
|
if err := v.DecodeTDLibJSON(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode ReportReasonClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case "reportReasonPornography":
|
|
// Decoding reportReasonPornography#4ddf1cf7.
|
|
v := ReportReasonPornography{}
|
|
if err := v.DecodeTDLibJSON(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode ReportReasonClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case "reportReasonChildAbuse":
|
|
// Decoding reportReasonChildAbuse#2d5d42fe.
|
|
v := ReportReasonChildAbuse{}
|
|
if err := v.DecodeTDLibJSON(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode ReportReasonClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case "reportReasonCopyright":
|
|
// Decoding reportReasonCopyright#57e22faf.
|
|
v := ReportReasonCopyright{}
|
|
if err := v.DecodeTDLibJSON(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode ReportReasonClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case "reportReasonUnrelatedLocation":
|
|
// Decoding reportReasonUnrelatedLocation#5381830.
|
|
v := ReportReasonUnrelatedLocation{}
|
|
if err := v.DecodeTDLibJSON(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode ReportReasonClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case "reportReasonFake":
|
|
// Decoding reportReasonFake#15083fe0.
|
|
v := ReportReasonFake{}
|
|
if err := v.DecodeTDLibJSON(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode ReportReasonClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case "reportReasonIllegalDrugs":
|
|
// Decoding reportReasonIllegalDrugs#fc541220.
|
|
v := ReportReasonIllegalDrugs{}
|
|
if err := v.DecodeTDLibJSON(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode ReportReasonClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case "reportReasonPersonalDetails":
|
|
// Decoding reportReasonPersonalDetails#a14b9412.
|
|
v := ReportReasonPersonalDetails{}
|
|
if err := v.DecodeTDLibJSON(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode ReportReasonClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case "reportReasonCustom":
|
|
// Decoding reportReasonCustom#adb7da73.
|
|
v := ReportReasonCustom{}
|
|
if err := v.DecodeTDLibJSON(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode ReportReasonClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
default:
|
|
return nil, fmt.Errorf("unable to decode ReportReasonClass: %w", tdjson.NewUnexpectedID(id))
|
|
}
|
|
}
|
|
|
|
// ReportReason boxes the ReportReasonClass providing a helper.
|
|
type ReportReasonBox struct {
|
|
ReportReason ReportReasonClass
|
|
}
|
|
|
|
// Decode implements bin.Decoder for ReportReasonBox.
|
|
func (b *ReportReasonBox) Decode(buf *bin.Buffer) error {
|
|
if b == nil {
|
|
return fmt.Errorf("unable to decode ReportReasonBox to nil")
|
|
}
|
|
v, err := DecodeReportReason(buf)
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode boxed value: %w", err)
|
|
}
|
|
b.ReportReason = v
|
|
return nil
|
|
}
|
|
|
|
// Encode implements bin.Encode for ReportReasonBox.
|
|
func (b *ReportReasonBox) Encode(buf *bin.Buffer) error {
|
|
if b == nil || b.ReportReason == nil {
|
|
return fmt.Errorf("unable to encode ReportReasonClass as nil")
|
|
}
|
|
return b.ReportReason.Encode(buf)
|
|
}
|
|
|
|
// DecodeTDLibJSON implements bin.Decoder for ReportReasonBox.
|
|
func (b *ReportReasonBox) DecodeTDLibJSON(buf tdjson.Decoder) error {
|
|
if b == nil {
|
|
return fmt.Errorf("unable to decode ReportReasonBox to nil")
|
|
}
|
|
v, err := DecodeTDLibJSONReportReason(buf)
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode boxed value: %w", err)
|
|
}
|
|
b.ReportReason = v
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements bin.Encode for ReportReasonBox.
|
|
func (b *ReportReasonBox) EncodeTDLibJSON(buf tdjson.Encoder) error {
|
|
if b == nil || b.ReportReason == nil {
|
|
return fmt.Errorf("unable to encode ReportReasonClass as nil")
|
|
}
|
|
return b.ReportReason.EncodeTDLibJSON(buf)
|
|
}
|