File Explorer

/proc/self/root/proc/thread-self/root/lib64/python3.9/lib2to3/fixes

This explorer reads the filesystem of the server it runs on, so /workspace/user isn't present here. Browsing and the terminal still work against this server's own disk from /.

fix_types.py1.7 KB · 62 lines
# Copyright 2007 Google, Inc. All Rights Reserved.# Licensed to PSF under a Contributor Agreement. """Fixer for removing uses of the types module. These work for only the known names in the types module.  The forms abovecan include types. or not.  ie, It is assumed the module is imported either as:     import types    from types import ... # either * or specific types The import statements are not modified. There should be another fixer that handles at least the following constants:    type([]) -> list   type(()) -> tuple   type('') -> str """ # Local importsfrom .. import fixer_basefrom ..fixer_util import Name _TYPE_MAPPING = {        'BooleanType' : 'bool',        'BufferType' : 'memoryview',        'ClassType' : 'type',        'ComplexType' : 'complex',        'DictType': 'dict',        'DictionaryType' : 'dict',        'EllipsisType' : 'type(Ellipsis)',        #'FileType' : 'io.IOBase',        'FloatType': 'float',        'IntType': 'int',        'ListType': 'list',        'LongType': 'int',        'ObjectType' : 'object',        'NoneType': 'type(None)',        'NotImplementedType' : 'type(NotImplemented)',        'SliceType' : 'slice',        'StringType': 'bytes', # XXX ?        'StringTypes' : '(str,)', # XXX ?        'TupleType': 'tuple',        'TypeType' : 'type',        'UnicodeType': 'str',        'XRangeType' : 'range',    } _pats = ["power< 'types' trailer< '.' name='%s' > >" % t for t in _TYPE_MAPPING] class FixTypes(fixer_base.BaseFix):    BM_compatible = True    PATTERN = '|'.join(_pats)     def transform(self, node, results):        new_value = _TYPE_MAPPING.get(results["name"].value)        if new_value:            return Name(new_value, prefix=node.prefix)        return None