Module Doc_types (.ml)

module Doc_types: sig .. end

An abstract syntax tree specification for parsed nmm source-code.


type tr_doc = {
   fld_doc_preamble : ts_preamble option;
   fld_doc_title : ts_title option;
   fld_doc_authors : ts_authors option;
   fld_doc_date : tu_date option;
   fld_doc_abstract : ts_abstract option;
   fld_doc_main : tu_doc_main;
   fld_doc_refs : ts_refs option;
}
type ts_preamble = 
| Cs_preamble of string
type ts_title = 
| Cs_title of string
type ts_authors = 
| Cs_authors of ts_author list
type ts_author = 
| Cs_author of string
type tu_date = 
| Cu_date_auto of ts_date_auto
| Cu_date_custom of ts_date_custom
type ts_date_auto = 
| Cs_date_auto
type ts_date_custom = 
| Cs_date_custom of string
type ts_abstract = 
| Cs_abstract of ts_blks
type tu_doc_main = 
| Cu_doc_main_chs of ts_chs
| Cu_doc_main_secs of ts_secs
| Cu_doc_main_pars of ts_pars
| Cu_doc_main_blks of ts_blks
type ts_refs = 
| Cs_refs of ts_blks
type ts_chs = 
| Cs_chs of tr_ch list
type ts_secs = 
| Cs_secs of tr_sec list
type ts_pars = 
| Cs_pars of tu_par list
type ts_blks = 
| Cs_blks of tu_blk list
type tr_ch = {
   fld_ch_tag_or_id : tu_tag_or_id option;
   fld_ch_hdr : ts_hdr option;
   fld_ch_main : tu_secs_pars_or_blks;
}
type tr_sec = {
   fld_sec_tag_or_id : tu_tag_or_id option;
   fld_sec_hdr : ts_hdr option;
   fld_sec_main : tu_pars_or_blks;
}
type tu_par = 
| Cu_par_std of tr_par_std
| Cu_par_rpt of ts_par_rpt
type ts_par_rpt = 
| Cs_par_rpt of tr_id
type tr_par_std = {
   fld_par_tag_or_id : tu_tag_or_id option;
   fld_par_hdr : ts_hdr option;
   fld_par_main : ts_blks;
}
type tu_blk = 
| Cu_blk_txt of ts_blk_txt
| Cu_blk_blt of ts_blk_blt
| Cu_blk_itm of tr_blk_itm
| Cu_blk_dsp of ts_blk_dsp
| Cu_blk_vrb of ts_blk_vrb
| Cu_blk_nte of tr_blk_nte
type tu_secs_pars_or_blks = 
| Cu_secs_pars_or_blks_secs of ts_secs
| Cu_secs_pars_or_blks_pars of ts_pars
| Cu_secs_pars_or_blks_blks of ts_blks
type tu_pars_or_blks = 
| Cu_pars_or_blks_pars of ts_pars
| Cu_pars_or_blks_blks of ts_blks
type tu_tag_or_id = 
| Cu_tag_or_id_tag of ts_tag
| Cu_tag_or_id_id of tr_id
type tr_id = {
   fld_id_tag : ts_tag;
   fld_id_name : ts_name;
   fld_id_scope : tu_scope option;
}
type ts_tag = 
| Cs_tag of string
type ts_name = 
| Cs_name of string
type tu_scope = 
| Cu_scope_gbl
| Cu_scope_ch
| Cu_scope_sec
| Cu_scope_app
| Cu_scope_par
type ts_hdr = 
| Cs_hdr of ts_txt_units
type ts_blk_txt = 
| Cs_blk_txt of ts_txt_units
type ts_txt_units = 
| Cs_txt_units of tu_txt_unit list
type tu_txt_unit = 
| Cu_txt_unit_wysiwyg of ts_txt_unit_wysiwyg
| Cu_txt_unit_emph of ts_txt_unit_emph
| Cu_txt_unit_c_ref of ts_txt_unit_c_ref
| Cu_txt_unit_nte_ref of ts_txt_unit_nte_ref
| Cu_txt_unit_nte_inline of ts_txt_unit_nte_inline
type ts_txt_unit_wysiwyg = 
| Cs_txt_unit_wysiwyg of string
type ts_txt_unit_emph = 
| Cs_txt_unit_emph of string
type ts_txt_unit_c_ref = 
| Cs_txt_unit_c_ref of ts_c_ref
type ts_txt_unit_nte_ref = 
| Cs_txt_unit_nte_ref of ts_nte_ref
type ts_txt_unit_nte_inline = 
| Cs_txt_unit_nte_inline of ts_nte_inline
type ts_c_ref = 
| Cs_c_ref of tr_id
type ts_nte_ref = 
| Cs_nte_ref of (tr_id * ts_int)
type ts_nte_inline = 
| Cs_nte_inline of (ts_blks * ts_int)
type ts_int = 
| Cs_int of int
type ts_blk_dsp = 
| Cs_blk_dsp of ts_dsp_lines
type ts_dsp_lines = 
| Cs_dsp_lines of tr_dsp_line list
type tr_dsp_line = {
   fld_dsp_line_lbl : tu_lbl option;
   fld_dsp_line_id : tr_id option;
   fld_dsp_line_units : ts_txt_units;
}
type tr_blk_itm = {
   fld_blk_itm_lbl : tu_lbl;
   fld_blk_itm_tag_or_id : tu_tag_or_id option;
   fld_blk_itm_main : ts_blks;
}
type ts_blk_blt = 
| Cs_blk_blt of ts_blks
type ts_blk_vrb = 
| Cs_blk_vrb of ts_vrb_lines
type tr_blk_nte = {
   fld_blk_nte_id : tr_id;
   fld_blk_nte_main : ts_blks;
}
type ts_vrb_lines = 
| Cs_vrb_lines of ts_vrb_line list
type ts_vrb_line = 
| Cs_vrb_line of string
type tu_lbl = 
| Cu_lbl_auto of ts_lbl_auto
| Cu_lbl_custom of ts_lbl_custom
type ts_lbl_auto = 
| Cs_lbl_auto
type ts_lbl_custom = 
| Cs_lbl_custom of string