move gotd fork into repo. (#111)

- 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
This commit is contained in:
Adam Van Ymeren
2025-06-27 20:03:37 -07:00
committed by GitHub
parent 0952df0244
commit 7a04f298d2
19264 changed files with 1539697 additions and 84 deletions
+56
View File
@@ -0,0 +1,56 @@
package gen
import (
"strings"
"github.com/gotd/tl"
)
func (g *Generator) makeVector(className string) (class classBinding, err error) {
class, ok := g.classes[className]
if ok {
return class, nil
}
elementName := strings.TrimPrefix(className[:len(className)-1], "Vector<")
goElementName := g.classes[elementName].Name
if goElementName == "" {
goElementName = elementName
}
f, err := g.makeField(tl.Parameter{
Name: "Elems",
Type: tl.Type{
Name: "Vector",
GenericArg: &tl.Type{
Name: elementName,
},
},
}, nil)
if err != nil {
return class, err
}
f.Comment = []string{"Elements of " + className}
goName := strings.Title(goElementName) + "Vector"
class = classBinding{
Name: goName,
Func: f.Type,
Singular: true,
Vector: true,
}
g.classes[className] = class
g.structs = append(g.structs, structDef{
Name: goName,
Receiver: "vec",
BufArg: "b",
RawType: className,
Vector: true,
Fields: []fieldDef{f},
BaseName: goName,
Comment: goName + " is a box for " + className,
})
return class, nil
}