2017-02-23 71 views
0

我想知道proc的調用行號。當文件從tclsh的 來源,我可以把我的PROCinfo frame vs Tcl_Eval

set infoFrame [info frame -1] 
set line [dict get [info frame -1] line] 

,這將得到我所需要的線。但是,當我從C程序讀取文件並調用Tcl_Eval信息框時,返回「type proc」而不是「type source」,並且行號相對於調用proc。

在Tcl_Eval指定我實際採購一個文件並使信息框像文件行爲來源之前,我可以做些什麼。

我認爲Tcl_EvalFile將解決問題,但由於文件已經在內存中,爲什麼要重新讀取它。 (我必須閱讀內存中的文件內容)

回答

1

對不起,但沒有。不幸的是,您需要訪問的內部API才能完成這項工作,但不幸的是,目前還沒有計劃公開任何內容以允許您改進它。寫入文件是目前最好的方法。

雖然如果你mount a VFS,寫入文件可能沒有什麼大不了的。