Metadata-Version: 2.4
Name: strath
Version: 1.0.4
Summary: This library helps ensuring that a file path is of type str or pathlib.Path.
Home-page: https://github.com/GRV96/strath
Author: Guyllaume Rousseau
License: MIT
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3.10
Classifier: Topic :: Utilities
Description-Content-Type: text/markdown
License-File: LICENSE
Dynamic: author
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: license
Dynamic: license-file
Dynamic: summary

## FRANÇAIS

Cette bibliothèque aide à assurer qu'un chemin de fichier soit de type `str` ou
`pathlib.Path`.

En Python, il est possible de représenter des chemins de fichier au moyen de
chaînes de caractères (`str`) ou d'instances de `pathlib.Path`. Ces types
étant employés de façons fort différentes, un développeur peut avoir besoin de
vérifier le type des objets et d'effectuer des conversions.

La bibliothèque `strath` permet de faire ces deux tâches en un seul appel de
fonction.

### Contenu

#### `ensure_path_is_pathlib`

Si le chemin est une chaîne de caractères, cette fonction le convertit en une
instance de `pathlib.Path` puis renvoie cette dernière. Si le chemin est une
instance de `pathlib.Path`, la fonction renvoie le chemin.

#### `ensure_path_is_str`

Si le chemin est une instance de `pathlib.Path`, cette fonction le convertit en
une chaîne de caractères puis renvoie cette dernière. Si le chemin est une
chaîne de caractères, la fonction renvoie le chemin.

#### Paramètres et exception `TypeError`

Les fonctions ci-dessus ont les mêmes paramètres.

`some_path` (`str` ou `pathlib.Path`): le chemin d'un fichier ou d'un dossier.

`is_none_allowed` (`bool`): détermine si `some_path` peut être `None`.

Si l'argument `some_path` est `None` et l'argument `is_none_allowed` est vrai
(`True`), les fonctions renvoient `None`. Par contre, si `is_none_allowed` est
faux (`False`), une exception `TypeError` est levée.

Si l'argument `some_path` n'est pas `None` ni une instance de `str` ou de
`pathlib.Path`, une exception `TypeError` est levée.

Pour plus d'informations, consultez la documentation des fonctions et les démos
dans le dépôt de code source.

## ENGLISH

This library helps ensuring that a file path is of type `str` or
`pathlib.Path`.

In Python, it is possible to represent file paths with character strings
(`str`) or `pathlib.Path` instances. Since these types are used in very
different ways, a developer might need to verify the objects' type and to
perform conversions.

Library `strath` allows to do both tasks with one function call.

### Content

#### `ensure_path_is_pathlib`

If the path is a string, this function converts it to a `pathlib.Path`
instance, which it returns. If the path is a `pathlib.Path` instance, the
function returns the path.

#### `ensure_path_is_str`

If the path is a `pathlib.Path` instance, this function converts it to a
string, which it returns. If the path is a string, the function returns the
path.

#### Parameters and exception `TypeError`

The above functions have the same parameters.

`some_path` (`str` or `pathlib.Path`): the path to a file or directory.

`is_none_allowed` (`bool`): determines whether `some_path` can be `None`.

If argument `some_path` is `None` and argument `is_none_allowed` is `True`,
the functions return `None`. However, if `is_none_allowed` is `False`, a
`TypeError` is raised.

If argument `some_path` is not `None` nor an instance of `str` or
`pathlib.Path`, a `TypeError` is raised.

For more information, consult the functions' documentation and the demos in the
source code repository.
