diff options
author | Daniel Mensinger <daniel@mensinger-ka.de> | 2021-10-07 19:46:06 +0200 |
---|---|---|
committer | Daniel Mensinger <daniel@mensinger-ka.de> | 2021-10-07 19:46:06 +0200 |
commit | ba93dd20ca7f987ed6f23d525963329b77dc5813 (patch) | |
tree | c5d2d9e3f0293eda8522530fbfd3877c921548fa /docs/refman/loaderpickle.py | |
parent | f06cdf0606ac1cfd946b7b2b70e4e4084baac23c (diff) | |
download | meson-ba93dd20ca7f987ed6f23d525963329b77dc5813.zip meson-ba93dd20ca7f987ed6f23d525963329b77dc5813.tar.gz meson-ba93dd20ca7f987ed6f23d525963329b77dc5813.tar.bz2 |
docs: Added pickle RefMan loader
Diffstat (limited to 'docs/refman/loaderpickle.py')
-rw-r--r-- | docs/refman/loaderpickle.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/docs/refman/loaderpickle.py b/docs/refman/loaderpickle.py new file mode 100644 index 0000000..722fedf --- /dev/null +++ b/docs/refman/loaderpickle.py @@ -0,0 +1,22 @@ +# SPDX-License-Identifer: Apache-2.0 +# Copyright 2021 The Meson development team + +from pathlib import Path +import pickle + +from .loaderbase import LoaderBase +from .model import ReferenceManual + +class LoaderPickle(LoaderBase): + def __init__(self, in_file: Path) -> None: + super().__init__() + self.in_file = in_file + + def load_impl(self) -> ReferenceManual: + res = pickle.loads(self.in_file.read_bytes()) + assert isinstance(res, ReferenceManual) + return res + + # Assume that the pickled data is OK and skip validation + def load(self) -> ReferenceManual: + return self.load_impl() |