module CrazyPills
Constants
- THINGS_TO_CRAZY
- VERSION
Public Class Methods
aliased(*args)
click to toggle source
# File lib/crazy_pills.rb, line 23 def self.aliased(*args) @aliased ||= [] @aliased.concat(args) if args puts "Aliased #{args}" if ENV['DEBUG'] @aliased end
explain()
click to toggle source
# File lib/crazy_pills.rb, line 30 def self.explain made_nil.each do |nilled| puts <<-NIL Made #{nilled} just return nil NIL end aliased.each_slice(2) do |slice| puts <<-NIL Aliased #{slice.first} to #{slice.last} NIL end end
lets_get_crazy!(*classes)
click to toggle source
# File lib/crazy_pills.rb, line 44 def self.lets_get_crazy!(*classes) class_to_crazy = classes.flatten.sample method_to_crazy = class_to_crazy.instance_methods.sample if [true, false].sample self.made_nil("#{class_to_crazy}##{method_to_crazy}") class_to_crazy.class_eval do define_method(method_to_crazy) do nil end end else alias_to = class_to_crazy.instance_methods.sample self.aliased("#{class_to_crazy}##{method_to_crazy}", "#{class_to_crazy}##{alias_to}") class_to_crazy.class_eval do alias_method method_to_crazy, alias_to end end end
made_nil(name = nil)
click to toggle source
# File lib/crazy_pills.rb, line 67 def self.made_nil(name = nil) @made_nil ||= [] @made_nil << name if name puts "Nil-ify #{name}" if ENV['DEBUG'] @made_nil end
Public Instance Methods
unknown()
click to toggle source
Seriously, what are you doing requiring this gem? just don't
# File lib/crazy_pills.rb, line 18 warn <<-WARN