Sha256: f8bd92b38d0fbcc226009e583a4b150ef07f1ef29b93fa7b420c13944f3f89d0
Contents?: true
Size: 702 Bytes
Versions: 1
Compression:
Stored size: 702 Bytes
Contents
require 'i18n/tasks/scanners/files/caching_file_finder' module I18n::Tasks::Scanners::Files # Finds the files and provides their contents. # # @note This class is thread-safe. All methods are cached. # @since 0.9.0 class CachingFileFinderProvider def initialize @cache = {} @mutex = Mutex.new end # Initialize a {CachingFileFinder} or get one from cache based on the constructor arguments. # # @param (see FileFinder#initialize) # @return [CachingFileFinder] def get(**file_finder_args) @cache[file_finder_args] || @mutex.synchronize do @cache[file_finder_args] ||= CachingFileFinder.new(**file_finder_args) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
i18n-tasks-0.9.0.rc1 | lib/i18n/tasks/scanners/files/caching_file_finder_provider.rb |