Understanding the Type Language¶
Telegram’s Type Language
(also known as TL, found on
.tl files) is a concise way to define
what other programming languages commonly call classes or structs.
Every definition is written as follows for a Telegram object is defined as follows:
name#id argument_name:argument_type = CommonType
This means that in a single line you know what the
TLObject name is.
You know it’s unique ID, and you know what arguments it has. It really
isn’t that hard to write a generator for generating code to any
The generated code should also be able to encode the
this be a request or a type) into bytes, so they can be sent over the
network. This isn’t a big deal either, because you know how the
TLObject’s are made, and how the types should be serialized.
You can either write your own code generator, or use the one this library provides, but please be kind and keep some special mention to this project for helping you out.
This is only a introduction. The
TL language is not that easy. But
it’s not that hard either. You’re free to sniff the
telethon_generator/ files and learn how to parse other more complex
lines, such as
flags (to indicate things that may or may not be
written at all) and