// GetAllAWSGreengrassResourceDefinitionVersionResources retrieves all AWSGreengrassResourceDefinitionVersion items from an AWS CloudFormation template
357809
func (t *Template) GetAllAWSGreengrassResourceDefinitionVersionResources() map[string]*resources.AWSGreengrassResourceDefinitionVersion {
	results := map[string]*resources.AWSGreengrassResourceDefinitionVersion{}
	for name, untyped := range t.Resources {
		switch resource := untyped.(type) {
		case *resources.AWSGreengrassResourceDefinitionVersion:
			results[name] = resource
		}
	}
	return results
}
500049
func (t *Template) GetAWSGreengrassFunctionDefinitionWithName(name string) (*resources.AWSGreengrassFunctionDefinition, error) {
	if untyped, ok := t.Resources[name]; ok {
		switch resource := untyped.(type) {
		case *resources.AWSGreengrassFunctionDefinition:
			return resource, nil
		}
	}
	return nil, fmt.Errorf("resource %q of type AWSGreengrassFunctionDefinition not found", name)
}
170625
func (t *Template) GetAllAWSGreengrassLoggerDefinitionResources() map[string]*resources.AWSGreengrassLoggerDefinition {
	results := map[string]*resources.AWSGreengrassLoggerDefinition{}
	for name, untyped := range t.Resources {
		switch resource := untyped.(type) {
		case *resources.AWSGreengrassLoggerDefinition:
			results[name] = resource
		}
	}
	return results
}
170166
func (t *Template) GetAllAWSServiceCatalogPortfolioProductAssociationResources() map[string]*resources.AWSServiceCatalogPortfolioProductAssociation {
	results := map[string]*resources.AWSServiceCatalogPortfolioProductAssociation{}
	for name, untyped := range t.Resources {
		switch resource := untyped.(type) {
		case *resources.AWSServiceCatalogPortfolioProductAssociation:
			results[name] = resource
		}
	}
	return results
}
1148715
func (t *Template) GetAllAWSEC2NatGatewayResources() map[string]*resources.AWSEC2NatGateway {
	results := map[string]*resources.AWSEC2NatGateway{}
	for name, untyped := range t.Resources {
		switch resource := untyped.(type) {
		case *resources.AWSEC2NatGateway:
			results[name] = resource
		}
	}
	return results
}
921698
func (t *Template) GetAWSGreengrassConnectorDefinitionWithName(name string) (*resources.AWSGreengrassConnectorDefinition, error) {
	if untyped, ok := t.Resources[name]; ok {
		switch resource := untyped.(type) {
		case *resources.AWSGreengrassConnectorDefinition:
			return resource, nil
		}
	}
	return nil, fmt.Errorf("resource %q of type AWSGreengrassConnectorDefinition not found", name)
}
762397
func (t *Template) GetAllAWSDLMLifecyclePolicyResources() map[string]*resources.AWSDLMLifecyclePolicy {
	results := map[string]*resources.AWSDLMLifecyclePolicy{}
	for name, untyped := range t.Resources {
		switch resource := untyped.(type) {
		case *resources.AWSDLMLifecyclePolicy:
			results[name] = resource
		}
	}
	return results
}
513409
func (t *Template) GetAllAWSElasticBeanstalkApplicationVersionResources() map[string]*resources.AWSElasticBeanstalkApplicationVersion {
	results := map[string]*resources.AWSElasticBeanstalkApplicationVersion{}
	for name, untyped := range t.Resources {
		switch resource := untyped.(type) {
		case *resources.AWSElasticBeanstalkApplicationVersion:
			results[name] = resource
		}
	}
	return results
}
79095
func (t *Template) GetAllAWSNeptuneDBInstanceResources() map[string]*resources.AWSNeptuneDBInstance {
	results := map[string]*resources.AWSNeptuneDBInstance{}
	for name, untyped := range t.Resources {
		switch resource := untyped.(type) {
		case *resources.AWSNeptuneDBInstance:
			results[name] = resource
		}
	}
	return results
}
131805
func (t *Template) GetAllAWSGreengrassLoggerDefinitionVersionResources() map[string]*resources.AWSGreengrassLoggerDefinitionVersion {
	results := map[string]*resources.AWSGreengrassLoggerDefinitionVersion{}
	for name, untyped := range t.Resources {
		switch resource := untyped.(type) {
		case *resources.AWSGreengrassLoggerDefinitionVersion:
			results[name] = resource
		}
	}
	return results
}
78731
func (t *Template) GetAllAWSAppMeshVirtualServiceResources() map[string]*resources.AWSAppMeshVirtualService {
	results := map[string]*resources.AWSAppMeshVirtualService{}
	for name, untyped := range t.Resources {
		switch resource := untyped.(type) {
		case *resources.AWSAppMeshVirtualService:
			results[name] = resource
		}
	}
	return results
}
962382
func (t *Template) GetAllAWSServiceDiscoveryInstanceResources() map[string]*resources.AWSServiceDiscoveryInstance {
	results := map[string]*resources.AWSServiceDiscoveryInstance{}
	for name, untyped := range t.Resources {
		switch resource := untyped.(type) {
		case *resources.AWSServiceDiscoveryInstance:
			results[name] = resource
		}
	}
	return results
}
486446
func (t *Template) GetAllAWSEMRInstanceGroupConfigResources() map[string]*resources.AWSEMRInstanceGroupConfig {
	results := map[string]*resources.AWSEMRInstanceGroupConfig{}
	for name, untyped := range t.Resources {
		switch resource := untyped.(type) {
		case *resources.AWSEMRInstanceGroupConfig:
			results[name] = resource
		}
	}
	return results
}
1257367
func (t *Template) GetAllAWSKinesisStreamConsumerResources() map[string]*resources.AWSKinesisStreamConsumer {
	results := map[string]*resources.AWSKinesisStreamConsumer{}
	for name, untyped := range t.Resources {
		switch resource := untyped.(type) {
		case *resources.AWSKinesisStreamConsumer:
			results[name] = resource
		}
	}
	return results
}
815078
func (t *Template) GetAllAWSCloudFormationMacroResources() map[string]*resources.AWSCloudFormationMacro {
	results := map[string]*resources.AWSCloudFormationMacro{}
	for name, untyped := range t.Resources {
		switch resource := untyped.(type) {
		case *resources.AWSCloudFormationMacro:
			results[name] = resource
		}
	}
	return results
}
969148
func (t *Template) GetAllAWSSSMResourceDataSyncResources() map[string]*resources.AWSSSMResourceDataSync {
	results := map[string]*resources.AWSSSMResourceDataSync{}
	for name, untyped := range t.Resources {
		switch resource := untyped.(type) {
		case *resources.AWSSSMResourceDataSync:
			results[name] = resource
		}
	}
	return results
}
700532
func (t *Template) GetAWSServiceCatalogCloudFormationProvisionedProductWithName(name string) (*resources.AWSServiceCatalogCloudFormationProvisionedProduct, error) {
	if untyped, ok := t.Resources[name]; ok {
		switch resource := untyped.(type) {
		case *resources.AWSServiceCatalogCloudFormationProvisionedProduct:
			return resource, nil
		}
	}
	return nil, fmt.Errorf("resource %q of type AWSServiceCatalogCloudFormationProvisionedProduct not found", name)
}