Module Superbol_free_lib.Command_texi2rst

module LOCATION : sig ... end
module INPUT : sig ... end
module OUTPUT : sig ... end
type line = inline list
and inline =
  1. | STRING of string
  2. | MACRO of LOCATION.t * string * line
  3. | QUOTE of line
type blocks = block list
and block =
  1. | EMPTY_LINE
  2. | LINE of line
  3. | NODE of string
  4. | BLOCK of string * blocks
  5. | LEVEL of int * string option * line * blocks
  6. | ITEMS of string * string * (line * blocks) list
  7. | INDEX of string
  8. | DIAGRAM of string * blocks
type document = {
  1. basename : string;
  2. title : line option;
  3. subtitle : line option;
  4. authors : line list;
  5. content : blocks;
}
val string_of_line : line -> string
val split_command : string -> string * string
type block_kind =
  1. | RawBlock
  2. | Level of int * string option * line
  3. | Items of string * line option * (line * blocks) list
type closer =
  1. | EOL
  2. | BRACE
  3. | QUOTE
exception Unexpected_eol
val read : path:string list -> string -> document
val spaces : int -> string
val print_blocks : Stdlib.out_channel -> blocks -> unit
val print_doc : ?dir:string -> document -> unit
val label_of_title : string -> string
type verbatim =
  1. | Block
  2. | LiteralBlock
  3. | ParsedLiteral
type ctx = {
  1. doc : document;
  2. mutable math : bool list;
  3. mutable verbatim : verbatim list;
  4. mutable line : int;
  5. line_indexes : (int, string) Stdlib.Hashtbl.t;
  6. new_line_indexes : (int, string) Stdlib.Hashtbl.t;
  7. line_anchors : (int, string) Stdlib.Hashtbl.t;
  8. new_line_anchors : (int, string) Stdlib.Hashtbl.t;
  9. refs_external : (string * string) EzCompat.StringMap.t;
  10. refs_allowed : EzCompat.StringSet.t option;
  11. mutable files : string list;
  12. mutable footnotes : string list;
  13. mutable unknown_macros : LOCATION.t EzCompat.StringMap.t;
  14. mutable refs_created : EzCompat.StringSet.t;
  15. mutable anchors_created : EzCompat.StringSet.t;
  16. mutable index_created : EzCompat.StringSet.t;
  17. mutable refs_used : LOCATION.t EzCompat.StringMap.t;
}
val add_index : ctx -> EzCompat.StringSet.elt -> unit
val add_anchor : ctx -> string -> unit
val place_for_indexes : ctx -> OUTPUT.t -> string -> unit
val rst_escape : string -> string
val rst_trim : string -> string
val add_ref : ctx -> LOCATION.t -> EzCompat.StringSet.elt -> EzCompat.StringSet.elt
val parse_args : ctx -> line -> EzCompat.StringSet.elt list
val rst_of_line0 : ctx -> line -> EzCompat.StringSet.elt
val with_pxref : ctx -> LOCATION.t -> string -> ?arg:line -> ?prefix:inline list -> ?suffix:string -> line -> EzCompat.StringSet.elt
val with_pxrefalt : ctx -> LOCATION.t -> string -> line -> EzCompat.StringSet.elt
val rst_of_line : ctx -> line -> EzCompat.StringSet.elt
val output_level : ctx -> OUTPUT.t -> int -> ?number:string -> line -> unit
val linebreaks : inline list -> inline list list
val output_blocks : ctx -> OUTPUT.t -> string -> blocks -> unit
val output_block : ctx -> OUTPUT.t -> string -> block -> unit
val to_rst : document -> string -> unit
val action : path:string list -> filename:string -> ?target:string -> unit -> unit
val cmd : Ezcmd.V2.EZCMD.TYPES.sub