From ab2fa1662f8a59a02e082251a8e14be64ca1c318 Mon Sep 17 00:00:00 2001 From: Josh Holtrop Date: Mon, 25 Feb 2019 21:22:54 -0500 Subject: [PATCH] Replace specialized Cache accessors with general #[]/#[]= methods. --- lib/rscons/application.rb | 12 ++++++------ lib/rscons/basic_environment.rb | 2 +- lib/rscons/cache.rb | 23 ++++++++++------------- lib/rscons/configure_op.rb | 4 ++-- lib/rscons/environment.rb | 4 ++-- 5 files changed, 21 insertions(+), 24 deletions(-) diff --git a/lib/rscons/application.rb b/lib/rscons/application.rb index e582178..905e22a 100644 --- a/lib/rscons/application.rb +++ b/lib/rscons/application.rb @@ -45,7 +45,7 @@ module Rscons @script = script case operation when "build" - unless Cache.instance.configuration_data["configured"] + unless Cache.instance["configuration_data"]["configured"] if @script.autoconf rv = configure(operation_options) if rv != 0 @@ -118,7 +118,7 @@ module Rscons # Exit code. def distclean cache = Cache.instance - build_dir = cache.configuration_data["build_dir"] + build_dir = cache["configuration_data"]["build_dir"] clean FileUtils.rm_rf(build_dir) cache.clear @@ -137,7 +137,7 @@ module Rscons options[:build_dir] ||= "build" options[:prefix] ||= "/usr/local" cache = Cache.instance - cache.configuration_data = {} + cache["configuration_data"] = {} if project_name = @script.project_name Ansi.write($stdout, "Configuring ", :cyan, project_name, :reset, "...\n") else @@ -153,9 +153,9 @@ module Rscons rv = 1 end co.close - cache.configuration_data["build_dir"] = options[:build_dir] - cache.configuration_data["prefix"] = options[:prefix] - cache.configuration_data["configured"] = rv == 0 + cache["configuration_data"]["build_dir"] = options[:build_dir] + cache["configuration_data"]["prefix"] = options[:prefix] + cache["configuration_data"]["configured"] = rv == 0 cache.write rv end diff --git a/lib/rscons/basic_environment.rb b/lib/rscons/basic_environment.rb index b30ec3c..2791673 100644 --- a/lib/rscons/basic_environment.rb +++ b/lib/rscons/basic_environment.rb @@ -193,7 +193,7 @@ module Rscons # Load all construction variables saved from the configure operation. def load_configuration_data!(options) - if vars = Cache.instance.configuration_data["vars"] + if vars = Cache.instance["configuration_data"]["vars"] if default_vars = vars["_default_"] apply_configuration_data!(default_vars) end diff --git a/lib/rscons/cache.rb b/lib/rscons/cache.rb index 05ba5d3..25a4d34 100644 --- a/lib/rscons/cache.rb +++ b/lib/rscons/cache.rb @@ -70,6 +70,16 @@ module Rscons initialize! end + # Access cache value. + def [](key) + @cache[key] + end + + # Assign cache value. + def []=(key, value) + @cache[key] = value + end + # Remove the cache file. # # @return [void] @@ -85,19 +95,6 @@ module Rscons @lookup_checksums = {} end - # Access configuration data. - def configuration_data - @cache["configuration_data"] - end - - # Set configuration data. - # - # @param value [Hash] - # Configuration data. - def configuration_data=(value) - @cache["configuration_data"] = value - end - # Write the cache to disk. # # @return [void] diff --git a/lib/rscons/configure_op.rb b/lib/rscons/configure_op.rb index 1bdc423..2ecccbf 100644 --- a/lib/rscons/configure_op.rb +++ b/lib/rscons/configure_op.rb @@ -367,8 +367,8 @@ module Rscons "_default_" end cache = Cache.instance - cache.configuration_data["vars"] ||= {} - cache.configuration_data["vars"][usename] ||= {} + cache["configuration_data"]["vars"] ||= {} + cache["configuration_data"]["vars"][usename] ||= {} end # Perform processing common to several configure checks. diff --git a/lib/rscons/environment.rb b/lib/rscons/environment.rb index 5910726..9e52670 100644 --- a/lib/rscons/environment.rb +++ b/lib/rscons/environment.rb @@ -90,7 +90,7 @@ module Rscons else :short end - @build_root = "#{Cache.instance.configuration_data["build_dir"]}/e.#{@id}" + @build_root = "#{Cache.instance["configuration_data"]["build_dir"]}/e.#{@id}" @n_threads = Rscons.application.n_threads if block_given? @@ -258,7 +258,7 @@ module Rscons # # @return [void] def process - unless Cache.instance.configuration_data["configured"] + unless Cache.instance["configuration_data"]["configured"] raise "Project must be configured before processing an Environment" end @process_failure = nil