1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
# frozen_string_literal: true
module Aws
module Endpoints
# @api private
class Reference
def initialize(ref:)
@ref = ref
end
attr_reader :ref
def resolve(parameters, assigns)
if parameters.class.singleton_class::PARAM_MAP.key?(@ref)
member_name = parameters.class.singleton_class::PARAM_MAP[@ref]
parameters[member_name]
elsif assigns.key?(@ref)
assigns[@ref]
else
raise ArgumentError,
"Reference #{@ref} is not a param or an assigned value."
end
end
end
end
end
|