退出 SWI Prolog 中的所有错误
Exiting on all errors in SWI Prolog
有没有办法让 SWI Prolog 在遇到任何语法或解析错误时退出?我正在编写测试并自动 运行 它们,如果我有语法错误,我并不总是注意到错误消息。
假设您指的是源文件编译错误,load_files/2
谓词缺少在第一个错误时停止的选项。一种可能的解决方案是定义 message_hook/3
谓词以在语法错误的情况下调用 abort/0
或 halt/1
。类似于:
:- multifile user:message_hook/3.
user:message_hook(syntax_error(Culprit), _, _) :-
% maybe print Culprit for some debugging information
abort.
有没有办法让 SWI Prolog 在遇到任何语法或解析错误时退出?我正在编写测试并自动 运行 它们,如果我有语法错误,我并不总是注意到错误消息。
假设您指的是源文件编译错误,load_files/2
谓词缺少在第一个错误时停止的选项。一种可能的解决方案是定义 message_hook/3
谓词以在语法错误的情况下调用 abort/0
或 halt/1
。类似于:
:- multifile user:message_hook/3.
user:message_hook(syntax_error(Culprit), _, _) :-
% maybe print Culprit for some debugging information
abort.