fsdoc: no-summary-found
fsdoc: no-comment-found
let ((expect_failure (errs:list int)):unit):()
When attached a top-level definition, the typechecker will succeed * if and only if checking the definition results in an error. The * error number list is actually OPTIONAL. If present, it will be * checked that the definition raises exactly those errors in the * specified multiplicity, but order does not matter.
let ((expect_lax_failure (errs:list int)):unit):()
When --lax is present, we the previous attribute since some definitions * only fail when verification is turned on. With this attribute, one can ensure * that a definition fails while lax-checking too. Same semantics as above, * but lax mode will be turned on for the definition.
let (tcdecltime:unit):()
Print the time it took to typecheck a top-level definition
let (assume_strictly_positive:unit):()
type t = ref (option t)
let (unifier_hint_injective:unit):()
t
marked with this attributet a1..an =?= t b1..bn
ai =?= bi
fori
, without trying to unfold the definition of t
.let ((strict_on_arguments (x:list int)):unit):()
f e0 e1 e2
is reduced by the normalizer by:If, according to the positional arguments [1;2],
if v1 and v2 have constant head symbols
(e.g., v1 = Cons _ _ _, and v2 = None _)
then `f` is unfolded to `e` and reduced as
e[v0/x0][v1/x1][v2/x2]
f
is not unfolded and the term is f e0 e1 e2
f v0 v1 v2
.let (erasable:unit):()
unit
.Ghost
effect, ensuring that computationally relevant