https://github.com/vkcom/tl
Last synced: 9 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/vkcom/tl
- Owner: VKCOM
- License: mpl-2.0
- Created: 2023-06-01T13:16:56.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2024-10-29T08:31:11.000Z (over 1 year ago)
- Last Synced: 2024-10-29T09:23:57.815Z (over 1 year ago)
- Language: C++
- Size: 4.34 MB
- Stars: 18
- Watchers: 13
- Forks: 2
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# TL
TL is a data description language and data storage format.
## Overview
In general, interest in TL stems from a desire to serialize data and make RPC calls to servers that implement TL RPC, as well as to implement such servers
TL describes data structures, including RPC queriesand their responses, using syntax derived from functional programming languages.
The TL format is characterized by compactness and high efficiency.
TL is schema-driven format. Tool caled `tlgen` is used to generate structs/classes and (de)serialization methods.
## Running without installation
You can run tool without installation. This is recommended way for most use cases.
```
go run github.com/vkcom/tl/cmd/tlgen@latest
```
For build scripts, you can pin particular version instead of `latest`.
## Installation
Install `tlgen` with the following command
```
go install github.com/vkcom/tl/cmd/tlgen@latest
```
## Documentation
- [Internals](./docs/TLPrimer.pdf) (in Russian)
## License
TL is licensed under the [Mozilla Public License Version 2.0](./LICENSE).