MCPcopy Index your code
hub / github.com/clips/pattern / get_pos

Method get_pos

pattern/web/pdf/pdfparser.py:196–219  ·  view source on GitHub ↗
(self, objid)

Source from the content-addressed store, hash-verified

194 return
195
196 def get_pos(self, objid):
197 offset = 0
198 found = False
199 for objid_range in self.objid_ranges:
200 if objid >= objid_range.get_start_id() and objid <= objid_range.get_end_id():
201 offset += objid - objid_range.get_start_id()
202 found = True
203 break
204 else:
205 offset += objid_range.get_nobjs()
206 if not found: raise KeyError(objid)
207 i = self.entlen * offset
208 ent = self.data[i:i+self.entlen]
209 f1 = nunpack(ent[:self.fl1], 1)
210 if f1 == 1:
211 pos = nunpack(ent[self.fl1:self.fl1+self.fl2])
212 genno = nunpack(ent[self.fl1+self.fl2:])
213 return (None, pos)
214 elif f1 == 2:
215 objid = nunpack(ent[self.fl1:self.fl1+self.fl2])
216 index = nunpack(ent[self.fl1+self.fl2:])
217 return (objid, index)
218 # this is a free object
219 raise KeyError(objid)
220
221
222## PDFPage

Callers

nothing calls this directly

Calls 4

nunpackFunction · 0.90
get_start_idMethod · 0.80
get_end_idMethod · 0.80
get_nobjsMethod · 0.80

Tested by

no test coverage detected