From 73ccc3396d65a097d3395798438576c4257f5234 Mon Sep 17 00:00:00 2001 From: elijah Date: Fri, 31 Oct 2014 00:00:04 -0700 Subject: allow json properties to be named 'key' --- lib/leap_cli/config/object.rb | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/lib/leap_cli/config/object.rb b/lib/leap_cli/config/object.rb index 489b1d2..45144bc 100644 --- a/lib/leap_cli/config/object.rb +++ b/lib/leap_cli/config/object.rb @@ -64,6 +64,11 @@ module LeapCli get(key) end + # Overrride some default methods in Hash that are likely to + # be used as attributes. + alias_method :hkey, :key + def key; get('key'); end + # # make hash addressable like an object (e.g. obj['name'] available as obj.name) # @@ -288,23 +293,23 @@ module LeapCli Util::log "offending string: #{value}", :indent => 1 Util::log "error message: no file '#{exc}'", :indent => 1 end + raise exc if LeapCli.log_level >= 2 end - raise exc if LeapCli.log_level >= 2 rescue AssertionFailed => exc Util.bail! do Util::log :failed, "assertion while evaluating node '#{self.name}'" Util::log 'assertion: %s' % exc.assertion, :indent => 1 Util::log "offending key: #{key}", :indent => 1 + raise exc if LeapCli.log_level >= 2 end - raise exc if LeapCli.log_level >= 2 rescue SyntaxError, StandardError => exc Util::bail! do Util::log :error, "while evaluating node '#{self.name}'" Util::log "offending key: #{key}", :indent => 1 Util::log "offending string: #{value}", :indent => 1 Util::log "error message: #{exc.inspect}", :indent => 1 + raise exc if LeapCli.log_level >= 2 end - raise exc if LeapCli.log_level >= 2 end private -- cgit v1.2.3