Class: RubyRack::Memory

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

Direct Known Subclasses

RAM, ROM

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(size) ⇒ Memory

Returns a new instance of Memory.



7
8
9
10
# File 'lib/RubyRack.rb', line 7

def initialize(size)
  @size = size
  @data = Array.new(size, 0)
end

Instance Attribute Details

#dataObject

Returns the value of attribute data.



5
6
7
# File 'lib/RubyRack.rb', line 5

def data
  @data
end

#sizeObject

Returns the value of attribute size.



5
6
7
# File 'lib/RubyRack.rb', line 5

def size
  @size
end

Instance Method Details

#read(address) ⇒ Object



12
13
14
15
16
17
18
# File 'lib/RubyRack.rb', line 12

def read(address)
  if address < @size
    @data[address]
  else
    raise "Address out of bounds"
  end
end