def put_get(self, item): objective = Node._extract_objective(item) if self._sense == minimize: priority = -objective else: priority = objective Node._insert_queue_priority(item, priority) return super(BestObjectiveFirstPriorityQueue, self).put_get(item)
def put_get(self, item): bound = Node._extract_bound(item) if self._sense == minimize: priority = -bound else: priority = bound Node._insert_queue_priority(item, priority) return self._queue.put_get(item, priority)
def put_get(self, item): gap = self._get_gap(item) Node._insert_queue_priority(item, gap) return super(LocalGapPriorityQueue, self).put_get(item)
def put_get(self, item): Node._insert_queue_priority(item, random.random()) return super(RandomPriorityQueue, self).put_get(item)
def put_get(self, item): cnt, item_ = super(FIFOQueue, self).put_get(item) Node._insert_queue_priority(item, -cnt) return cnt, item_
def put_get(self, item): depth = Node._extract_tree_depth(item) assert depth >= 0 Node._insert_queue_priority(item, depth) return super(DepthFirstPriorityQueue, self).put_get(item)