MCPcopy Create free account
hub / github.com/grantjenks/python-sortedcontainers / run

Method run

tests/benchmark_sortedlist.py:370–398  ·  view source on GitHub ↗

30% bisect 20% getitem 20% delitem 10% get-slice (range query) 10% add 10% discard

(self, value)

Source from the content-addressed store, hash-verified

368
369class Intervals(Mixed):
370 def run(self, value):
371 """
372 30% bisect
373 20% getitem
374 20% delitem
375 10% get-slice (range query)
376 10% add
377 10% discard
378 """
379 obj = self.obj
380 pos = self.rand.randrange(100)
381
382 if pos < 30:
383 obj.bisect(value)
384 elif pos < 50:
385 if value < len(obj):
386 obj[value]
387 elif pos < 70:
388 if value < len(obj):
389 del obj[value]
390 elif pos < 80:
391 if value < len(obj):
392 limit = min(value + 100, len(obj))
393 other = self.rand.randrange(value, limit)
394 obj[value:other]
395 elif pos < 90:
396 obj.add(value)
397 else:
398 obj.discard(value)
399
400for name, kind in kinds.items():
401 impls['intervals'][name] = {

Callers

nothing calls this directly

Calls 3

bisectMethod · 0.80
addMethod · 0.45
discardMethod · 0.45

Tested by

no test coverage detected