Syncom.Plicity
Annotations for implicit or explicit parameters.
The type of annotation for implicit or explicit parameters.
A parameter is implicit if
(g : ctx)
in the external syntax, orA parameter is explicit if it was specified by the user as {g : ctx}
in the external syntax.
val implicit : t
implicit
is Implicit
.
val explicit : t
explicit
is Explicit
.
max p1 p2
is Explicit
if at least one of p1
and p2
is Explicit
. Otherwise, Implicit
is returned.
val is_explicit : t -> bool
is_explicit p
is true
if and only if p
is Explicit
.
val is_implicit : t -> bool
is_implicit p
is true
if and only if p
is Implicit
.
include Support.Eq.EQ with type t := t
equal a b
is true
if and only if a
and b
are equal. This should satisfy the following properties:
equal a a = true
equal a b
is equivalent to equal b a
equal a b = true
and equal b c = true
, then equal a c = true