blob: ec44a67a17e718d1cf04d13bad8929e0f1d10ad6 [file] [log] [blame]
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
from _emerge.AbstractDepPriority import AbstractDepPriority
class UnmergeDepPriority(AbstractDepPriority):
__slots__ = ("ignored", "optional", "satisfied",)
"""
Combination of properties Priority Category
runtime_slot_op 0 HARD
runtime -1 HARD
runtime_post -2 HARD
buildtime -3 SOFT
(none of the above) -3 SOFT
"""
MAX = 0
SOFT = -3
MIN = -3
def __init__(self, **kwargs):
AbstractDepPriority.__init__(self, **kwargs)
if self.buildtime:
self.optional = True
def __int__(self):
if self.runtime_slot_op:
return 0
if self.runtime:
return -1
if self.runtime_post:
return -2
if self.buildtime:
return -3
return -3
def __str__(self):
if self.ignored:
return "ignored"
if self.runtime_slot_op:
return "hard slot op"
myvalue = self.__int__()
if myvalue > self.SOFT:
return "hard"
return "soft"