Skip to content

Instantly share code, notes, and snippets.

@d3vkit
Created August 12, 2014 19:42
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save d3vkit/33b9e7c720ca11de8634 to your computer and use it in GitHub Desktop.
Save d3vkit/33b9e7c720ca11de8634 to your computer and use it in GitHub Desktop.
class Folder
include ClosedFolder, OpenFolder
def initialize(name)
@name = name
@folder_state = ClosedFolder.new
end
def pretty_name
@folder_state.pretty_name
end
def left_click
@folder_state = @folder_state.left_click
end
end
module ClosedFolder
def pretty_name
end
def left_click
# do work
OpenFolder.new #damn it we can't access this can we? Or does it work because it's included in the class?
end
end
module OpenFolder
def pretty_name
end
def left_click
# do work
ClosedFolder.new
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment