Class: Memorium::Memo

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

Defined Under Namespace

Classes: Eager, Pending, Template

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(klass, method_name, reader: nil, writer: nil) ⇒ Memo

Returns a new instance of Memo.



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

def initialize(klass, method_name, reader: nil, writer: nil)
  @klass = klass
  @method_name = method_name
  @reader_level = reader
  @writer_level = writer
end

Instance Attribute Details

#klassObject (readonly)

Returns the value of attribute klass.



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

def klass
  @klass
end

#method_nameObject (readonly)

Returns the value of attribute method_name.



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

def method_name
  @method_name
end

#reader_levelObject (readonly)

Returns the value of attribute reader_level.



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

def reader_level
  @reader_level
end

#writer_levelObject (readonly)

Returns the value of attribute writer_level.



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

def writer_level
  @writer_level
end

Instance Method Details

#applyObject



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

def apply
  create_alias
  create_methods

  apply_reader_access_level
  apply_writer_access_level
  apply_alias_access_level
end