typedargs/metadata.py
def convert_argument(self, arg_name, arg_value):
        """Given a parameter with type information, convert and validate it.

        Args:
            arg_name (str): The name of the argument to convert and validate
            arg_value (object): The value to convert and validate

        Returns:
            object: The converted value.
        """

        self._ensure_loaded()

        type_name = self.param_type(arg_name)
        if type_name is None:
            return arg_value

        val = typeinfo.type_system.convert_to_type(arg_value, type_name)

        validators = self.annotated_params[arg_name].validators
        if len(validators) == 0:
            return val

        type_obj = typeinfo.type_system.get_type(type_name)

        # Run all of the validators that were defined for this argument.
        # If the validation fails, they will raise an exception that we convert to
        # an instance of ValidationError
        try:
            for validator_name, extra_args in validators:
                if not hasattr(type_obj, validator_name):
                    raise ValidationError("Could not find validator specified for argument", argument=arg_name, validator_name=validator_name, type=str(type_obj), method=dir(type_obj))

                validator = getattr(type_obj, validator_name)
                validator(val, *extra_args)
        except (ValueError, TypeError) as exc:
            raise ValidationError(exc.args[0], argument=arg_name, arg_value=val)

        return val
def convert_argument(self, arg_name, arg_value):
        self._ensure_loaded()

        type_name = self.param_type(arg_name)
        if type_name is None:
            return arg_value

        val = typeinfo.type_system.convert_to_type(arg_value, type_name)

        validators = self.annotated_params[arg_name].validators
        if len(validators) == 0:
            return val

        type_obj = typeinfo.type_system.get_type(type_name)

        # Run all of the validators that were defined for this argument.
        # If the validation fails, they will raise an exception that we convert to
        # an instance of ValidationError
        try:
            for validator_name, extra_args in validators:
                if not hasattr(type_obj, validator_name):
                    raise ValidationError("Could not find validator specified for argument", argument=arg_name, validator_name=validator_name, type=str(type_obj), method=dir(type_obj))

                validator = getattr(type_obj, validator_name)
                validator(val, *extra_args)
        except (ValueError, TypeError) as exc:
            raise ValidationError(exc.args[0], argument=arg_name, arg_value=val)

        return val
def convert_argument ( self , arg_name , arg_value ) : self . _ensure_loaded ( ) type_name = self . param_type ( arg_name ) if type_name is None : return arg_value val = typeinfo . type_system . convert_to_type ( arg_value , type_name ) validators = self . annotated_params [ arg_name ] . validators if len ( validators ) == 0 : return val type_obj = typeinfo . type_system . get_type ( type_name ) # Run all of the validators that were defined for this argument. # If the validation fails, they will raise an exception that we convert to # an instance of ValidationError try : for validator_name , extra_args in validators : if not hasattr ( type_obj , validator_name ) : raise ValidationError ( "Could not find validator specified for argument" , argument = arg_name , validator_name = validator_name , type = str ( type_obj ) , method = dir ( type_obj ) ) validator = getattr ( type_obj , validator_name ) validator ( val , * extra_args ) except ( ValueError , TypeError ) as exc : raise ValidationError ( exc . args [ 0 ] , argument = arg_name , arg_value = val ) return val
Given a parameter with type information, convert and validate it.

        Args:
            arg_name (str): The name of the argument to convert and validate
            arg_value (object): The value to convert and validate

        Returns:
            object: The converted value.
Given a parameter with type information convert and validate it .