in cfn_policy_validator/parsers/utils/node_evaluator.py [0:0]
def __init__(self, template, account_config, parameter_values):
resources = template['Resources']
parameters = template.get('Parameters', {})
mappings = template.get('Mappings', {})
arn_generator = ArnGenerator(account_config)
self.dynamic_reference_evaluator = DynamicReferenceEvaluator(account_config.region)
self.no_value_evaluator = AwsNoValueEvaluator()
ref_evaluator = RefEvaluator(resources, arn_generator, parameters, parameter_values, account_config, self)
get_att_evaluator = GetAttEvaluator(resources, arn_generator, self, account_config.region)
self.evaluators = {
'Ref': ref_evaluator,
'Fn::GetAtt': get_att_evaluator,
'Fn::Sub': SubEvaluator(ref_evaluator, get_att_evaluator, self),
'Fn::ImportValue': ImportValueEvaluator(self, account_config.region),
'Fn::Split': SplitEvaluator(self),
'Fn::Join': JoinEvaluator(self),
'Fn::Select': SelectEvaluator(self),
'Fn::FindInMap': FindInMapEvaluator(mappings, self)
}