def descr__new__(space, w_tupletype, w_sequence=gateway.NoneNotWrapped): from pypy.objspace.std.tupleobject import W_TupleObject if w_sequence is None: tuple_w = [] elif (space.is_w(w_tupletype, space.w_tuple) and space.is_w(space.type(w_sequence), space.w_tuple)): return w_sequence else: tuple_w = space.fixedview(w_sequence) w_obj = space.allocate_instance(W_TupleObject, w_tupletype) W_TupleObject.__init__(w_obj, tuple_w) return w_obj
def test1(testtuple, start, stop, step, expected): w_slice = self.space.newslice(w(start), w(stop), w(step)) w_tuple = W_TupleObject([w(i) for i in testtuple]) w_result = self.space.getitem(w_tuple, w_slice) assert self.space.unwrap(w_result) == expected
def PyTuple_New(space, size): return W_TupleObject([space.w_None] * size)
def delegate_SpecialisedTuple2Tuple(space, w_specialised): w_specialised.delegating() return W_TupleObject(w_specialised.tolist())
def wraptuple(space, list_w): from pypy.objspace.std.tupleobject import W_TupleObject return W_TupleObject(list_w)