(self, addr)
return None
Get the statement index of the last statement to execute in the basic block specified by `addr`.

        :param int addr:    Address of the basic block.
        :return:            The statement index of the last statement to be executed in the block. Usually if the
                            default exit is taken, it will be the last statement to execute. If the block is not in the
                            slice or we should never take any exit going to this block, None is returned.
        :rtype:             int or None
Get the statement index of the last statement to execute in the basic block specified by `addr`.
Get the statement index of the last statement to execute in the basic block specified by addr .
def get_last_statement_index(self, addr):
        """
        Get the statement index of the last statement to execute in the basic block specified by `addr`.

        :param int addr:    Address of the basic block.
        :return:            The statement index of the last statement to be executed in the block. Usually if the
                            default exit is taken, it will be the last statement to execute. If the block is not in the
                            slice or we should never take any exit going to this block, None is returned.
        :rtype:             int or None
        """

        if addr in self._exit_taken:
            return None
        if addr in self._addr_to_last_stmt_id:
            return self._addr_to_last_stmt_id[addr]
        elif addr in self._run_statement_whitelist:
            # is the default exit there? it equals to a negative number (-2 by default) so `max()` won't work.
            if self._run_statement_whitelist[addr] is True or \
                    (isinstance(self._run_statement_whitelist[addr], list)
                     and DEFAULT_STATEMENT in self._run_statement_whitelist[addr]
                    ):
                return DEFAULT_STATEMENT
            return max(self._run_statement_whitelist[addr], key=lambda v: v if type(v) is int else float('inf'))
        return None
def get_last_statement_index ( self , addr ) : if addr in self . _exit_taken : return None if addr in self . _addr_to_last_stmt_id : return self . _addr_to_last_stmt_id [ addr ] elif addr in self . _run_statement_whitelist : # is the default exit there? it equals to a negative number (-2 by default) so `max()` won't work. if self . _run_statement_whitelist [ addr ] is True or ( isinstance ( self . _run_statement_whitelist [ addr ] , list ) and DEFAULT_STATEMENT in self . _run_statement_whitelist [ addr ] ) : return DEFAULT_STATEMENT return max ( self . _run_statement_whitelist [ addr ] , key = lambda v : v if type ( v ) is int else float ( 'inf' ) ) return None