Exemple #1
0
        def __getitem__(self, index):
            shift_indexes = 1 if self.expr.type.zero_indexes else 0
            if isinstance(index, slice):
                if shift_indexes:
                    index = slice(index.start + shift_indexes,
                                  index.stop + shift_indexes, index.step)
                index = _Slice(index, self)
                return_type = self.type
            else:
                index += shift_indexes
                return_type = self.type.item_type

            return default_comparator._binary_operate(self.expr,
                                                      operators.getitem,
                                                      index,
                                                      result_type=return_type)
Exemple #2
0
        def __getitem__(self, index):
            shift_indexes = 1 if self.expr.type.zero_indexes else 0
            if isinstance(index, slice):
                if shift_indexes:
                    index = slice(
                        index.start + shift_indexes,
                        index.stop + shift_indexes,
                        index.step
                    )
                index = _Slice(index, self)
                return_type = self.type
            else:
                index += shift_indexes
                return_type = self.type.item_type

            return default_comparator._binary_operate(
                self.expr, operators.getitem, index,
                result_type=return_type)
Exemple #3
0
 def __getitem__(self, key):
     if SA_1_0:
         return default_comparator._binary_operate(self.expr, operators.getitem, key)
     return self._binary_operate(self.expr, operators.getitem, key)
 def __getitem__(self, key):
     return default_comparator._binary_operate(self.expr,
                                               operators.getitem,
                                               key)