Class: Waiter::Menu

Inherits:
Object
  • Object
show all
Defined in:
lib/waiter/menu.rb,
lib/waiter/menu/drawer.rb,
lib/waiter/menu/builder.rb

Defined Under Namespace

Classes: Builder, Drawer

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options = {}) ⇒ Menu

Returns a new instance of Menu.



12
13
14
15
16
# File 'lib/waiter/menu.rb', line 12

def initialize(options = {})
  @menu_items = []
  @submenus = {}
  @options = options
end

Instance Attribute Details

#optionsObject

Returns the value of attribute options.



3
4
5
# File 'lib/waiter/menu.rb', line 3

def options
  @options
end

Returns the value of attribute submenus.



3
4
5
# File 'lib/waiter/menu.rb', line 3

def submenus
  @submenus
end

Class Method Details

.serve(options = {}) {|Builder.new(obj = self.new(options))| ... } ⇒ Object

Yields:



6
7
8
9
# File 'lib/waiter/menu.rb', line 6

def serve(options = {})
  yield Builder.new(obj = self.new(options))
  obj
end

Instance Method Details

#add(name, args = {}) ⇒ Object



18
19
20
# File 'lib/waiter/menu.rb', line 18

def add(name, args = {})
  @menu_items << [name, args]
end

#itemsObject



22
23
24
# File 'lib/waiter/menu.rb', line 22

def items
  @menu_items
end