MCPcopy Create free account
hub / github.com/catboost/catboost / OpenFile

Class OpenFile

contrib/tools/cython/Cython/Utils.py:691–719  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

689# ========================== Arcadia specific =================================
690
691class OpenFile(object):
692
693 def __init__(self, filename, mode='r', is_standalone=False):
694 assert 'r' in mode, ('Read-only', mode)
695 self.filename = filename
696 self.mode = mode
697 self.is_standalone = is_standalone
698 self.file = None
699 self.build_root = os.environ.get('PYTHON_COVERAGE_CYTHON_BUILD_ROOT')
700
701 def __enter__(self):
702 # See redefined _find_c_source() description for more info
703 if self.build_root:
704 self.file = open(os.path.join(self.build_root, self.filename), self.mode)
705 return self.file
706 elif self.is_standalone:
707 import library.python.resource
708 from six import StringIO
709
710 content = library.python.resource.resfs_read(self.filename, builtin=True)
711 assert content, (self.filename, os.environ.items())
712 return StringIO(content.decode())
713 else:
714 self.file = open(self.filename, self.mode)
715 return self.file
716
717 def __exit__(self, exc_type, exc_val, exc_tb):
718 if self.file:
719 self.file.close()
720
721
722def generated_file_exists(filename, is_standalone=False):

Callers 6

_parse_cfile_linesMethod · 0.70
is_cython_generated_fileFunction · 0.70
TImplMethod · 0.50
ReopenLogMethod · 0.50
TImplMethod · 0.50
ReopenLogMethod · 0.50

Calls

no outgoing calls

Tested by

no test coverage detected