Skip to content

Instantly share code, notes, and snippets.

@ianterrell
Forked from deathbob/gist:1102683
Created July 24, 2011 15:49
Show Gist options
  • Save ianterrell/1102751 to your computer and use it in GitHub Desktop.
Save ianterrell/1102751 to your computer and use it in GitHub Desktop.
Meta module madness
module Foo
def bar
@bar ||= self.snakes
end
end
class Baz
def self.snakes
[:cobra]
end
extend Foo
end
class Boom < Baz
@bar = [:copperhead]
end
class Bam < Baz
def self.snakes
[:mamba]
end
end
Baz.bar # [:cobra]
Boom.bar # [:copperhead]
Bam.bar # [:mamba]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment