Changeset 13314 for lang/ruby/misc/yhara/yhara.rb
- Timestamp:
- 06/06/08 02:05:18 (5 years ago)
- Files:
-
- 1 modified
-
lang/ruby/misc/yhara/yhara.rb (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
lang/ruby/misc/yhara/yhara.rb
r13313 r13314 1 1 class << (Alex = Class.new) 2 %w[_ ____]. each {|word| define_method(word) { Yhara.new(self).send(word) } }2 %w[_ ____].map {|w| define_method(w) { Yhara.new(self).send(w) } } 3 3 end 4 4 5 5 class Yhara 6 6 def initialize(who) 7 @who = who 8 @queue = [] 7 @who = who; @queue = [] 9 8 end 10 9 11 %w[y hara].each do |word| 12 ['', '?', '!'].each do |suffix| 13 define_method('_' * word.size + suffix) { 14 @queue << word 15 self 16 } 10 %w[y hara].map do |w| 11 ['', '?', '!'].map do |s| 12 define_method('_' * w.size + s) { @queue << w; self } 17 13 end 18 14 end 19 15 20 16 def to_s 21 # TODO: use @who 22 system 'say', @queue.join(' ') 17 tmp = @queue.join(' ') 18 system 'say', tmp 19 @queue = [] 20 "#{@who}: #{tmp}" 23 21 end 24 22 alias inspect to_s … … 27 25 if $0 == __FILE__ 28 26 code = 'Alex.____._._.____?' 29 puts code 30 eval code 27 eval "p #{code}" 31 28 end
![(please configure the [header_logo] section in trac.ini)](/share/chrome/site/your_project_logo.png)