<reponame>r4b3rt/angr<gh_stars>0
from . import SimConcretizationStrategy

class SimConcretizationStrategySolutions(SimConcretizationStrategy):
    """
    Concretization strategy that resolves an address into some
    limited number of solutions.
    """

    def __init__(self, limit, **kwargs):
        super(SimConcretizationStrategySolutions, self).__init__(**kwargs)
        self._limit = limit

    def _concretize(self, memory, addr, **kwargs):
        addrs = self._eval(memory, addr, self._limit + 1, **kwargs)
        if len(addrs) <= self._limit:
            return addrs
        return None

from . import SimConcretizationStrategy

class SimConcretizationStrategySolutions(SimConcretizationStrategy):
    """
    Concretization strategy that resolves an address into some
    limited number of solutions.
    """

    def __init__(self, limit, **kwargs):
        super(SimConcretizationStrategySolutions, self).__init__(**kwargs)
        self._limit = limit

    def _concretize(self, memory, addr, **kwargs):
        addrs = self._eval(memory, addr, self._limit + 1, **kwargs)
        if len(addrs) <= self._limit:
            return addrs
        return None
Concretization strategy that resolves an address into some     limited number of solutions.