Sha256: 7651a6922b6cd95122803b9812219ddbeed623e66f8c600ac0ac650a4194d99a
Contents?: true
Size: 1.3 KB
Versions: 34
Compression:
Stored size: 1.3 KB
Contents
module Picky module Backends class Memory def json *args JSON.new *args end # Memory-based index files dumped in the JSON format. # class JSON < Basic # Uses the extension "json". # def extension :json end # Loads the index hash from json format. # def load MultiJson.decode ::File.open(cache_path, 'r') # , symbolize_keys: true # SYMBOLS. end # Dumps the index internal backend in json format. # def dump internal create_directory cache_path dump_json internal end # Dump JSON into the cache file. # # TODO Add IO option: # MultiJson.encode(object, io: out_file) # def dump_json internal ::File.open(cache_path, 'w') do |out_file| # If using Yajl, this will stream write to out_file. # Note: But it fails on oj. # # MultiJson.dump internal, [out_file] out_file.write MultiJson.encode internal end end # A json file does not provide retrieve functionality. # def retrieve raise "Can't retrieve from JSON file. Use text file." end end end end end
Version data entries
34 entries across 34 versions & 1 rubygems