nodes: 0, module; 1, function_definition; 2, function_name:rowsBeforeValue; 3, parameters; 4, block; 5, identifier:self; 6, identifier:value; 7, identifier:count; 8, expression_statement; 9, if_statement; 10, return_statement; 11, comment:"""
          Retrieve display data for rows with sort-column values less than the
          given value.
  
          @type value: Some type compatible with the current sort column.
          @param value: Starting value in the index for the current sort column
          at which to start returning results.  Rows with a column value for the
          current sort column which is less than this value will be returned.
  
          @type count: C{int}
          @param count: The number of rows to return.
  
          @return: A list of row data, ordered by the current sort column, ending
          at C{value} and containing at most C{count} elements.
          """; 12, comparison_operator:value is None; 13, block; 14, else_clause; 15, subscript; 16, identifier:value; 17, None; 18, expression_statement; 19, block; 20, call; 21, slice; 22, assignment; 23, expression_statement; 24, expression_statement; 25, expression_statement; 26, attribute; 27, argument_list; 28, unary_operator; 29, identifier:query; 30, call; 31, assignment; 32, assignment; 33, assignment; 34, identifier:self; 35, identifier:constructRows; 36, identifier:query; 37, integer:1; 38, attribute; 39, argument_list; 40, identifier:pyvalue; 41, call; 42, identifier:currentSortAttribute; 43, call; 44, identifier:query; 45, call; 46, identifier:self; 47, identifier:inequalityQuery; 48, None; 49, identifier:count; 50, False; 51, attribute; 52, argument_list; 53, attribute; 54, argument_list; 55, attribute; 56, argument_list; 57, identifier:self; 58, identifier:_toComparableValue; 59, identifier:value; 60, attribute; 61, identifier:sortAttribute; 62, identifier:self; 63, identifier:inequalityQuery; 64, comparison_operator:currentSortAttribute < pyvalue; 65, identifier:count; 66, False; 67, identifier:self; 68, identifier:currentSortColumn; 69, identifier:currentSortAttribute; 70, identifier:pyvalue
code: def rowsBeforeValue(self, value, count):
          """
          Retrieve display data for rows with sort-column values less than the
          given value.
  
          @type value: Some type compatible with the current sort column.
          @param value: Starting value in the index for the current sort column
          at which to start returning results.  Rows with a column value for the
          current sort column which is less than this value will be returned.
  
          @type count: C{int}
          @param count: The number of rows to return.
  
          @return: A list of row data, ordered by the current sort column, ending
          at C{value} and containing at most C{count} elements.
          """
          if value is None:
              query = self.inequalityQuery(None, count, False)
          else:
              pyvalue = self._toComparableValue(value)
              currentSortAttribute = self.currentSortColumn.sortAttribute()
              query = self.inequalityQuery(
                  currentSortAttribute < pyvalue, count, False)
          return self.constructRows(query)[::-1]