The Meson Build System
http://mesonbuild.com/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
23 lines
629 B
23 lines
629 B
3 years ago
|
# 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()
|