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 InputSecureFileUploaded struct {
ID int64
Parts int
MD5Checksum string
FileHash []byte
Secret []byte
}
const InputSecureFileUploadedTypeID = 0x3334b0f0
func (i InputSecureFileUploaded ) construct () InputSecureFileClass { return &i }
var (
_ bin .Encoder = &InputSecureFileUploaded {}
_ bin .Decoder = &InputSecureFileUploaded {}
_ bin .BareEncoder = &InputSecureFileUploaded {}
_ bin .BareDecoder = &InputSecureFileUploaded {}
_ InputSecureFileClass = &InputSecureFileUploaded {}
)
func (i *InputSecureFileUploaded ) Zero () bool {
if i == nil {
return true
}
if !(i .ID == 0 ) {
return false
}
if !(i .Parts == 0 ) {
return false
}
if !(i .MD5Checksum == "" ) {
return false
}
if !(i .FileHash == nil ) {
return false
}
if !(i .Secret == nil ) {
return false
}
return true
}
func (i *InputSecureFileUploaded ) String () string {
if i == nil {
return "InputSecureFileUploaded(nil)"
}
type Alias InputSecureFileUploaded
return fmt .Sprintf ("InputSecureFileUploaded%+v" , Alias (*i ))
}
func (i *InputSecureFileUploaded ) FillFrom (from interface {
GetID () (value int64 )
GetParts () (value int )
GetMD5Checksum () (value string )
GetFileHash () (value []byte )
GetSecret () (value []byte )
}) {
i .ID = from .GetID ()
i .Parts = from .GetParts ()
i .MD5Checksum = from .GetMD5Checksum ()
i .FileHash = from .GetFileHash ()
i .Secret = from .GetSecret ()
}
func (*InputSecureFileUploaded ) TypeID () uint32 {
return InputSecureFileUploadedTypeID
}
func (*InputSecureFileUploaded ) TypeName () string {
return "inputSecureFileUploaded"
}
func (i *InputSecureFileUploaded ) TypeInfo () tdp .Type {
typ := tdp .Type {
Name : "inputSecureFileUploaded" ,
ID : InputSecureFileUploadedTypeID ,
}
if i == nil {
typ .Null = true
return typ
}
typ .Fields = []tdp .Field {
{
Name : "ID" ,
SchemaName : "id" ,
},
{
Name : "Parts" ,
SchemaName : "parts" ,
},
{
Name : "MD5Checksum" ,
SchemaName : "md5_checksum" ,
},
{
Name : "FileHash" ,
SchemaName : "file_hash" ,
},
{
Name : "Secret" ,
SchemaName : "secret" ,
},
}
return typ
}
func (i *InputSecureFileUploaded ) Encode (b *bin .Buffer ) error {
if i == nil {
return fmt .Errorf ("can't encode inputSecureFileUploaded#3334b0f0 as nil" )
}
b .PutID (InputSecureFileUploadedTypeID )
return i .EncodeBare (b )
}
func (i *InputSecureFileUploaded ) EncodeBare (b *bin .Buffer ) error {
if i == nil {
return fmt .Errorf ("can't encode inputSecureFileUploaded#3334b0f0 as nil" )
}
b .PutLong (i .ID )
b .PutInt (i .Parts )
b .PutString (i .MD5Checksum )
b .PutBytes (i .FileHash )
b .PutBytes (i .Secret )
return nil
}
func (i *InputSecureFileUploaded ) Decode (b *bin .Buffer ) error {
if i == nil {
return fmt .Errorf ("can't decode inputSecureFileUploaded#3334b0f0 to nil" )
}
if err := b .ConsumeID (InputSecureFileUploadedTypeID ); err != nil {
return fmt .Errorf ("unable to decode inputSecureFileUploaded#3334b0f0: %w" , err )
}
return i .DecodeBare (b )
}
func (i *InputSecureFileUploaded ) DecodeBare (b *bin .Buffer ) error {
if i == nil {
return fmt .Errorf ("can't decode inputSecureFileUploaded#3334b0f0 to nil" )
}
{
value , err := b .Long ()
if err != nil {
return fmt .Errorf ("unable to decode inputSecureFileUploaded#3334b0f0: field id: %w" , err )
}
i .ID = value
}
{
value , err := b .Int ()
if err != nil {
return fmt .Errorf ("unable to decode inputSecureFileUploaded#3334b0f0: field parts: %w" , err )
}
i .Parts = value
}
{
value , err := b .String ()
if err != nil {
return fmt .Errorf ("unable to decode inputSecureFileUploaded#3334b0f0: field md5_checksum: %w" , err )
}
i .MD5Checksum = value
}
{
value , err := b .Bytes ()
if err != nil {
return fmt .Errorf ("unable to decode inputSecureFileUploaded#3334b0f0: field file_hash: %w" , err )
}
i .FileHash = value
}
{
value , err := b .Bytes ()
if err != nil {
return fmt .Errorf ("unable to decode inputSecureFileUploaded#3334b0f0: field secret: %w" , err )
}
i .Secret = value
}
return nil
}
func (i *InputSecureFileUploaded ) GetID () (value int64 ) {
if i == nil {
return
}
return i .ID
}
func (i *InputSecureFileUploaded ) GetParts () (value int ) {
if i == nil {
return
}
return i .Parts
}
func (i *InputSecureFileUploaded ) GetMD5Checksum () (value string ) {
if i == nil {
return
}
return i .MD5Checksum
}
func (i *InputSecureFileUploaded ) GetFileHash () (value []byte ) {
if i == nil {
return
}
return i .FileHash
}
func (i *InputSecureFileUploaded ) GetSecret () (value []byte ) {
if i == nil {
return
}
return i .Secret
}
type InputSecureFile struct {
ID int64
AccessHash int64
}
const InputSecureFileTypeID = 0x5367e5be
func (i InputSecureFile ) construct () InputSecureFileClass { return &i }
var (
_ bin .Encoder = &InputSecureFile {}
_ bin .Decoder = &InputSecureFile {}
_ bin .BareEncoder = &InputSecureFile {}
_ bin .BareDecoder = &InputSecureFile {}
_ InputSecureFileClass = &InputSecureFile {}
)
func (i *InputSecureFile ) Zero () bool {
if i == nil {
return true
}
if !(i .ID == 0 ) {
return false
}
if !(i .AccessHash == 0 ) {
return false
}
return true
}
func (i *InputSecureFile ) String () string {
if i == nil {
return "InputSecureFile(nil)"
}
type Alias InputSecureFile
return fmt .Sprintf ("InputSecureFile%+v" , Alias (*i ))
}
func (i *InputSecureFile ) FillFrom (from interface {
GetID () (value int64 )
GetAccessHash () (value int64 )
}) {
i .ID = from .GetID ()
i .AccessHash = from .GetAccessHash ()
}
func (*InputSecureFile ) TypeID () uint32 {
return InputSecureFileTypeID
}
func (*InputSecureFile ) TypeName () string {
return "inputSecureFile"
}
func (i *InputSecureFile ) TypeInfo () tdp .Type {
typ := tdp .Type {
Name : "inputSecureFile" ,
ID : InputSecureFileTypeID ,
}
if i == nil {
typ .Null = true
return typ
}
typ .Fields = []tdp .Field {
{
Name : "ID" ,
SchemaName : "id" ,
},
{
Name : "AccessHash" ,
SchemaName : "access_hash" ,
},
}
return typ
}
func (i *InputSecureFile ) Encode (b *bin .Buffer ) error {
if i == nil {
return fmt .Errorf ("can't encode inputSecureFile#5367e5be as nil" )
}
b .PutID (InputSecureFileTypeID )
return i .EncodeBare (b )
}
func (i *InputSecureFile ) EncodeBare (b *bin .Buffer ) error {
if i == nil {
return fmt .Errorf ("can't encode inputSecureFile#5367e5be as nil" )
}
b .PutLong (i .ID )
b .PutLong (i .AccessHash )
return nil
}
func (i *InputSecureFile ) Decode (b *bin .Buffer ) error {
if i == nil {
return fmt .Errorf ("can't decode inputSecureFile#5367e5be to nil" )
}
if err := b .ConsumeID (InputSecureFileTypeID ); err != nil {
return fmt .Errorf ("unable to decode inputSecureFile#5367e5be: %w" , err )
}
return i .DecodeBare (b )
}
func (i *InputSecureFile ) DecodeBare (b *bin .Buffer ) error {
if i == nil {
return fmt .Errorf ("can't decode inputSecureFile#5367e5be to nil" )
}
{
value , err := b .Long ()
if err != nil {
return fmt .Errorf ("unable to decode inputSecureFile#5367e5be: field id: %w" , err )
}
i .ID = value
}
{
value , err := b .Long ()
if err != nil {
return fmt .Errorf ("unable to decode inputSecureFile#5367e5be: field access_hash: %w" , err )
}
i .AccessHash = value
}
return nil
}
func (i *InputSecureFile ) GetID () (value int64 ) {
if i == nil {
return
}
return i .ID
}
func (i *InputSecureFile ) GetAccessHash () (value int64 ) {
if i == nil {
return
}
return i .AccessHash
}
const InputSecureFileClassName = "InputSecureFile"
type InputSecureFileClass interface {
bin .Encoder
bin .Decoder
bin .BareEncoder
bin .BareDecoder
construct () InputSecureFileClass
TypeID () uint32
TypeName () string
String () string
Zero () bool
GetID () (value int64 )
}
func (i *InputSecureFile ) AsInputSecureFileLocation () *InputSecureFileLocation {
value := new (InputSecureFileLocation )
value .ID = i .GetID ()
value .AccessHash = i .GetAccessHash ()
return value
}
func DecodeInputSecureFile (buf *bin .Buffer ) (InputSecureFileClass , error ) {
id , err := buf .PeekID ()
if err != nil {
return nil , err
}
switch id {
case InputSecureFileUploadedTypeID :
v := InputSecureFileUploaded {}
if err := v .Decode (buf ); err != nil {
return nil , fmt .Errorf ("unable to decode InputSecureFileClass: %w" , err )
}
return &v , nil
case InputSecureFileTypeID :
v := InputSecureFile {}
if err := v .Decode (buf ); err != nil {
return nil , fmt .Errorf ("unable to decode InputSecureFileClass: %w" , err )
}
return &v , nil
default :
return nil , fmt .Errorf ("unable to decode InputSecureFileClass: %w" , bin .NewUnexpectedID (id ))
}
}
type InputSecureFileBox struct {
InputSecureFile InputSecureFileClass
}
func (b *InputSecureFileBox ) Decode (buf *bin .Buffer ) error {
if b == nil {
return fmt .Errorf ("unable to decode InputSecureFileBox to nil" )
}
v , err := DecodeInputSecureFile (buf )
if err != nil {
return fmt .Errorf ("unable to decode boxed value: %w" , err )
}
b .InputSecureFile = v
return nil
}
func (b *InputSecureFileBox ) Encode (buf *bin .Buffer ) error {
if b == nil || b .InputSecureFile == nil {
return fmt .Errorf ("unable to encode InputSecureFileClass as nil" )
}
return b .InputSecureFile .Encode (buf )
}
The pages are generated with Golds v0.6.7 . (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 @Go100and1 (reachable from the left QR code) to get the latest news of Golds .