def _get_formatter(value, **context):
    """
    Invokes settings.get from the annotation in value.

    value can be one of the following:

    @get KEY
    @get KEY @int
    @get KEY default_value
    @get KEY @int default_value

    @marker KEY_TO_LOOKUP @OPTIONAL_CAST OPTIONAL_DEFAULT_VALUE

    key group will match the key
    cast group will match anything provided after @
    the default group will match anything between single or double quotes
    """
    pattern = re.compile(
        r"(?P<key>\w+(?:\.\w+)?)\s*"
        r"(?:(?P<cast>@\w+)\s*)?"
        r'(?P<quote>["\']?)'
        r'\s*(?P<default>[^"\']*)\s*(?P=quote)?'
    )
    if match := pattern.match(value.strip()):
        data = match.groupdict()
        key = data["key"]
        default = data["default"]
        cast = data["cast"]

        params = {"key": key}
        if default:
            params["default"] = default
        if cast:
            params["cast"] = cast

        if not default and key not in context["this"]:
            raise DynaconfParseError(
                f"Key {key} not found in settings and no default value provided."
            )
        return context["this"].get(**params)
    else:
        raise DynaconfFormatError(f"Error parsing {value} malformed syntax.")

    Invokes settings.get from the annotation in value.

    value can be one of the following:

    @get KEY
    @get KEY @int
    @get KEY default_value
    @get KEY @int default_value

    @marker KEY_TO_LOOKUP @OPTIONAL_CAST OPTIONAL_DEFAULT_VALUE

    key group will match the key
    cast group will match anything provided after @
    the default group will match anything between single or double quotes
    
dynaconf/utils/parse_conf.py