(self, i)
| 2842 | return True |
| 2843 | |
| 2844 | def __delitem__(self, i)->None: |
| 2845 | if not self.is_pdf: |
| 2846 | raise ValueError("is no PDF") |
| 2847 | if type(i) is int: |
| 2848 | return self.delete_page(i) |
| 2849 | if type(i) in (list, tuple, range): |
| 2850 | return self.delete_pages(i) |
| 2851 | if type(i) is not slice: |
| 2852 | raise ValueError("bad argument type") |
| 2853 | pc = self.page_count |
| 2854 | start = i.start if i.start else 0 |
| 2855 | stop = i.stop if i.stop else pc |
| 2856 | step = i.step if i.step else 1 |
| 2857 | while start < 0: |
| 2858 | start += pc |
| 2859 | if start >= pc: |
| 2860 | raise ValueError("bad page number(s)") |
| 2861 | while stop < 0: |
| 2862 | stop += pc |
| 2863 | if stop > pc: |
| 2864 | raise ValueError("bad page number(s)") |
| 2865 | return self.delete_pages(range(start, stop, step)) |
| 2866 | |
| 2867 | def __enter__(self): |
| 2868 | return self |
nothing calls this directly
no test coverage detected