def FETCH(self, *args): data = self.cursor.fetchone() self.found = data is not None if not self.found: return for i, arg in enumerate(args): value = data[i] if value is None: value = NULL() arg <<= m(value)
def NEXT(self, index): index = extract_value(index) if index >= len(self.inner_list): return NULL() return m(index + 1)
def PRIOR(self, index): index = extract_value(index) if index == 1: return NULL() return m(index - 1)
def FIRST(self): return m(1) # FIXME