4 le module ici propose la fonction ICI pour afficher
5 le fichier courant et le numéro de la ligne courante.
9 from developpeur import DEVELOPPEUR
13 def NULL( *l_args, **d_args ) : pass
18 developpeur.sortie.write( "import de "+__name__+" : $Id$" )
19 developpeur.sortie.write( "\n" )
28 La fonction ICI affiche sur la stderr, le nom du fichier qui l'appelle,
29 le numéro de la ligne ou elle est appelée et retourne ces deux informations.
36 N.B. : la fonction ICI n'est opérante que pour les développeurs
44 ###f=sys.exc_info()[2].tb_frame.f_back
47 ###filename=code.co_filename
50 trace=traceback.extract_stack()
52 indice = len(trace)-(2+offset)
53 if indice<0 : indice=0
56 assert( indice<len(trace) ),"valeur de offset INVALIDE : "+str(offset)+" taille de la table "+len(trace)
57 file_name, lineno, func_name, dummytxt = trace[ indice ]
59 assert( (indice>0) or (func_name=="?") )
60 if func_name=="?" : func_name = "main"
64 developpeur.sortie.write( file_name+':'+str(lineno)+': ('+str(funcname.FUNCNAME(func_name,file_name,lineno))+') : ' )
65 developpeur.sortie.flush()
67 return file_name,lineno