Syncom.PlicityAnnotations 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 : timplicit is Implicit.
val explicit : texplicit 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 -> boolis_explicit p is true if and only if p is Explicit.
val is_implicit : t -> boolis_implicit p is true if and only if p is Implicit.
include Support.Eq.EQ with type t := tequal a b is true if and only if a and b are equal. This should satisfy the following properties:
equal a a = trueequal a b is equivalent to equal b aequal a b = true and equal b c = true, then equal a c = true