Skip to content

Instantly share code, notes, and snippets.

@rummelonp
Created January 19, 2014 15:42
Show Gist options
  • Save rummelonp/8506550 to your computer and use it in GitHub Desktop.
Save rummelonp/8506550 to your computer and use it in GitHub Desktop.
# coding: utf-8
module Nyanrize
refine String do
def to_s
"にゃ〜ん!"
end
end
end
class Nyan
using Nyanrize
def nyan
"nyan".to_s
end
def context
Proc.new { "nyan".to_s }
end
def eval(&block)
instance_eval &block
end
end
nyan = Nyan.new
puts "nyan".to_s
#=> nyan
puts nyan.nyan
#=> にゃ〜ん!
puts nyan.context.()
#=> にゃ〜ん!
puts nyan.eval { "nyan".to_s }
#=> nyan
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment