package stog

  1. Overview
  2. Docs

Module Stog.TypesSource

Types.

Sourcemodule Xml = Xtmpl.Xml
Sourcetype date = Date.t
Sourcetype body = XR.tree list
Sourceval get_def : def list -> XR.name -> (XR.attributes * body) option
Sourcemodule Str_map : Map.S with type key = string
Sourcemodule Str_set : Set.S with type elt = string
Sourcetype doc = {
  1. doc_path : Path.path;
  2. doc_parent : Path.path option;
  3. doc_children : Path.path list;
  4. doc_type : string;
  5. doc_prolog : XR.prolog option;
  6. doc_body : body;
  7. doc_date : date option;
  8. doc_title : string;
  9. doc_keywords : string list;
  10. doc_topics : string list;
  11. doc_defs : def list;
  12. doc_src : string;
  13. doc_sets : string list;
    (*

    list of sets ("blog", "foo", etc.) this document belongs to

    *)
  14. doc_lang_dep : bool;
    (*

    whether a file must be generated for each language

    *)
  15. doc_out : body option;
  16. doc_used_mods : Str_set.t;
}
Sourcetype doc_id = doc Tmap.key
Sourceval make_doc : ?typ:string -> ?path:Path.path -> ?prolog:XR.prolog -> unit -> doc
Sourcemodule Path_trie : Trie.S with type symbol = string
Sourcemodule Doc_set : Set.S with type elt = doc_id
Sourcemodule Int_map : Map.S with type key = int
Sourcemodule Int_set : Set.S with type elt = int
Sourcetype edge_type =
  1. | Date
  2. | Topic of string
  3. | Keyword of string
  4. | Ref
Sourcemodule Graph : Graph.S with type key = doc_id and type edge_data = edge_type
Sourcetype file_tree = {
  1. files : Str_set.t;
  2. dirs : file_tree Str_map.t;
}
Sourcetype stog_mod = {
  1. mod_requires : Str_set.t;
  2. mod_defs : def list;
}
Sourcetype 'a dependency =
  1. | File of string
  2. | Doc of 'a
Sourcemodule Depset : Set.S with type elt = string dependency
Sourcetype stog_dependencies = Depset.t Str_map.t
Sourcetype stog = {
  1. stog_dir : string;
  2. stog_docs : (doc, doc) Tmap.t;
  3. stog_docs_by_path : doc_id Path_trie.t;
  4. stog_defs : def list;
  5. stog_tmpl_dirs : string list;
  6. stog_mod_dirs : string list;
  7. stog_cache_dir : string;
  8. stog_title : string;
  9. stog_desc : body;
  10. stog_graph : Graph.t;
  11. stog_docs_by_kw : Doc_set.t Str_map.t;
  12. stog_docs_by_topic : Doc_set.t Str_map.t;
  13. stog_archives : Doc_set.t Int_map.t Int_map.t;
  14. stog_base_url : Url.t;
  15. stog_email : string;
  16. stog_rss_length : int;
  17. stog_lang : string option;
  18. stog_outdir : string;
  19. stog_main_doc : doc_id option;
  20. stog_files : file_tree;
  21. stog_modules : stog_mod Str_map.t;
  22. stog_used_mods : Str_set.t;
  23. stog_depcut : bool;
  24. stog_deps : stog_dependencies;
  25. stog_id_map : (Path.path * string option) Str_map.t Path.Map.t;
  26. stog_levels : (string * int list) list Str_map.t;
  27. stog_publish_only : Filter_types.t option;
  28. stog_source : [ `Dir | `File ];
}
Sourceval create_stog : ?source:[ `Dir | `File ] -> string -> stog
Sourceval stog_md5 : stog -> string
Sourceval doc : stog -> doc Tmap.key -> doc
Sourceval docs_by_path : ?typ:string -> stog -> Path.path -> (doc_id * doc) list
Sourceval doc_by_path : ?typ:string -> stog -> Path.path -> doc_id * doc
Sourceval doc_children : stog -> doc -> doc list
Sourceval set_doc : stog -> doc Tmap.key -> doc -> stog
Sourceval add_path : stog -> Path.path -> doc_id -> stog
Sourceval add_doc : stog -> doc -> stog
Sourceval sort_docs_by_date : doc list -> doc list
Sourceval sort_ids_docs_by_date : ('a * doc) list -> ('a * doc) list
Sourceval sort_ids_docs_by_rules : 'b -> string list -> (doc_id * doc * 'b XR.env) list -> 'b * (doc_id * doc) list
Sourceval doc_list : ?by_date:bool -> ?set:string -> stog -> (doc Tmap.key * doc) list
Sourceval merge_stogs : stog list -> stog
Sourceval make_path : stog -> string -> string list
Sourceval find_block_by_id : doc -> string -> XR.tree option
Sourceval id_map_add : stog -> Path.Map.key -> Str_map.key -> Path.path -> string option -> stog
Sourceval map_doc_ref : stog -> doc -> Str_map.key -> doc * Str_map.key
OCaml

Innovation. Community. Security.