package links
Monadic IR
type scope = Var.Scope.t
val pp_scope :
Ppx_deriving_runtime.Format.formatter ->
scope ->
Ppx_deriving_runtime.unit
val show_scope : scope -> Ppx_deriving_runtime.string
type var = Var.var
val pp_var :
Ppx_deriving_runtime.Format.formatter ->
var ->
Ppx_deriving_runtime.unit
val show_var : var -> Ppx_deriving_runtime.string
val var_to_yojson : var -> Yojson.Safe.t
val var_of_yojson : Yojson.Safe.t -> var Ppx_deriving_yojson_runtime.error_or
type var_info = Var.var_info
val pp_var_info :
Ppx_deriving_runtime.Format.formatter ->
var_info ->
Ppx_deriving_runtime.unit
val show_var_info : var_info -> Ppx_deriving_runtime.string
type binder = Var.binder
val pp_binder :
Ppx_deriving_runtime.Format.formatter ->
binder ->
Ppx_deriving_runtime.unit
val show_binder : binder -> Ppx_deriving_runtime.string
type tyvar = CommonTypes.Quantifier.t
val pp_tyvar :
Ppx_deriving_runtime.Format.formatter ->
tyvar ->
Ppx_deriving_runtime.unit
val show_tyvar : tyvar -> Ppx_deriving_runtime.string
type tyarg = Types.type_arg
val pp_tyarg :
Ppx_deriving_runtime.Format.formatter ->
tyarg ->
Ppx_deriving_runtime.unit
val show_tyarg : tyarg -> Ppx_deriving_runtime.string
type name_set = Utility.stringset
val pp_name_set :
Ppx_deriving_runtime.Format.formatter ->
name_set ->
Ppx_deriving_runtime.unit
val show_name_set : name_set -> Ppx_deriving_runtime.string
type 'a name_map = 'a Utility.stringmap
val pp_name_map :
(Ppx_deriving_runtime.Format.formatter -> 'a -> Ppx_deriving_runtime.unit) ->
Ppx_deriving_runtime.Format.formatter ->
'a name_map ->
Ppx_deriving_runtime.unit
val show_name_map :
(Ppx_deriving_runtime.Format.formatter -> 'a -> Ppx_deriving_runtime.unit) ->
'a name_map ->
Ppx_deriving_runtime.string
type 'a var_map = 'a Utility.intmap
val pp_var_map :
(Ppx_deriving_runtime.Format.formatter -> 'a -> Ppx_deriving_runtime.unit) ->
Ppx_deriving_runtime.Format.formatter ->
'a var_map ->
Ppx_deriving_runtime.unit
val show_var_map :
(Ppx_deriving_runtime.Format.formatter -> 'a -> Ppx_deriving_runtime.unit) ->
'a var_map ->
Ppx_deriving_runtime.string
val pp_language :
Ppx_deriving_runtime.Format.formatter ->
language ->
Ppx_deriving_runtime.unit
val show_language : language -> Ppx_deriving_runtime.string
type location = CommonTypes.Location.t
val pp_location :
Ppx_deriving_runtime.Format.formatter ->
location ->
Ppx_deriving_runtime.unit
val show_location : location -> Ppx_deriving_runtime.string
type value =
| Constant of CommonTypes.Constant.t
| Variable of var
| Extend of value name_map * value option
| Project of CommonTypes.Name.t * value
| Erase of name_set * value
| Inject of CommonTypes.Name.t * value * Types.t
| TAbs of tyvar list * value
| TApp of value * tyarg list
| XmlNode of CommonTypes.Name.t * value name_map * value list
| ApplyPure of value * value list
| Closure of var * tyarg list * value
| Coerce of value * Types.t
and tail_computation =
| Return of value
| Apply of value * value list
| Special of special
| Case of value * (binder * computation) name_map * (binder * computation) option
| If of value * computation * computation
and binding =
| Let of binder * tyvar list * tail_computation
| Fun of fun_def
| Rec of fun_def list
| Alien of {
binder : binder;
language : CommonTypes.ForeignLanguage.t;
object_name : string;
}
| Module of string * binding list option
and special =
| Wrong of Types.t
| Database of value
| Lens of value * Links_core.Lens.Type.t
| LensSerial of {
lens : value;
columns : Links_core.Lens.Alias.Set.t;
typ : Links_core.Lens.Type.t;
}
| LensDrop of {
lens : value;
drop : string;
key : string;
default : value;
typ : Links_core.Lens.Type.t;
}
| LensSelect of {
lens : value;
predicate : lens_predicate;
typ : Links_core.Lens.Type.t;
}
| LensJoin of {
left : value;
right : value;
on : string list;
del_left : Lens.Phrase.t;
del_right : Lens.Phrase.t;
typ : Links_core.Lens.Type.t;
}
| LensCheck of value * Links_core.Lens.Type.t
| LensGet of value * Types.t
| LensPut of value * value * Types.t
| Table of value * value * value * Types.t * Types.t * Types.t
| Query of (value * value) option * CommonTypes.QueryPolicy.t * computation * Types.t
| InsertRows of value * value
| InsertReturning of value * value * value
| Update of binder * value * computation option * computation
| Delete of binder * value * computation option
| CallCC of value
| Select of CommonTypes.Name.t * value
| Choice of value * (binder * computation) name_map
| Handle of handler
| DoOperation of CommonTypes.Name.t * value list * Types.t
and computation = binding list * tail_computation
and effect_case = binder * binder * computation
and handler = {
ih_comp : computation;
ih_cases : effect_case name_map;
ih_return : binder * computation;
ih_depth : handler_depth;
}
val pp_value :
Ppx_deriving_runtime.Format.formatter ->
value ->
Ppx_deriving_runtime.unit
val show_value : value -> Ppx_deriving_runtime.string
val pp_tail_computation :
Ppx_deriving_runtime.Format.formatter ->
tail_computation ->
Ppx_deriving_runtime.unit
val show_tail_computation : tail_computation -> Ppx_deriving_runtime.string
val pp_fun_def :
Ppx_deriving_runtime.Format.formatter ->
fun_def ->
Ppx_deriving_runtime.unit
val show_fun_def : fun_def -> Ppx_deriving_runtime.string
val pp_binding :
Ppx_deriving_runtime.Format.formatter ->
binding ->
Ppx_deriving_runtime.unit
val show_binding : binding -> Ppx_deriving_runtime.string
val pp_special :
Ppx_deriving_runtime.Format.formatter ->
special ->
Ppx_deriving_runtime.unit
val show_special : special -> Ppx_deriving_runtime.string
val pp_computation :
Ppx_deriving_runtime.Format.formatter ->
computation ->
Ppx_deriving_runtime.unit
val show_computation : computation -> Ppx_deriving_runtime.string
val pp_effect_case :
Ppx_deriving_runtime.Format.formatter ->
effect_case ->
Ppx_deriving_runtime.unit
val show_effect_case : effect_case -> Ppx_deriving_runtime.string
val pp_handler :
Ppx_deriving_runtime.Format.formatter ->
handler ->
Ppx_deriving_runtime.unit
val show_handler : handler -> Ppx_deriving_runtime.string
val pp_handler_depth :
Ppx_deriving_runtime.Format.formatter ->
handler_depth ->
Ppx_deriving_runtime.unit
val show_handler_depth : handler_depth -> Ppx_deriving_runtime.string
val pp_lens_predicate :
Ppx_deriving_runtime.Format.formatter ->
lens_predicate ->
Ppx_deriving_runtime.unit
val show_lens_predicate : lens_predicate -> Ppx_deriving_runtime.string
val letm : ?tyvars:tyvar list -> (binder * tail_computation) -> binding
val unit : value
val unit_comp : computation
type program = computation
val pp_program :
Ppx_deriving_runtime.Format.formatter ->
program ->
Ppx_deriving_runtime.unit
val show_program : program -> Ppx_deriving_runtime.string
val is_atom : value -> bool
val with_bindings : binding list -> computation -> computation
val string_of_var : var -> string
val string_of_value : value -> string
val string_of_tail_computation : tail_computation -> string
val string_of_binding : binding -> string
val string_of_special : special -> string
val string_of_computation : computation -> string
val string_of_program : program -> string
type eval_fun_def =
var_info * (var list * computation) * Var.var option * location
val pp_eval_fun_def :
Ppx_deriving_runtime.Format.formatter ->
eval_fun_def ->
Ppx_deriving_runtime.unit
val show_eval_fun_def : eval_fun_def -> Ppx_deriving_runtime.string
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>