package atdgen
Install
Dune Dependency
Authors
-
MMartin Jambon <martin@mjambon.com>
-
DDavid Sheets <sheets@alum.mit.edu>
-
RRudi Grinberg <me@rgrinberg.com>
-
IIvan Jager <aij+git@mrph.org>
-
JJeff Meister <nanaki@gmail.com>
-
CCarmelo Piccione <carmelo.piccione@gmail.com>
-
RRaman Varabets <roman.vorobets@gmail.com>
-
MMathieu Baudet <mathieubaudet@fb.com>
-
RRauan Mayemir <rauan@mayemir.io>
-
LLouis Roché <louis@louisroche.net>
-
BBrendan Long <self@brendanlong.com>
-
CChristophe Troestler <christophe.Troestler@umons.ac.be>
-
VVincent Bernardoff <vb@luminar.eu.org>
-
Hhaoyang <haoyang@esper.co>
Maintainers
Sources
sha256=db6b4c1a6293b214a7b7a3da435e681abd1b16b55d5aa246b93d26736d3a559e
sha512=0c7f1985cc4d87ddd541bb2f7085b72f81aaef69468653319a4a52e6cd6c9318511229784a12cdb413ae500e7a5b8195759e0d8d49946a9b00f62e8dda07e8a2
Description
Atdgen is a command-line program that takes as input type definitions in the ATD syntax and produces OCaml code suitable for data serialization and deserialization. Two data formats are currently supported, these are biniou and JSON. Atdgen-biniou and Atdgen-json will refer to Atdgen used in one context or the other. Atdgen was designed with efficiency and durability in mind. Software authors are encouraged to use Atdgen directly and to write tools that may reuse part of Atdgen’s source code.
Published: 15 Apr 2020
README
ATD project - Static Types for Json APIs
ATD stands for Adaptable Type Definitions. It is a syntax for defining cross-language data types. It is used as input to generate efficient and type-safe serializers, deserializers and validators. The current target languages are OCaml and Java.
The following opam packages are provided by the atd project:
atdgen: executable that generates OCaml code dealing with json and biniou data formats
atdj: executable that generates Java code dealing with json
atd: library for parsing atd files used by code generators
Documentation
Help wanted
The ATD suite of tools is developed and maintained by volunteers—users like you. Various issues are in need of attention. If you'd like to contribute, please leave a comment on the issue you're interested in, or create a new issue. Experienced contributors will guide you as needed.
There are many simple ways of making a positive impact. For example, you can...
Use the software in your project.
Give a demo to your colleagues.
Share the passion on your blog.
Tweet about what you're doing with atd.
Report difficulties by creating new issues. We'll triage them.
Ask questions on StackOverflow.
Answer questions on StackOverflow.
Discuss usage on the OCaml forums.
Pick a task that's easy for you.
Check out in particular good first time issues and other issues with which we could use some help.
See our contribution guidelines.
Authors
The ATD language and atdgen were originally created at MyLife by Martin Jambon in 2010. Atdj was created at MyLife by John Billings in 2010. Multiple volunteers contributed to the project after that. Other prominent contributors include Jeff Meister, David Sheets, and Rudi Grinberg.
We distribute the source code under the terms of a BSD license.
Dependencies (6)
Dev Dependencies (1)
-
atdgen-codec-runtime
with-test & < "2.10.0"
Used by (30)
-
atd
= "1.12.0"
-
atdj
< "2.0.0"
-
azure-cosmos-db
!= "0.2.0"
- calculon-redis-lib
- calculon-web
- daypack-lib
- dropbox
- elasticsearch-cli
-
facebook-sdk
< "0.3.1"
-
github
< "1.0.0" | >= "4.0.0" & < "4.4.0"
- github-data
-
gitlab
< "0.1.5"
- iocaml-kernel
- jupyter-kernel
-
kappa-agents
< "4.1.3"
- kappa-server
- melange-atdgen-codec-runtime
- monorobot
-
oclaunch
!= "0.2.1"
- openai-gym
- otoggl
- oxylc
- sanddb
- sentry
- slack
- spotify-web-api
- swagger
-
uritemplate
>= "0.1.0"
- vecosek-scene
-
wcs-lib
>= "2017-05-26.05"
Conflicts
None