static Scheme_Object *vector_to_values (int argc, Scheme_Object *argv[]) { Scheme_Thread *p; Scheme_Object *vec, **a; long len, start, finish, i; vec = argv[0]; if (!SCHEME_VECTORP(vec)) scheme_wrong_type("vector->values", "vector", 0, argc, argv); len = SCHEME_VEC_SIZE(vec); if (argc > 1) start = scheme_extract_index("vector->values", 1, argc, argv, len + 1, 0); else start = 0; if (argc > 2) finish = scheme_extract_index("vector->values", 2, argc, argv, len + 1, 0); else finish = len; if (!(start <= len)) { bad_index("vector->values", argv[1], vec, 0); } if (!(finish >= start && finish <= len)) { bad_index("vector->values", argv[2], vec, start); } len = finish - start; if (len == 1) return SCHEME_VEC_ELS(vec)[start]; p = scheme_current_thread; if (p->values_buffer && (p->values_buffer_size >= len)) a = p->values_buffer; else { a = MALLOC_N(Scheme_Object *, len); p->values_buffer = a; p->values_buffer_size = len; } p->ku.multiple.array = a; p->ku.multiple.count = len; for (i = 0; i < len; i++) { a[i] = SCHEME_VEC_ELS(vec)[start + i]; } return SCHEME_MULTIPLE_VALUES; }
void lista::add(int x, int index) { if(index<=ile_elem) przypisz (x, index); else throw bad_index(); }
double &Sales::operator [](int i) { if (i < 0 || i >= MONTHS) throw bad_index(i); return gross[i]; }
Scheme_Object * scheme_checked_vector_ref (int argc, Scheme_Object *argv[]) { intptr_t i, len; Scheme_Object *vec; vec = argv[0]; if (SCHEME_CHAPERONEP(vec)) vec = SCHEME_CHAPERONE_VAL(vec); if (!SCHEME_VECTORP(vec)) scheme_wrong_contract("vector-ref", "vector?", 0, argc, argv); len = SCHEME_VEC_SIZE(vec); i = scheme_extract_index("vector-ref", 1, argc, argv, len, 0); if (i >= len) return bad_index("vector-ref", "", argv[1], argv[0], 0); if (!SAME_OBJ(vec, argv[0])) /* chaperone */ return scheme_chaperone_vector_ref(argv[0], i); else return (SCHEME_VEC_ELS(vec))[i]; }
Value SimpleString::aset(unsigned long i, Value new_value) { if (i >= _capacity) return bad_index(i); _chars[i] = char_value(new_value); return new_value; }
inline Value SimpleBitVector::inline_aset(INDEX i, Value new_value) { if (i >= _capacity) return bad_index(i); inline_setbit(i, check_bit(new_value)); return new_value; }
Scheme_Object * scheme_checked_vector_set(int argc, Scheme_Object *argv[]) { Scheme_Object *vec = argv[0]; intptr_t i, len; if (SCHEME_CHAPERONEP(vec)) vec = SCHEME_CHAPERONE_VAL(vec); if (!SCHEME_MUTABLE_VECTORP(vec)) scheme_wrong_contract("vector-set!", "(and/c vector? (not/c immutable?))", 0, argc, argv); len = SCHEME_VEC_SIZE(vec); i = scheme_extract_index("vector-set!", 1, argc, argv, len, 0); if (i >= len) return bad_index("vector-set!", "", argv[1], argv[0], 0); if (!SAME_OBJ(vec, argv[0])) scheme_chaperone_vector_set(argv[0], i, argv[2]); else SCHEME_VEC_ELS(vec)[i] = argv[2]; return scheme_void; }
void lista::remove(int i) { if(isEmpty()==true) throw empty(); else if(i>ind()) throw bad_index(); else zdejmij(i); }
int lista::get(int i) { if(isEmpty()==true) throw empty(); else if (i>ind()) throw bad_index(); else return wyswietl(i); }
Value Vector_UB32::elt(INDEX i) const { if (i >= length()) return bad_index(i); if (_data) return make_unsigned_integer(_data[i]); else // displaced return _array->aref(i + _offset); }
Value Vector_UB32::aset(INDEX i, Value new_value) { if (i >= _capacity) return bad_index(i); unsigned int n = check_ub32(new_value); if (_data) { _data[i] = n; return new_value; } else // displaced return _array->aset(i + _offset, new_value); }
Value SimpleArray_UB16_1::aset(INDEX i, Value new_value) { if (i >= _capacity) return bad_index(i); if (fixnump(new_value)) { long n = xlong(new_value); if (n >= 0 && n < 65536) { _data[i] = (unsigned short) n; return new_value; } } return signal_type_error(new_value, UB16_TYPE); }
Scheme_Object * scheme_checked_vector_ref (int argc, Scheme_Object *argv[]) { long i, len; if (!SCHEME_VECTORP(argv[0])) scheme_wrong_type("vector-ref", "vector", 0, argc, argv); len = SCHEME_VEC_SIZE(argv[0]); i = scheme_extract_index("vector-ref", 1, argc, argv, len, 0); if (i >= len) return bad_index("vector-ref", argv[1], argv[0], 0); return (SCHEME_VEC_ELS(argv[0]))[i]; }
Scheme_Object * scheme_checked_vector_cas(int argc, Scheme_Object *argv[]) { Scheme_Object *vec = argv[0]; intptr_t i, len; if (!SCHEME_MUTABLE_VECTORP(vec)) scheme_wrong_contract("vector-cas!", "(and/c vector? (not/c immutable?) (not/c impersonator?))", 0, argc, argv); len = SCHEME_VEC_SIZE(vec); i = scheme_extract_index("vector-cas!", 1, argc, argv, len, 0); if (i >= len) return bad_index("vector-cas!", "", argv[1], argv[0], 0); return unsafe_vector_star_cas(argc, argv); }
Scheme_Object * scheme_checked_vector_set(int argc, Scheme_Object *argv[]) { long i, len; if (!SCHEME_MUTABLE_VECTORP(argv[0])) scheme_wrong_type("vector-set!", "mutable vector", 0, argc, argv); len = SCHEME_VEC_SIZE(argv[0]); i = scheme_extract_index("vector-set!", 1, argc, argv, len, 0); if (i >= len) return bad_index("vector-set!", argv[1], argv[0], 0); (SCHEME_VEC_ELS(argv[0]))[i] = argv[2]; return scheme_void; }
Scheme_Object * scheme_checked_vector_star_ref (int argc, Scheme_Object *argv[]) { intptr_t i, len; Scheme_Object *vec; vec = argv[0]; if (!SCHEME_VECTORP(vec)) scheme_wrong_contract("vector*-ref", "(and/c vector? (not impersonator?))", 0, argc, argv); len = SCHEME_VEC_SIZE(vec); i = scheme_extract_index("vector*-ref", 1, argc, argv, len, 0); if (i >= len) return bad_index("vector*-ref", "", argv[1], argv[0], 0); return (SCHEME_VEC_ELS(vec))[i]; }
Value SimpleString::elt(unsigned long i) const { if (i >= _capacity) return bad_index(i); return make_character(_chars[i]); }
Value SimpleArray_UB16_1::elt(INDEX i) const { if (i >= _capacity) return bad_index(i); return make_unsigned_fixnum(_data[i]); }
double & Sales::operator[](int i) throw(std::logic_error) { if(i < 0 || i >= MONTHS) throw bad_index(i); return gross[i]; }
BOOST_UBLAS_INLINE reference operator [] (size_type i) { BOOST_UBLAS_CHECK (i < N, bad_index ()); return data_ [i]; }
static Scheme_Object *vector_to_values (int argc, Scheme_Object *argv[]) { Scheme_Thread *p; Scheme_Object *vec, **a, *plain_vec; intptr_t len, start, finish, i; vec = argv[0]; if (SCHEME_NP_CHAPERONEP(vec)) vec = SCHEME_CHAPERONE_VAL(vec); if (!SCHEME_VECTORP(vec)) scheme_wrong_contract("vector->values", "vector?", 0, argc, argv); len = SCHEME_VEC_SIZE(vec); if (argc > 1) start = scheme_extract_index("vector->values", 1, argc, argv, len + 1, 0); else start = 0; if (argc > 2) finish = scheme_extract_index("vector->values", 2, argc, argv, len + 1, 0); else finish = len; if (!(start <= len)) { bad_index("vector->values", "starting ", argv[1], argv[0], 0); } if (!(finish >= start && finish <= len)) { bad_index("vector->values", "ending ", argv[2], argv[0], start); } len = finish - start; if (len == 1) { if (!SAME_OBJ(vec, argv[0])) return scheme_chaperone_vector_ref(argv[0], start); else return SCHEME_VEC_ELS(vec)[start]; } if (!SAME_OBJ(vec, argv[0])) { plain_vec = scheme_make_vector(len, NULL); for (i = 0; i < len; i++) { vec = scheme_chaperone_vector_ref(argv[0], start + i); SCHEME_VEC_ELS(plain_vec)[i] = vec; } vec = plain_vec; start = 0; } p = scheme_current_thread; if (p->values_buffer && (p->values_buffer_size >= len)) a = p->values_buffer; else { a = MALLOC_N(Scheme_Object *, len); p->values_buffer = a; p->values_buffer_size = len; } p->ku.multiple.array = a; p->ku.multiple.count = len; for (i = 0; i < len; i++) { a[i] = SCHEME_VEC_ELS(vec)[start + i]; } return SCHEME_MULTIPLE_VALUES; }
// Element access BOOST_UBLAS_INLINE const_reference operator [] (size_type i) const { BOOST_UBLAS_CHECK (i < size_, bad_index ()); return data_ [i]; }
inline Value SimpleBitVector::inline_aref(INDEX i) const { if (i >= _capacity) return bad_index(i); return make_fixnum(inline_getbit(i)); }