def asof(self, where):
        if isinstance(where, compat.string_types):
            where = datetools.to_datetime(where)

        values = self._values

        if not hasattr(where, '__iter__'):
            start = self.index[0]
            if isinstance(self.index, PeriodIndex):
                where = Period(where, freq=self.index.freq).ordinal
                start = start.ordinal

            if where < start:
                return np.nan
            loc = self.index.searchsorted(where, side='right')
            if loc > 0:
                loc -= 1
            while isnull(values[loc]) and loc > 0:
                loc -= 1
            return values[loc]

        if not isinstance(where, Index):
            where = Index(where)

        locs = self.index.asof_locs(where, notnull(values))
        new_values = algos.take_1d(values, locs)
        return self._constructor(new_values, index=where).__finalize__(self)
Determines which resolution strategy to activate/apply.
dataset/ETHPy150Open pydata/pandas/pandas/core/series.py/Series.asof--crossover with--dataset/ETHPy150Open openstack/taskflow/taskflow/engines/action_engine/completer.py/Completer._determine_resolution