Module: Dump
- Defined in:
- lib/dump.rb
Overview
Quelques methodes utiles pour le debogage.
Remarque: pour utiliser ce module, il faut tout d'abord charger le fichier:
require 'dump'
Ensuite, on effectue des appels de la forme suivante:
Dump.dump( :symbol, binding[, chainePourContexte] )
Dump.inspect( :symbol, binding[, chainePourContexte] )
Class Method Summary collapse
-
.dump(sym, bndg, cl = nil) ⇒ void
Affiche la valeur associee a un symbole dans un environnement.
-
.inspect(sym, bndg, cl = nil) ⇒ void
Semblable a dump, mais utilise inspect au lieu de puts.
Class Method Details
.dump(sym, bndg, cl = nil) ⇒ void
This method returns an undefined value.
Affiche la valeur associee a un symbole dans un environnement. Utile pour deboger facilement au lieu de puts.
N'a aucun effet si $dump est faux (false ou nil).
34 35 36 37 38 39 40 41 42 43 |
# File 'lib/dump.rb', line 34 def dump( sym, bndg, cl = nil ) return unless $dump v = eval( sym.id2name, bndg ) if v.nil? puts "At #{Dump.contexte cl}::#{Dump.separateur cl}#{sym.id2name} = nil" else puts "At #{Dump.contexte cl}::#{Dump.separateur cl}#{sym.id2name} = '#{v}'" end end |
.inspect(sym, bndg, cl = nil) ⇒ void
This method returns an undefined value.
Semblable a dump, mais utilise inspect au lieu de puts.
50 51 52 53 54 |
# File 'lib/dump.rb', line 50 def inspect( sym, bndg, cl = nil ) return unless $dump puts "At #{Dump.contexte cl}::#{Dump.separateur cl}#{sym.id2name} = #{(eval sym.id2name, bndg).inspect}" end |