38 lines · plain
1%extend lldb::SBFile {2 static lldb::SBFile MakeBorrowed(lldb::FileSP BORROWED) {3 return lldb::SBFile(BORROWED);4 }5 static lldb::SBFile MakeForcingIOMethods(lldb::FileSP FORCE_IO_METHODS) {6 return lldb::SBFile(FORCE_IO_METHODS);7 }8 static lldb::SBFile MakeBorrowedForcingIOMethods(lldb::FileSP BORROWED_FORCE_IO_METHODS) {9 return lldb::SBFile(BORROWED_FORCE_IO_METHODS);10 }11 12#ifdef SWIGPYTHON13 %pythoncode {14 @classmethod15 def Create(cls, file, borrow=False, force_io_methods=False):16 """17 Create a SBFile from a python file object, with options.18 19 If borrow is set then the underlying file will20 not be closed when the SBFile is closed or destroyed.21 22 If force_scripting_io is set then the python read/write23 methods will be called even if a file descriptor is available.24 """25 if borrow:26 if force_io_methods:27 return cls.MakeBorrowedForcingIOMethods(file)28 else:29 return cls.MakeBorrowed(file)30 else:31 if force_io_methods:32 return cls.MakeForcingIOMethods(file)33 else:34 return cls(file)35 }36#endif37}38