(&self, vm: &VirtualMachine)
| 938 | |
| 939 | #[pymethod] |
| 940 | fn close(&self, vm: &VirtualMachine) -> PyResult<()> { |
| 941 | if self.closed() { |
| 942 | return Ok(()); |
| 943 | } |
| 944 | |
| 945 | if self.exports.load() > 0 { |
| 946 | return Err(vm.new_buffer_error("cannot close exported pointers exist.")); |
| 947 | } |
| 948 | |
| 949 | let mut mmap = self.mmap.lock(); |
| 950 | self.closed.store(true); |
| 951 | *mmap = None; |
| 952 | |
| 953 | self.close_handle(); |
| 954 | |
| 955 | Ok(()) |
| 956 | } |
| 957 | |
| 958 | fn get_find_range(&self, options: FindOptions) -> (usize, usize) { |
| 959 | let size = self.__len__(); |