Class: Memorium::Memo::Pending

Inherits:
Object
  • Object
show all
Defined in:
lib/memorium/memo/pending.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(klass) ⇒ Pending

Returns a new instance of Pending.



5
6
7
8
# File 'lib/memorium/memo/pending.rb', line 5

def initialize(klass)
  @klass = klass
  @is_ready = false
end

Instance Attribute Details

#is_readyObject Also known as: ready?

Returns the value of attribute is_ready.



3
4
5
# File 'lib/memorium/memo/pending.rb', line 3

def is_ready
  @is_ready
end

#klassObject

Returns the value of attribute klass.



3
4
5
# File 'lib/memorium/memo/pending.rb', line 3

def klass
  @klass
end

#readerObject

Returns the value of attribute reader.



3
4
5
# File 'lib/memorium/memo/pending.rb', line 3

def reader
  @reader
end

#writerObject

Returns the value of attribute writer.



3
4
5
# File 'lib/memorium/memo/pending.rb', line 3

def writer
  @writer
end

Instance Method Details

#apply(name) ⇒ Object



24
25
26
27
28
# File 'lib/memorium/memo/pending.rb', line 24

def apply(name)
  memo = Memorium::Memo.new(klass, name, reader:, writer:)
  discard
  memo.apply
end

#discardObject



18
19
20
21
22
# File 'lib/memorium/memo/pending.rb', line 18

def discard
  self.is_ready = false
  self.reader   = nil
  self.writer   = nil
end

#setup(reader:, writer:) ⇒ Object



12
13
14
15
16
# File 'lib/memorium/memo/pending.rb', line 12

def setup(reader:, writer:)
  self.is_ready = true
  self.reader   = reader
  self.writer   = writer
end