Class: Ractor::Cache::Strategy::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/ractor/cache/strategy.rb

Direct Known Subclasses

Disable, Prebuild

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(instance_method) ⇒ Base

Returns a new instance of Base.



11
12
13
14
# File 'lib/ractor/cache/strategy.rb', line 11

def initialize(instance_method)
  @method_name = instance_method.name
  analyse_parameters(instance_method.parameters)
end

Instance Attribute Details

#method_nameObject (readonly)

Returns the value of attribute method_name.



9
10
11
# File 'lib/ractor/cache/strategy.rb', line 9

def method_name
  @method_name
end

#parametersObject (readonly)

Returns the value of attribute parameters.



9
10
11
# File 'lib/ractor/cache/strategy.rb', line 9

def parameters
  @parameters
end

Instance Method Details

#compile_store_initObject



16
17
18
19
# File 'lib/ractor/cache/strategy.rb', line 16

def compile_store_init
  init = @has_arguments ? "Hash.new { #{EMPTY_CACHE} }" : EMPTY_CACHE
  "@#{method_name} = #{init}"
end