aboutsummaryrefslogtreecommitdiffstats
path: root/bsie/reader/stat.py
blob: 6d40ab894cb2f39961bf255f202aa207ef26a525 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
"""The Stat reader produces filesystem stat information.

Part of the bsie module.
A copy of the license is provided with the project.
Author: Matthias Baumgartner, 2022
"""
# imports
import os
import typing

# bsie imports
from bsie.base import reader, errors

# exports
__all__: typing.Sequence[str] = (
    'Stat',
    )


## code ##

class Stat(reader.Reader):
    """Read and return the filesystem's stat infos."""

    def __call__(self, path: str) -> os.stat_result:
        try:
            return os.stat(path)
        except Exception:
            raise errors.ReaderError(path)


## EOF ##