1a5f9918aSopenharmony_ci
2a5f9918aSopenharmony_ci__all__ = ['BaseLoader', 'FullLoader', 'SafeLoader', 'Loader', 'UnsafeLoader']
3a5f9918aSopenharmony_ci
4a5f9918aSopenharmony_cifrom .reader import *
5a5f9918aSopenharmony_cifrom .scanner import *
6a5f9918aSopenharmony_cifrom .parser import *
7a5f9918aSopenharmony_cifrom .composer import *
8a5f9918aSopenharmony_cifrom .constructor import *
9a5f9918aSopenharmony_cifrom .resolver import *
10a5f9918aSopenharmony_ci
11a5f9918aSopenharmony_ciclass BaseLoader(Reader, Scanner, Parser, Composer, BaseConstructor, BaseResolver):
12a5f9918aSopenharmony_ci
13a5f9918aSopenharmony_ci    def __init__(self, stream):
14a5f9918aSopenharmony_ci        Reader.__init__(self, stream)
15a5f9918aSopenharmony_ci        Scanner.__init__(self)
16a5f9918aSopenharmony_ci        Parser.__init__(self)
17a5f9918aSopenharmony_ci        Composer.__init__(self)
18a5f9918aSopenharmony_ci        BaseConstructor.__init__(self)
19a5f9918aSopenharmony_ci        BaseResolver.__init__(self)
20a5f9918aSopenharmony_ci
21a5f9918aSopenharmony_ciclass FullLoader(Reader, Scanner, Parser, Composer, FullConstructor, Resolver):
22a5f9918aSopenharmony_ci
23a5f9918aSopenharmony_ci    def __init__(self, stream):
24a5f9918aSopenharmony_ci        Reader.__init__(self, stream)
25a5f9918aSopenharmony_ci        Scanner.__init__(self)
26a5f9918aSopenharmony_ci        Parser.__init__(self)
27a5f9918aSopenharmony_ci        Composer.__init__(self)
28a5f9918aSopenharmony_ci        FullConstructor.__init__(self)
29a5f9918aSopenharmony_ci        Resolver.__init__(self)
30a5f9918aSopenharmony_ci
31a5f9918aSopenharmony_ciclass SafeLoader(Reader, Scanner, Parser, Composer, SafeConstructor, Resolver):
32a5f9918aSopenharmony_ci
33a5f9918aSopenharmony_ci    def __init__(self, stream):
34a5f9918aSopenharmony_ci        Reader.__init__(self, stream)
35a5f9918aSopenharmony_ci        Scanner.__init__(self)
36a5f9918aSopenharmony_ci        Parser.__init__(self)
37a5f9918aSopenharmony_ci        Composer.__init__(self)
38a5f9918aSopenharmony_ci        SafeConstructor.__init__(self)
39a5f9918aSopenharmony_ci        Resolver.__init__(self)
40a5f9918aSopenharmony_ci
41a5f9918aSopenharmony_ciclass Loader(Reader, Scanner, Parser, Composer, Constructor, Resolver):
42a5f9918aSopenharmony_ci
43a5f9918aSopenharmony_ci    def __init__(self, stream):
44a5f9918aSopenharmony_ci        Reader.__init__(self, stream)
45a5f9918aSopenharmony_ci        Scanner.__init__(self)
46a5f9918aSopenharmony_ci        Parser.__init__(self)
47a5f9918aSopenharmony_ci        Composer.__init__(self)
48a5f9918aSopenharmony_ci        Constructor.__init__(self)
49a5f9918aSopenharmony_ci        Resolver.__init__(self)
50a5f9918aSopenharmony_ci
51a5f9918aSopenharmony_ci# UnsafeLoader is the same as Loader (which is and was always unsafe on
52a5f9918aSopenharmony_ci# untrusted input). Use of either Loader or UnsafeLoader should be rare, since
53a5f9918aSopenharmony_ci# FullLoad should be able to load almost all YAML safely. Loader is left intact
54a5f9918aSopenharmony_ci# to ensure backwards compatibility.
55a5f9918aSopenharmony_ciclass UnsafeLoader(Reader, Scanner, Parser, Composer, Constructor, Resolver):
56a5f9918aSopenharmony_ci
57a5f9918aSopenharmony_ci    def __init__(self, stream):
58a5f9918aSopenharmony_ci        Reader.__init__(self, stream)
59a5f9918aSopenharmony_ci        Scanner.__init__(self)
60a5f9918aSopenharmony_ci        Parser.__init__(self)
61a5f9918aSopenharmony_ci        Composer.__init__(self)
62a5f9918aSopenharmony_ci        Constructor.__init__(self)
63a5f9918aSopenharmony_ci        Resolver.__init__(self)
64