sig
  type t = Atd_ast.annot
  val has_section : string -> Atd_annot.t -> bool
  val has_field : string list -> string -> Atd_annot.t -> bool
  val get_flag : string list -> string -> Atd_annot.t -> bool
  val get_field :
    (string -> 'a option) -> '-> string list -> string -> Atd_annot.t -> 'a
  val set_field :
    Atd_ast.loc ->
    string -> string -> string option -> Atd_annot.t -> Atd_annot.t
  val merge : Atd_annot.t -> Atd_annot.t
  val create_id : unit -> string
end