Class: BOO::Book

Inherits:
Object
  • Object
show all
Defined in:
lib/boo.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name, number) ⇒ Book

Returns a new instance of Book.



23
24
25
26
27
# File 'lib/boo.rb', line 23

def initialize(name, number)
  self.name = name
  self.number = number
  self.chapters = {}
end

Instance Attribute Details

#chaptersObject

Returns the value of attribute chapters.



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

def chapters
  @chapters
end

#nameObject

Returns the value of attribute name.



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

def name
  @name
end

#numberObject

Returns the value of attribute number.



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

def number
  @number
end

#testamentObject

Returns the value of attribute testament.



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

def testament
  @testament
end

Instance Method Details

#<<(chapter) ⇒ Object



31
32
33
# File 'lib/boo.rb', line 31

def << (chapter)
  self.chapters[chapter.number] = chapter
end

#[](number) ⇒ Object



28
29
30
# File 'lib/boo.rb', line 28

def [](number)
  self.chapters[number]
end

#inspectObject Also known as: to_s



34
35
36
# File 'lib/boo.rb', line 34

def inspect
  "#{self.number} - #{self.name} (#{self.chapters.length} chapters)."
end