package atd

  1. Overview
  2. Docs
Parser for the ATD data format description language

Install

dune-project
 Dependency

Authors

  1. M
    Martin Jambon <martin@mjambon.com>
  2. M
    Martin Jambon <martin@r2c.dev>
  3. R
    Rudi Grinberg <rudi.grinberg@gmail.com>
  4. M
    Martin Jambon <github@mjambon.com>
  5. A
    Alexandre Bourquelot <alexandre.bourquelot@ahrefs.com>
  6. O
    oleksiy <oleksiy.golovko@ahrefs.com>
  7. I
    Ivan Jager <aij+git@mrph.org>
  8. M
    Martin Jambon <martin@semgrep.com>
  9. G
    Gregoire Lionnet <gregoire.lionnet@ahrefs.com>
  10. S
    Sebastien Mondet <sebastien.mondet@ahrefs.com>
  11. D
    David Sheets <sheets@alum.mit.edu>
  12. R
    Rudi Grinberg <me@rgrinberg.com>
  13. M
    Martin Jambon <martin@esper.com>
  14. R
    Rytis Jonynas <rytis.jonynas@ahrefs.com>
  15. J
    Jeff Meister <nanaki@gmail.com>
  16. R
    Raman Varabets <roman.vorobets@gmail.com>
  17. C
    Carmelo Piccione <carmelo.piccione@gmail.com>
  18. L
    Louis <louis.roche@ahrefs.com>
  19. C
    Caio Wakamatsu <caio.wakamatsu@ahrefs.com>
  20. M
    Marek Kubica <marek@tarides.com>
  21. D
    Daniel Weil <danweil68@gmail.com>
  22. E
    Egor Chemokhonenko <egor.chemohonenko@ahrefs.com>
  23. Gabriel Scherer
  24. J
    Javier Chavarri <javier.chavarri@gmail.com>
  25. L
    Louis Roché (Ahrefs) <louis.roche@ahrefs.com>
  26. M
    Matthew McQuaid <matthew@returntocorp.com>
  27. R
    Raman Varabets <raman+git@ahrefs.com>
  28. K
    koonwen <koonwen@gmail.com>
  29. T
    tzm <frank@boldsolutions.de>
  30. M
    Mathieu Baudet <mathieubaudet@fb.com>
  31. O
    Oleksiy Golovko <alexei.golovko@gmail.com>
  32. R
    Rauan Mayemir <rauan@mayemir.io>
  33. S
    Seb Mondet <seb@mondet.org>
  34. A
    Alexandre Bourquelot <alexandre.bourquelot@gmail.com>
  35. C
    Carmelo Piccione <cep1@solvuu.com>
  36. H
    Hyeseong Kim <hey@hyeseong.kim>
  37. J
    John Billings <john@monkeynut.org>
  38. L
    Louis Roché <louis@louisroche.net>
  39. M
    Mathieu Barbin <mathieu.barbin@gmail.com>
  40. Z
    Zach Yannes <zach@returntocorp.com>
  41. A
    Antonin Décimo <antonin@tarides.com>
  42. B
    Brendan Long <self@brendanlong.com>
  43. C
    Chris Yocum <cyocum@gmail.com>
  44. K
    Kate <kit.ty.kate@disroot.org>
  45. L
    Louis Roché <louis.roche@ahrefs.com>
  46. P
    Pavel Antoshkin <pavel.antoshkin@ahrefs.com>
  47. P
    Pierre Boutillier <pierre.boutillier@laposte.net>
  48. S
    Shon Feder <shon.feder@key.me>
  49. M
    metanivek <metanivek@gmail.com>
  50. S
    sebastiantoh <sebas.tsj.98@gmail.com>
  51. A
    Anurag Soni <anuragsoni.13@gmail.com>
  52. A
    Arjun Ravi Narayan <arjunravinarayan@gmail.com>
  53. A
    Asya-kawai <kawai-toshiki@aintek.xyz>
  54. C
    Christophe Troestler <christophe.Troestler@umons.ac.be>
  55. C
    Corentin Leruth <corentin.leruth@gmail.com>
  56. Damien Doligez
  57. D
    Daniel M <dan.mntg@gmail.com>
  58. D
    Ding Xiang Fei <dingxiangfei2009@protonmail.ch>
  59. E
    Enrico Tassi <Enrico.Tassi@Inria.fr>
  60. F
    François Pottier <francois.pottier@inria.fr>
  61. J
    Javier Chávarri <javier.chavarri@gmail.com>
  62. J
    Jonas Bergler <jonas@bergler.name>
  63. K
    Kate <kit-ty-kate@exn.st>
  64. K
    Koon Wen Lee <koonwen@gmail.com>
  65. L
    Louis <mail+github@louisroche.net>
  66. L
    Louis Roché <louis@cryptosense.com>
  67. S
    Stephane Legrand <slegrand45@gmail.com>
  68. V
    Vincent Bernardoff <vb@luminar.eu.org>
  69. Z
    Zach <zachyannes@gmail.com>
  70. H
    haoyang <haoyang@esper.co>
  71. P
    pmundkur <prashanth.mundkur@gmail.com>
  72. R
    rr0gi <igor@ahrefs.com>
  73. Y
    ygrek <ygrek@autistici.org>

Maintainers

Sources

atd-4.0.0.tbz
sha256=3514fe4dc4e788640b3e9a9fec3b5b106e6f609b59d28522701de1bd2ea909f1
sha512=35c1fa7b7289ed52a59de06292171cc61df3098e011a0455c0aa54bc7e617f5b00542a3d63c328ef2bc68d4c0a4259ea642c33b0bfe74e2245afcd7206b7f5c8

doc/atd/Atd/Json/index.html

Module Atd.JsonSource

Mapping from ATD to JSON

Sourcetype ocaml_adapter = {
  1. normalize : string;
  2. restore : string;
}
Sourcetype json_adapter = {
  1. ocaml_adapter : ocaml_adapter option;
    (*

    A module implementing normalize and restore.

    *)
  2. java_adapter : string option;
    (*

    tbd

    *)
}

Association between languages and json adapter for that language. The specification of each json adapter is language-specific.

Sourceval no_adapter : json_adapter
Sourcetype json_int =
  1. | Int
  2. | String
Sourcetype json_float =
  1. | Float of int option
  2. | Int
Sourcetype json_list =
  1. | Array
  2. | Object
Sourcetype json_variant = {
  1. json_cons : string;
}
Sourcetype json_field = {
  1. json_fname : string;
  2. json_unwrapped : bool;
}
Sourcetype json_record = {
  1. json_keep_nulls : bool;
  2. json_record_adapter : json_adapter;
}
Sourcetype json_sum = {
  1. json_sum_adapter : json_adapter;
  2. json_open_enum : bool;
  3. json_lowercase_tags : bool;
}
Sourcetype json_repr =
  1. | Abstract
  2. | Bool
  3. | Cell
  4. | Def
  5. | External
  6. | Field of json_field
  7. | Float of json_float
  8. | Int of json_int
  9. | List of json_list
  10. | Name
  11. | Nullable
  12. | Option
  13. | Record of json_record
  14. | String
  15. | Sum of json_sum
  16. | Tuple
  17. | Unit
  18. | Variant of json_variant
  19. | Wrap

The different kinds of ATD nodes with their json-specific options.

Sourceval annot_schema_json : Annot.schema
Sourceval get_json_list : Annot.t -> json_list
Sourceval get_json_int : Annot.t -> json_int
Sourceval get_json_float : Annot.t -> json_float
Sourceval get_json_cons : string -> Annot.t -> string
Sourceval get_json_fname : string -> Annot.t -> string
Sourceval get_json_record : Annot.t -> json_record
Sourceval get_json_sum : Annot.t -> json_sum