2012-11-08 4 views

답변

9

물론 가능합니다.

사용 info level 명령을

proc my_proc { some_arg } { 
    puts "entering proc [lindex [info level 0] 0]" 
} 

당신은 당신이 또 다른 방법은 다른 정보와 사전을 제공 info frame을 사용하고 proc 키를 읽을 수

entering proc my_proc 

원하는 것을 정확하게 얻을 :

proc my_proc { some_arg } { 
    puts "entering proc [dict get [info frame 0] proc]" 
} 

이번에는 정규화 된 proc 이름은

entering proc ::my_proc 
+3

입니다. 왜냐하면'info level 0'은 현재 proc의 이름 **과 인자 **를 가진리스트를 반환하기 때문에'[lindex [info level 0] 0]'이어야합니다. – potrzebie

+0

네 말이 맞아, 나는 그것을 즉시 바꿀거야. –

+2

'info level 0'은 그것이 무엇인지에 대한 정보를 얻습니다.'info frame 0'은 당신이 _is_에 관한 정보를 얻습니다. 이 두 가지는 대개 밀접한 관계가 있지만 항상 그렇지는 않습니다 ... –