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(library(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(false,File,Start),
   20   %set_how_virtualize_file(bodies,File,Start),
   21   asserta(baseKB:used_ain_syntax(prolog,File,Start,Ln,VZ,M,In, (:- (M:dyn_load(In,(mfl4(VZ,M,File,Ln),ax)))))).   22
   23/*
   24
   25:- multifile(term_expansion/4).
   26:- dynamic(term_expansion/4).
   27:- module_transparent(term_expansion/4).
   28term_expansion(MIn,Pos,Out,PosOut):- nonvar(Pos), nonvar(MIn),
   29   must((once(prolog_load_context(file,File);prolog_load_context(stream,File)),
   30   once(nb_current('$variable_names',VZ);VZ=[]),
   31   once(stream_position_data(line_count,Pos,Ln);(prolog_load_context(stream,Str),line_count(Str,Ln))),
   32   strip_module(MIn,M,In))),
   33   notrace(In \= (:- _)),
   34   is_ain_clause(M,In),
   35   show_failure(baseKB:used_ain_syntax(File,Start,Ln,VZ,M,In,Out)), % 
   36   show_failure(Ln>=Start),!,
   37   must(get_current_clause(MIn)),
   38   dmsg_pretty(Out), PosOut=Pos,!.
   39
   40*/