Legend:
Library
Module
Module type
Parameter
Class
Class type
type loc = Ploc.t
type !'a v = 'a Ploc.vala
type type_var = string option Ploc.vala * bool option
type !'a class_infos = {
ciLoc : loc;
ciVir : bool Ploc.vala;
ciPrm : loc * type_var list Ploc.vala;
ciNam : string Ploc.vala;
ciExp : 'a;
ciAttributes : attributes;
}
and longid =
| LiAcc of loc * longid * string Ploc.vala
| LiApp of loc * longid * longid
| LiUid of loc * string Ploc.vala
| LiXtr of loc * string * longid Ploc.vala option
and ctyp =
| TyAcc of loc * longid * string Ploc.vala
| TyAli of loc * ctyp * ctyp
| TyAny of loc
| TyApp of loc * ctyp * ctyp
| TyArr of loc * ctyp * ctyp
| TyCls of loc * longid_lident Ploc.vala
| TyLab of loc * string Ploc.vala * ctyp
| TyLid of loc * string Ploc.vala
| TyMan of loc * ctyp * bool Ploc.vala * ctyp
| TyObj of loc * (string option * ctyp * attributes) list Ploc.vala * bool Ploc.vala
| TyOlb of loc * string Ploc.vala * ctyp
| TyOpn of loc
| TyPck of loc * module_type
| TyPol of loc * string list Ploc.vala * ctyp
| TyPot of loc * string list Ploc.vala * ctyp
| TyQuo of loc * string Ploc.vala
| TyRec of loc * (loc * string * bool * ctyp * attributes) list Ploc.vala
| TySum of loc * generic_constructor list Ploc.vala
| TyTup of loc * ctyp list Ploc.vala
| TyVrn of loc * poly_variant list Ploc.vala * string list Ploc.vala option option
| TyXtr of loc * string * ctyp Ploc.vala option
| TyAtt of loc * ctyp * attribute
| TyExten of loc * attribute
and poly_variant =
| PvTag of loc * string Ploc.vala * bool Ploc.vala * ctyp list Ploc.vala * attributes
| PvInh of loc * ctyp
and patt =
| PaPfx of loc * longid * patt
| PaLong of loc * longid
| PaAli of loc * patt * patt
| PaAnt of loc * patt
| PaAny of loc
| PaApp of loc * patt * patt
| PaArr of loc * patt list Ploc.vala
| PaChr of loc * string Ploc.vala
| PaExc of loc * patt
| PaFlo of loc * string Ploc.vala
| PaInt of loc * string Ploc.vala * string
| PaLab of loc * (patt * patt option Ploc.vala) list Ploc.vala
| PaLaz of loc * patt
| PaLid of loc * string Ploc.vala
| PaNty of loc * string Ploc.vala
| PaOlb of loc * patt * expr option Ploc.vala
| PaOrp of loc * patt * patt
| PaRec of loc * (patt * patt) list Ploc.vala
| PaRng of loc * patt * patt
| PaStr of loc * string Ploc.vala
| PaTup of loc * patt list Ploc.vala
| PaTyc of loc * patt * ctyp
| PaTyp of loc * longid_lident Ploc.vala
| PaUnp of loc * string Ploc.vala option Ploc.vala * module_type option
| PaVrn of loc * string Ploc.vala
| PaXtr of loc * string * patt Ploc.vala option
| PaAtt of loc * patt * attribute
| PaExten of loc * attribute
and expr =
| ExAcc of loc * expr * expr
| ExAnt of loc * expr
| ExApp of loc * expr * expr
| ExAre of loc * string Ploc.vala * expr * expr list Ploc.vala
| ExArr of loc * expr list Ploc.vala
| ExAsr of loc * expr
| ExAss of loc * expr * expr
| ExBae of loc * string Ploc.vala * expr * expr list Ploc.vala
| ExChr of loc * string Ploc.vala
| ExCoe of loc * expr * ctyp option * ctyp
| ExFlo of loc * string Ploc.vala
| ExFor of loc * patt * expr * expr * bool Ploc.vala * expr list Ploc.vala
| ExFun of loc * case_branch list Ploc.vala
| ExIfe of loc * expr * expr * expr
| ExInt of loc * string Ploc.vala * string
| ExLab of loc * (patt * expr option Ploc.vala) list Ploc.vala
| ExLaz of loc * expr
| ExLet of loc * bool Ploc.vala * (patt * expr * attributes) list Ploc.vala * expr
| ExLEx of loc * string Ploc.vala * ctyp list Ploc.vala * expr * attributes
| ExLid of loc * string Ploc.vala
| ExLmd of loc * string Ploc.vala option Ploc.vala * module_expr * expr
| ExLop of loc * bool Ploc.vala * module_expr * expr
| ExMat of loc * expr * case_branch list Ploc.vala
| ExNew of loc * longid_lident Ploc.vala
| ExObj of loc * patt option Ploc.vala * class_str_item list Ploc.vala
| ExOlb of loc * patt * expr option Ploc.vala
| ExOvr of loc * (string * expr) list Ploc.vala
| ExPck of loc * module_expr * module_type option
| ExRec of loc * (patt * expr) list Ploc.vala * expr option
| ExSeq of loc * expr list Ploc.vala
| ExSnd of loc * expr * string Ploc.vala
| ExSte of loc * string Ploc.vala * expr * expr list Ploc.vala
| ExStr of loc * string Ploc.vala
| ExTry of loc * expr * case_branch list Ploc.vala
| ExTup of loc * expr list Ploc.vala
| ExTyc of loc * expr * ctyp
| ExUid of loc * string Ploc.vala
| ExVrn of loc * string Ploc.vala
| ExWhi of loc * expr * expr list Ploc.vala
| ExXtr of loc * string * expr Ploc.vala option
| ExAtt of loc * expr * attribute
| ExExten of loc * attribute
| ExUnr of loc
and case_branch = patt * expr option Ploc.vala * expr
and module_type =
| MtLong of loc * longid
| MtLongLid of loc * longid * string Ploc.vala
| MtLid of loc * string Ploc.vala
| MtFun of loc * (string Ploc.vala option Ploc.vala * module_type) option Ploc.vala * module_type
| MtQuo of loc * string Ploc.vala
| MtSig of loc * sig_item list Ploc.vala
| MtTyo of loc * module_expr
| MtWit of loc * module_type * with_constr list Ploc.vala
| MtXtr of loc * string * module_type Ploc.vala option
| MtAtt of loc * module_type * attribute
| MtExten of loc * attribute
and functor_parameter = (string Ploc.vala option Ploc.vala * module_type) option
and sig_item =
| SgCls of loc * class_type class_infos list Ploc.vala
| SgClt of loc * class_type class_infos list Ploc.vala
| SgDcl of loc * sig_item list Ploc.vala
| SgDir of loc * string Ploc.vala * expr option Ploc.vala
| SgExc of loc * generic_constructor * attributes
| SgExt of loc * string Ploc.vala * ctyp * string list Ploc.vala * attributes
| SgInc of loc * module_type * attributes
| SgMod of loc * bool Ploc.vala * (string Ploc.vala option Ploc.vala * module_type * attributes) list Ploc.vala
| SgMty of loc * string Ploc.vala * module_type * attributes
| SgMtyAlias of loc * string Ploc.vala * longid Ploc.vala * attributes
| SgModSubst of loc * string Ploc.vala * longid * attributes
| SgOpn of loc * longid * attributes
| SgTyp of loc * bool Ploc.vala * type_decl list Ploc.vala
| SgTypExten of loc * type_extension
| SgUse of loc * string Ploc.vala * (sig_item * loc) list Ploc.vala
| SgVal of loc * string Ploc.vala * ctyp * attributes
| SgXtr of loc * string * sig_item Ploc.vala option
| SgFlAtt of loc * attribute
| SgExten of loc * attribute * attributes
and with_constr =
| WcMod of loc * longid Ploc.vala * module_expr
| WcMos of loc * longid Ploc.vala * module_expr
| WcTyp of loc * longid_lident Ploc.vala * type_var list Ploc.vala * bool Ploc.vala * ctyp
| WcTys of loc * longid_lident Ploc.vala * type_var list Ploc.vala * ctyp
and module_expr =
| MeAcc of loc * module_expr * module_expr
| MeApp of loc * module_expr * module_expr
| MeFun of loc * (string Ploc.vala option Ploc.vala * module_type) option Ploc.vala * module_expr
| MeStr of loc * str_item list Ploc.vala
| MeTyc of loc * module_expr * module_type
| MeUid of loc * string Ploc.vala
| MeUnp of loc * expr * module_type option * module_type option
| MeXtr of loc * string * module_expr Ploc.vala option
| MeAtt of loc * module_expr * attribute
| MeExten of loc * attribute
and str_item =
| StCls of loc * class_expr class_infos list Ploc.vala
| StClt of loc * class_type class_infos list Ploc.vala
| StDcl of loc * str_item list Ploc.vala
| StDir of loc * string Ploc.vala * expr option Ploc.vala
| StExc of loc * extension_constructor Ploc.vala * attributes
| StExp of loc * expr * attributes
| StExt of loc * string Ploc.vala * ctyp * string list Ploc.vala * attributes
| StInc of loc * module_expr * attributes
| StMod of loc * bool Ploc.vala * (string Ploc.vala option Ploc.vala * module_expr * attributes) list Ploc.vala
| StMty of loc * string Ploc.vala * module_type * attributes
| StOpn of loc * bool Ploc.vala * module_expr * attributes
| StTyp of loc * bool Ploc.vala * type_decl list Ploc.vala
| StTypExten of loc * type_extension
| StUse of loc * string Ploc.vala * (str_item * loc) list Ploc.vala
| StVal of loc * bool Ploc.vala * (patt * expr * attributes) list Ploc.vala
| StXtr of loc * string * str_item Ploc.vala option
| StFlAtt of loc * attribute
| StExten of loc * attribute * attributes
and type_decl = {
tdIsDecl : bool Ploc.vala;
tdNam : (loc * string Ploc.vala) Ploc.vala;
tdPrm : type_var list Ploc.vala;
tdPrv : bool Ploc.vala;
tdDef : ctyp;
tdCon : (ctyp * ctyp) list Ploc.vala;
tdAttributes : attributes;
}
and generic_constructor = loc * string Ploc.vala * ctyp list Ploc.vala * ctyp option Ploc.vala * attributes
and extension_constructor =
| EcTuple of loc * generic_constructor
| EcRebind of loc * string Ploc.vala * longid Ploc.vala * attributes
and type_extension = {
teNam : longid_lident Ploc.vala;
tePrm : type_var list Ploc.vala;
tePrv : bool Ploc.vala;
teECs : extension_constructor list Ploc.vala;
teAttributes : attributes;
}
and class_type =
| CtLongLid of loc * longid * string Ploc.vala
| CtLid of loc * string Ploc.vala
| CtLop of loc * bool Ploc.vala * longid * class_type
| CtCon of loc * class_type * ctyp list Ploc.vala
| CtFun of loc * ctyp * class_type
| CtSig of loc * ctyp option Ploc.vala * class_sig_item list Ploc.vala
| CtXtr of loc * string * class_type Ploc.vala option
| CtAtt of loc * class_type * attribute
| CtExten of loc * attribute
and class_sig_item =
| CgCtr of loc * ctyp * ctyp * attributes
| CgDcl of loc * class_sig_item list Ploc.vala
| CgInh of loc * class_type * attributes
| CgMth of loc * bool Ploc.vala * string Ploc.vala * ctyp * attributes
| CgVal of loc * bool Ploc.vala * bool Ploc.vala * string Ploc.vala * ctyp * attributes
| CgVir of loc * bool Ploc.vala * string Ploc.vala * ctyp * attributes
| CgFlAtt of loc * attribute
| CgExten of loc * attribute
and class_expr =
| CeApp of loc * class_expr * expr
| CeCon of loc * longid_lident Ploc.vala * ctyp list Ploc.vala
| CeFun of loc * patt * class_expr
| CeLet of loc * bool Ploc.vala * (patt * expr * attributes) list Ploc.vala * class_expr
| CeLop of loc * bool Ploc.vala * longid * class_expr
| CeStr of loc * patt option Ploc.vala * class_str_item list Ploc.vala
| CeTyc of loc * class_expr * class_type
| CeXtr of loc * string * class_expr Ploc.vala option
| CeAtt of loc * class_expr * attribute
| CeExten of loc * attribute
and class_str_item =
| CrCtr of loc * ctyp * ctyp * attributes
| CrDcl of loc * class_str_item list Ploc.vala
| CrInh of loc * bool Ploc.vala * class_expr * string option Ploc.vala * attributes
| CrIni of loc * expr * attributes
| CrMth of loc * bool Ploc.vala * bool Ploc.vala * string Ploc.vala * ctyp option Ploc.vala * expr * attributes
| CrVal of loc * bool Ploc.vala * bool Ploc.vala * string Ploc.vala * expr * attributes
| CrVav of loc * bool Ploc.vala * string Ploc.vala * ctyp * attributes
| CrVir of loc * bool Ploc.vala * string Ploc.vala * ctyp * attributes
| CrFlAtt of loc * attribute
| CrExten of loc * attribute
and longid_lident = longid Ploc.vala option * string Ploc.vala
and payload =
| StAttr of loc * str_item list Ploc.vala
| SiAttr of loc * sig_item list Ploc.vala
| TyAttr of loc * ctyp Ploc.vala
| PaAttr of loc * patt Ploc.vala * expr Ploc.vala option
and attribute_body = (loc * string) Ploc.vala * payload
and attribute = attribute_body Ploc.vala
and attributes_no_anti = attribute list
and attributes = attributes_no_anti Ploc.vala
val loc_of_longid : longid -> loc
val loc_of_ctyp : ctyp -> loc
val loc_of_patt : patt -> loc
val loc_of_expr : expr -> loc
val loc_of_module_type : module_type -> loc
val loc_of_module_expr : module_expr -> loc
val loc_of_sig_item : sig_item -> loc
val loc_of_str_item : str_item -> loc
val loc_of_with_constr : with_constr -> loc
val loc_of_extension_constructor : extension_constructor -> loc
val loc_of_constructor : generic_constructor -> loc
val loc_of_class_type : class_type -> loc
val loc_of_class_sig_item : class_sig_item -> loc
val loc_of_class_expr : class_expr -> loc
val loc_of_class_str_item : class_str_item -> loc