1/* Part of LogicMOO Base Logicmoo Debug Tools
    2% ===================================================================
    3% File '$FILENAME.pl'
    4% Purpose: An Implementation in SWI-Prolog of certain debugging tools
    5% Maintainer: Douglas Miles
    6% Contact: $Author: dmiles $@users.sourceforge.net ;
    7% Version: '$FILENAME.pl' 1.0.0
    8% Revision: $Revision: 1.1 $
    9% Revised At:  $Date: 2002/07/11 21:57:28 $
   10% Licience: LGPL
   11% ===================================================================
   12*/
   13
   14:- use_module('./pfc_lib').   15
   16:- dynamic(baseKB:used_ain_syntax/8).   17:- prolog_load_context(source,File),stream_property(Source,file_name(File)),
   18   once(line_count(Source,Start);(stream_property(Source,position(Pos)),stream_position_data(line_count,Pos,Start))),
   19   set_how_virtualize_file(heads,File,Start),
   20   set_how_virtualize_file(bodies,File,Start),
   21   %set_how_virtualize_file(bodies,File,Start),
   22   asserta(baseKB:used_ain_syntax(pfc,File,Start,Ln,VZ,M,In, (:- (M:mpred_ain(In,(mfl4(VZ,M,File,Ln),ax)))))).   23
   24/*
   25
   26:- multifile(term_expansion/4).
   27:- dynamic(term_expansion/4).
   28:- module_transparent(term_expansion/4).
   29term_expansion(MIn,Pos,Out,PosOut):- nonvar(Pos), nonvar(MIn),
   30   must((once(prolog_load_context(file,File);prolog_load_context(stream,File)),
   31   once(nb_current('$variable_names',VZ);VZ=[]),
   32   once(stream_position_data(line_count,Pos,Ln);(prolog_load_context(stream,Str),line_count(Str,Ln))),
   33   strip_module(MIn,M,In))),
   34   notrace(In \= (:- _)),
   35   is_ain_clause(M,In),
   36   show_failure(baseKB:used_ain_syntax(File,Start,Ln,VZ,M,In,Out)), % 
   37   show_failure(Ln>=Start),!,
   38   must(get_current_clause(MIn)),
   39   dmsg_pretty(Out), PosOut=Pos,!.
   40
   41*/