Class: Rigor::Cache::RbsSingletonDefinitions

Inherits:
Object
  • Object
show all
Defined in:
lib/rigor/cache/rbs_instance_definitions.rb

Overview

Singleton-side equivalent of RbsInstanceDefinitions. Caches the full ‘Hash<String, RBS::Definition>` for the singleton class of every RBS-known class.

Constant Summary collapse

PRODUCER_ID =
"rbs.singleton_definitions"

Class Method Summary collapse

Class Method Details

.fetch(loader:, store:) ⇒ Hash{String => RBS::Definition}

Parameters:

Returns:

  • (Hash{String => RBS::Definition})


60
61
62
63
64
65
# File 'lib/rigor/cache/rbs_instance_definitions.rb', line 60

def self.fetch(loader:, store:)
  descriptor = RbsDescriptor.build(loader)
  store.fetch_or_compute(producer_id: PRODUCER_ID, params: {}, descriptor: descriptor) do
    compute(loader)
  end
end