def val_filepath(cls,
                     fullfile_string=None,
                     path_string=None,
                     file_string=None):
        """
        Get and parse a full file path string

        Arguments
        ---------
        fullfile_string: str
            string representation of full file path and name
        path_string: str
            string representation of file path
        file_string: str
            string representation of file name

        Returns
        --------
        path: Path object | boolean
            validated file string Path
        """
        if fullfile_string:
            file_string = Path(fullfile_string).name
            path_string = Path(fullfile_string).parents[0]
        elif not all([path_string, file_string]):
            return False
        logger.debug('Validating filename')
        file_string = FileValidation.val_file(file_string)
        logger.debug('Validating filepath')
        path_string = FileValidation.val_path(path_string)
        if False in [path_string, file_string, fullfile_string]:
            return False
        return Path.joinpath(Path(path_string), file_string)

        Get and parse a full file path string

        Arguments
        ---------
        fullfile_string: str
            string representation of full file path and name
        path_string: str
            string representation of file path
        file_string: str
            string representation of file name

        Returns
        --------
        path: Path object | boolean
            validated file string Path
        
crackq/validator.py