File: __init__.py

package info (click to toggle)
pypy3 7.0.0%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 111,848 kB
  • sloc: python: 1,291,746; ansic: 74,281; asm: 5,187; cpp: 3,017; sh: 2,533; makefile: 544; xml: 243; lisp: 45; csh: 21; awk: 4
file content (43 lines) | stat: -rw-r--r-- 1,608 bytes parent folder | download
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
33
34
35
36
37
38
39
40
41
42
43
from pypy.interpreter.mixedmodule import MixedModule

class Module(MixedModule):
    """
    (Extremely) low-level import machinery bits as used by importlib and imp.
    """
    applevel_name = '_imp'

    interpleveldefs = {
        'extension_suffixes': 'interp_imp.extension_suffixes',

        'get_magic':       'interp_imp.get_magic',
        'get_tag':         'interp_imp.get_tag',
        'create_dynamic':  'interp_imp.create_dynamic',
        'create_builtin':  'interp_imp.create_builtin',
        'init_frozen':     'interp_imp.init_frozen',
        'is_builtin':      'interp_imp.is_builtin',
        'is_frozen':       'interp_imp.is_frozen',
        'exec_dynamic':    'interp_imp.exec_dynamic',
        'exec_builtin':    'interp_imp.exec_builtin',
        'get_frozen_object': 'interp_imp.get_frozen_object',
        'is_frozen_package': 'interp_imp.is_frozen_package',

        'lock_held':       'interp_imp.lock_held',
        'acquire_lock':    'interp_imp.acquire_lock',
        'release_lock':    'interp_imp.release_lock',

        '_fix_co_filename': 'interp_imp.fix_co_filename',

        '_get_multiarch_tuple': 'interp_imp.get_multiarch_tuple',
        }

    appleveldefs = {
        }

    def __init__(self, space, *args):
        "NOT_RPYTHON"
        MixedModule.__init__(self, space, *args)
        from pypy.module.posix.interp_posix import add_fork_hook
        from pypy.module.imp import interp_imp
        add_fork_hook('before', interp_imp.acquire_lock)
        add_fork_hook('parent', interp_imp.release_lock)
        add_fork_hook('child', interp_imp.reinit_lock)