support must_be(var, ...)
This commit is contained in:
@@ -33,6 +33,10 @@ must_be(Type, Term) :-
|
|||||||
must_be_(Type, _) :-
|
must_be_(Type, _) :-
|
||||||
var(Type),
|
var(Type),
|
||||||
instantiation_error(Type).
|
instantiation_error(Type).
|
||||||
|
must_be_(var, Term) :-
|
||||||
|
( var(Term) -> true
|
||||||
|
; throw(error(uninstantiation_error, _))
|
||||||
|
).
|
||||||
must_be_(integer, Term) :- check_(integer, integer, Term).
|
must_be_(integer, Term) :- check_(integer, integer, Term).
|
||||||
must_be_(atom, Term) :- check_(atom, atom, Term).
|
must_be_(atom, Term) :- check_(atom, atom, Term).
|
||||||
must_be_(list, Term) :- check_(ilist, list, Term).
|
must_be_(list, Term) :- check_(ilist, list, Term).
|
||||||
@@ -52,6 +56,7 @@ type(type).
|
|||||||
type(integer).
|
type(integer).
|
||||||
type(atom).
|
type(atom).
|
||||||
type(list).
|
type(list).
|
||||||
|
type(var).
|
||||||
|
|
||||||
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
can_be(Type, Term)
|
can_be(Type, Term)
|
||||||
|
|||||||
Reference in New Issue
Block a user