Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
val error : ?loc:Ast.Loc.t -> string -> 'a
A regular error (fatal)
val anomaly : ?loc:Ast.Loc.t -> string -> 'a
An invariant is broken, i.e. a bug
val type_error : ?loc:Ast.Loc.t -> string -> 'a
A type error (in principle ruled out by elpi-checker.elpi
)
val warn : ?loc:Ast.Loc.t -> string -> unit
A non fatal warning
link between OCaml and LP lists. Note that 1,2|X
is not a valid * OCaml list!
val get_assignment : FlexibleData.Elpi.t -> Data.term option
The body of an assignment, if any (LOW LEVEL). * Use look
and forget about this API since the term you get * needs to be moved and/or reduced, and you have no API for this.
val clause_of_term :
?name:string ->
?graft:([ `After | `Before ] * string) ->
depth:int ->
Ast.Loc.t ->
Data.term ->
Ast.program
Hackish, in particular the output should be a compiled program
val map_acc_embed :
(State.t -> 'a -> State.t * Data.term * Conversion.extra_goals) ->
State.t ->
'a list ->
State.t * Data.term list * Conversion.extra_goals