File: whereami.sci

package info (click to toggle)
scilab 4.0-12
  • links: PTS
  • area: non-free
  • in suites: etch, etch-m68k
  • size: 100,640 kB
  • ctags: 57,333
  • sloc: ansic: 377,889; fortran: 242,862; xml: 179,819; tcl: 42,062; sh: 10,593; ml: 9,441; makefile: 4,377; cpp: 1,354; java: 621; csh: 260; yacc: 247; perl: 130; lex: 126; asm: 72; lisp: 30
file content (25 lines) | stat: -rw-r--r-- 657 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
function whereami()
// whereami - display calling tree 
//!
// Copyright INRIA
[linn,mac]=where()
nn=prod(size(linn))
lm=maxi(length(mac))
txt=[]    
for k=2:nn
  if mac(k)=='exec' then
    txt=[txt;
        part(mac(k-1),1:lm)+' called at line '+string(linn(k))+' of exec_file']
  elseif mac(k)=='execstr' then
    txt=[txt;
        part(mac(k-1),1:lm)+' called at line '+string(linn(k))+' of execstr instruction']
  elseif mac(k)=='pause' then
     txt=[txt;
        part(mac(k-1),1:lm)+' called under pause']
  else
    txt=[txt;
        part(mac(k-1),1:lm)+' called at line '+string(linn(k))+' of macro '+mac(k)]
  end
end
write(%io(2),txt)
endfunction