"""
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
SPDX-License-Identifier: MIT-0
"""
from cfnlint.rules import CloudFormationLintRule
from cfnlint.rules.common import alphanumeric_name


class Name(CloudFormationLintRule):
    """Check if Parameters are named correctly"""

    id = 'E2003'
    shortdesc = 'Parameters have appropriate names'
    description = 'Check if Parameters are properly named (A-Za-z0-9)'
    source_url = 'https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html#parameters-section-structure-requirements'
    tags = ['parameters']

    def match(self, cfn):
        return alphanumeric_name(cfn, 'Parameters')
