module AWS::Core::LazyErrorClasses
def self.extended base
- Private: -
def self.extended base unless base.const_defined?(:GRAMMAR) base.const_set(:GRAMMAR, BASE_ERROR_GRAMMAR) end mutex = Mutex.new MetaUtils.extend_method(base, :const_missing_mutex) { mutex } end
def const_missing constant
-
(nil)
-
Parameters:
-
constant
(String, Symbol
) --
def const_missing constant const_missing_mutex.synchronize do const_set(constant, Class.new(Errors::Base) { extend LazyErrorClasses }) end end
def error_class code
-
(Class)
- Returns the error class defiend by the error code.
Parameters:
-
code
(String
) -- An AWS error code.
def error_class code module_eval("#{self}::#{code.gsub('.Range','Range').gsub(".","::")}") end