import cython from ._dns cimport DNSQuestion cdef cython.double _DUPLICATE_QUESTION_INTERVAL cdef unsigned int _MAX_QUESTION_HISTORY_ENTRIES cdef unsigned int _MAX_KNOWN_ANSWERS_PER_HISTORY_ENTRY cdef class QuestionHistory: cdef public cython.dict _history cpdef void add_question_at_time(self, DNSQuestion question, double now, cython.set known_answers) @cython.locals(oldest=DNSQuestion, oldest_entry=cython.tuple, oldest_than=double) cdef void _evict_to_make_room(self, double now) @cython.locals(than=double, previous_question=cython.tuple, previous_known_answers=cython.set) cpdef bint suppresses(self, DNSQuestion question, double now, cython.set known_answers) @cython.locals(than=double, now_known_answers=cython.tuple) cpdef void async_expire(self, double now)