def unpack_fields(space, w_fields): fields_w = space.unpackiterable(w_fields) fields = [] for w_tup in fields_w: l_w = space.unpackiterable(w_tup) if not len(l_w) == 2: raise OperationError(space.w_ValueError, space.wrap( "Expected list of 2-size tuples")) name = space.str_w(l_w[0]) tp = unpack_typecode(space, l_w[1]) fields.append((name, tp)) return fields
def descr_new_array(space, w_type, w_itemtp): itemtp = unpack_typecode(space, w_itemtp) array_type = get_array_cache(space).get_array_type(itemtp) return space.wrap(array_type)