Files
mercury/trial/special_pred.int
1997-12-23 05:02:38 +00:00

22 lines
1.8 KiB
Plaintext

:- module special_pred.
:- interface.
:- import_module list, map, prog_data, hlds_data, hlds_pred.
:- type (special_pred:special_pred_map) == (map:map((special_pred:special_pred), (hlds_pred:pred_id))).
:- type (special_pred:special_pred) == (std_util:pair((special_pred:special_pred_id), (hlds_data:type_id))).
:- type (special_pred:special_pred_id)
---> special_pred:unify
; special_pred:index
; special_pred:compare.
:- pred special_pred:special_pred_info((special_pred:special_pred_id), (prog_data:(type)), string, (list:list((prog_data:(type)))), (list:list((prog_data:(mode)))), (hlds_data:determinism)).
:- mode special_pred:special_pred_info(mercury_builtin:in, mercury_builtin:in, mercury_builtin:out, mercury_builtin:out, mercury_builtin:out, mercury_builtin:out) is det.
:- pred special_pred:special_pred_name_arity((special_pred:special_pred_id), string, string, int).
:- mode special_pred:special_pred_name_arity(mercury_builtin:in, mercury_builtin:out, mercury_builtin:out, mercury_builtin:out) is det.
:- mode special_pred:special_pred_name_arity(mercury_builtin:out, mercury_builtin:in, mercury_builtin:out, mercury_builtin:in) is semidet.
:- mode special_pred:special_pred_name_arity(mercury_builtin:out, mercury_builtin:out, mercury_builtin:in, mercury_builtin:in) is semidet.
:- pred special_pred:special_pred_mode_num((special_pred:special_pred_id), int).
:- mode special_pred:special_pred_mode_num(mercury_builtin:in, mercury_builtin:out) is det.
:- pred special_pred:special_pred_list((list:list((special_pred:special_pred_id)))).
:- mode special_pred:special_pred_list(mercury_builtin:out) is det.
:- pred special_pred:special_pred_get_type(string, (list:list(Type)), Type).
:- mode special_pred:special_pred_get_type(mercury_builtin:in, mercury_builtin:in, mercury_builtin:out) is semidet.