From dbff20343aeefaf3da3f4a04799e3400909bc337 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADtor=20Santos=20Costa?= Date: Wed, 16 Jul 2014 12:59:03 -0500 Subject: [PATCH] small fixes to listing --- pl/listing.yap | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/pl/listing.yap b/pl/listing.yap index 45df6e152..609a7fd0d 100644 --- a/pl/listing.yap +++ b/pl/listing.yap @@ -81,40 +81,45 @@ listing(Stream, [MV|MVs]) :- !, '$funcspec'(Name,_,_) :- '$do_error'(domain_error(predicate_spec,Name),listing(Name)). +'$list_clauses'(Stream, M, Pred) :- + '$flags'(Pred,M,Flags,Flags), + Flags /\ 0x48602000 =\= 0, + nl(Stream), + fail. '$list_clauses'(Stream, M, Pred) :- ( '$is_dynamic'(Pred, M) -> true ; '$is_log_updatable'(Pred, M) ), - functor( Pred, M, Ar ), + functor( Pred, N, Ar ), '$current_module'(Mod), ( M == Mod -> - format( Stream, '~n:- dynamic ~q/~d.~n', [N,Ar]) + format( Stream, ':- dynamic ~q/~d.~n', [N,Ar]) ; - format( Stream, '~n:- dynamic ~q:~q/~d.~n', [M,N,Ar]) + format( Stream, ':- dynamic ~q:~q/~d.~n', [M,N,Ar]) ), fail. '$list_clauses'(Stream, M, Pred) :- '$is_thread_local'(Pred, M), - functor( Pred, M, Ar ), + functor( Pred, N, Ar ), '$current_module'(Mod), ( M == Mod -> - format( Stream, '~n:- thread_local ~q/~d.~n', [N,Ar]) + format( Stream, ':- thread_local ~q/~d.~n', [N,Ar]) ; - format( Stream, '~n:- thread_local ~q:~q/~d.~n', [M,N,Ar]) + format( Stream, ':- thread_local ~q:~q/~d.~n', [M,N,Ar]) ), fail. '$list_clauses'(Stream, M, Pred) :- '$is_multifile'(Pred, M), - functor( Pred, M, Ar ), + functor( Pred, N, Ar ), '$current_module'(Mod), ( M == Mod -> - format( Stream, '~n:- multifile ~q/~d.~n', [N,Ar]) + format( Stream, ':- multifile ~q/~d.~n', [N,Ar]) ; - format( Stream, '~n:- multifile ~q:~q/~d.~n', [M,N,Ar]) + format( Stream, ':- multifile ~q:~q/~d.~n', [M,N,Ar]) ), fail. '$list_clauses'(Stream, M, Pred) :- @@ -125,16 +130,16 @@ listing(Stream, [MV|MVs]) :- !, ( M == Mod -> - format( Stream, '~n:- ~q.~n', [PredDef]) + format( Stream, ':- ~q.~n', [PredDef]) ; - format( Stream, '~n:- ~q:~q.~n', [M,PredDef]) + format( Stream, '~:- ~q:~q.~n', [M,PredDef]) ), fail. '$list_clauses'(Stream, M, Pred) :- nl( Stream ), fail. '$list_clauses'(Stream, M, Pred) :- - '$flags'(Pred,M,Flags,Flags), + '$flags'(Pred,M,Flags,Flags), % has to be dynamic, source, or log update. Flags /\ 0x08402000 =\= 0, '$clause'(Pred, M, Body, _),