Lines Matching defs:value
152 p->value.c.car = &alsa_lisp_nil;
153 p->value.c.cdr = &alsa_lisp_nil;
168 free(p->value.s);
186 alisp_compare_type(p, ALISP_OBJ_IDENTIFIER) ? p->value.s : "???");
207 delete_tree(instance, p->value.c.car);
208 delete_tree(instance, p->value.c.cdr);
231 incref_tree(instance, p->value.c.car);
232 incref_tree(instance, p->value.c.cdr);
246 incref_tree(instance, p->value.c.car);
247 incref_tree(instance, p->value.c.cdr);
249 incref_tree_explicit(instance, p->value.c.car, e);
250 incref_tree_explicit(instance, p->value.c.cdr, e);
269 lisp_debug(instance, "freeing pair: '%s' -> %p", pair->name, pair->value);
270 delete_tree(instance, pair->value);
307 if (!strcmp(p->value.s, s))
321 if (!strcmp(p->value.s, s)) {
338 if (p->value.i == in) {
355 if (p->value.i == in) {
372 if (p->value.ptr == ptr) {
382 static struct alisp_object * new_integer(struct alisp_instance *instance, long value)
386 obj = search_object_integer(instance, value);
391 list_add(&obj->list, &instance->used_objs_list[value & ALISP_OBJ_PAIR_HASH_MASK][ALISP_OBJ_INTEGER]);
392 obj->value.i = value;
397 static struct alisp_object * new_float(struct alisp_instance *instance, double value)
401 obj = search_object_float(instance, value);
406 list_add(&obj->list, &instance->used_objs_list[(long)value & ALISP_OBJ_PAIR_HASH_MASK][ALISP_OBJ_FLOAT]);
407 obj->value.f = value;
422 if (obj && (obj->value.s = strdup(str)) == NULL) {
440 if (obj && (obj->value.s = strdup(id)) == NULL) {
458 obj->value.ptr = ptr;
472 lexpr->value.c.car = new_string(instance, ptr_id);
473 if (lexpr->value.c.car == NULL)
475 lexpr->value.c.cdr = new_pointer(instance, ptr);
476 if (lexpr->value.c.cdr == NULL) {
477 delete_object(instance, lexpr->value.c.car);
711 prev->value.c.cdr = parse_object(instance, 1);
712 if (prev->value.c.cdr == NULL)
728 prev->value.c.cdr = p;
730 p->value.c.car = parse_object(instance, 1);
731 if (p->value.c.car == NULL)
754 p->value.c.car = new_identifier(instance, "quote");
755 if (p->value.c.car == NULL)
757 p->value.c.cdr = new_object(instance, ALISP_OBJ_CONS);
758 if (p->value.c.cdr == NULL) {
759 delete_object(instance, p->value.c.car);
767 p->value.c.cdr->value.c.car = obj;
828 static struct alisp_object_pair * set_object_direct(struct alisp_instance *instance, struct alisp_object * name, struct alisp_object * value)
833 id = name->value.s;
841 delete_tree(instance, value);
846 p->value = value;
853 lisp_warn(instance, "setting the value of a nil object");
857 lisp_warn(instance, "setting the value of a t object");
862 lisp_warn(instance, "setting the value of an object with non-indentifier");
868 static struct alisp_object_pair * set_object(struct alisp_instance *instance, struct alisp_object * name, struct alisp_object * value)
874 if (name == NULL || value == NULL)
877 id = name->value.s;
882 delete_tree(instance, p->value);
883 p->value = value;
895 delete_tree(instance, value);
900 p->value = value;
916 id = name->value.s;
922 res = p->value;
940 return p->value;
953 return get_object1(instance, name->value.s);
968 id = name->value.s;
972 r = p->value;
973 p->value = onew;
1000 if (alisp_compare_type(p->value, ALISP_OBJ_CONS) &&
1001 alisp_compare_type(p->value->value.c.car, ALISP_OBJ_IDENTIFIER) &&
1002 !strcmp(p->value->value.c.car->value.s, "lambda")) {
1004 princ_cons(out, p->value->value.c.cdr);
1009 princ_object(out, p->value);
1084 p = p->value.c.cdr;
1094 return p->value.c.car;
1102 return p->value.c.cdr;
1151 f += p1->value.i;
1153 v += p1->value.i;
1155 f += p1->value.f + v;
1186 str1 = realloc(str, (str ? strlen(str) : 0) + strlen(p1->value.s) + 1);
1193 strcpy(str1, p1->value.s);
1195 strcat(str1, p1->value.s);
1230 v = p1->value.i;
1233 f -= p1->value.i;
1235 v -= p1->value.i;
1243 f = p1->value.f;
1245 f -= p1->value.f;
1276 f *= p1->value.i;
1278 v *= p1->value.i;
1280 f *= p1->value.f * v; v = 1;
1312 v = p1->value.i;
1314 if (p1->value.i == 0) {
1321 f /= p1->value.i;
1323 v /= p1->value.i;
1332 f = p1->value.f;
1334 if (p1->value.f == 0) {
1339 f /= p1->value.i;
1372 if (p2->value.i == 0) {
1376 p3 = new_integer(instance, p1->value.i % p2->value.i);
1383 f1 = alisp_compare_type(p1, ALISP_OBJ_INTEGER) ? p1->value.i : p1->value.f;
1384 f2 = alisp_compare_type(p2, ALISP_OBJ_INTEGER) ? p2->value.i : p2->value.f;
1419 if (p1->value.i < p2->value.i) {
1430 f1 = alisp_compare_type(p1, ALISP_OBJ_INTEGER) ? p1->value.i : p1->value.f;
1431 f2 = alisp_compare_type(p2, ALISP_OBJ_INTEGER) ? p2->value.i : p2->value.f;
1458 if (p1->value.i > p2->value.i) {
1469 f1 = alisp_compare_type(p1, ALISP_OBJ_INTEGER) ? p1->value.i : p1->value.f;
1470 f2 = alisp_compare_type(p2, ALISP_OBJ_INTEGER) ? p2->value.i : p2->value.f;
1497 if (p1->value.i <= p2->value.i) {
1508 f1 = alisp_compare_type(p1, ALISP_OBJ_INTEGER) ? p1->value.i : p1->value.f;
1509 f2 = alisp_compare_type(p2, ALISP_OBJ_INTEGER) ? p2->value.i : p2->value.f;
1536 if (p1->value.i >= p2->value.i) {
1547 f1 = alisp_compare_type(p1, ALISP_OBJ_INTEGER) ? p1->value.i : p1->value.f;
1548 f2 = alisp_compare_type(p2, ALISP_OBJ_INTEGER) ? p2->value.i : p2->value.f;
1575 if (p1->value.i == p2->value.i) {
1586 f1 = alisp_compare_type(p1, ALISP_OBJ_INTEGER) ? p1->value.i : p1->value.f;
1587 f2 = alisp_compare_type(p2, ALISP_OBJ_INTEGER) ? p2->value.i : p2->value.f;
1630 !strcmp(p2->value.s, "lambda")) {
1661 princ_object(out, p->value.c.car);
1662 p = p->value.c.cdr;
1683 snd_output_printf(out, "%s", p->value.s);
1686 princ_string(out, p->value.s);
1689 snd_output_printf(out, "%ld", p->value.i);
1692 snd_output_printf(out, "%f", p->value.f);
1695 snd_output_printf(out, "<%p>", p->value.ptr);
1716 snd_output_printf(instance->out, "%s", p1->value.s);
1767 p->value.c.car = eval(instance, car(args));
1768 p->value.c.cdr = eval(instance, car(cdr(args)));
1796 p1->value.c.car = eval(instance, car(p));
1797 if (p1->value.c.car == NULL) {
1806 prev->value.c.cdr = p1;
1836 return !strcmp(p1->value.s, p2->value.s);
1838 return p1->value.i == p2->value.i;
1840 return p1->value.i == p2->value.i;
2165 * Syntax: (set name value)
2203 * Syntax: (setq name value...)
2204 * Syntax: (setf name value...)
2269 lexpr->value.c.car = new_identifier(instance, "lambda");
2270 if (lexpr->value.c.car == NULL) {
2275 if ((lexpr->value.c.cdr = new_object(instance, ALISP_OBJ_CONS)) == NULL) {
2276 delete_object(instance, lexpr->value.c.car);
2281 lexpr->value.c.cdr->value.c.car = p2;
2282 lexpr->value.c.cdr->value.c.cdr = p3;
2305 !strcmp(p1->value.s, "lambda")) {
2401 if (!strcmp(p1->value.s, "data")) {
2420 res = alisp_include_file(instance, p1->value.s);
2430 * Syntax: (string-to-integer value)
2431 * 'value' can be integer or float type
2442 p1 = new_integer(instance, floor(p->value.f));
2452 * Syntax: (string-to-float value)
2453 * 'value' can be integer or float type
2464 p1 = new_float(instance, p->value.i);
2503 b = p->value.i;
2522 sprintf(s1, "%li", alisp_compare_type(p, ALISP_OBJ_FLOAT) ? (long)floor(p->value.f) : p->value.i);
2543 sprintf(s1, "%f", alisp_compare_type(p, ALISP_OBJ_FLOAT) ? p->value.f : (double)p->value.i);
2555 return append_to_string(s, len, p->value.s, strlen(p->value.s));
2559 * Syntax: (format format value...)
2575 s = p->value.s;
2705 s1 = p[0]->value.s;
2706 start1 = p[1]->value.i;
2707 end1 = p[2]->value.i;
2708 s2 = p[3]->value.s;
2709 start2 = alisp_compare_type(p[4], ALISP_OBJ_NIL) ? 0 : p[4]->value.i;
2710 end2 = alisp_compare_type(p[5], ALISP_OBJ_NIL) ? start2 + (end1 - start1) : p[5]->value.i;
2779 * Syntax: (rassoc value alist)
2862 idx = p1->value.i;
2876 * Syntax: (rassq value alist)
2911 if (strlen(p->value.s) > 0) {
2912 dump_objects(instance, p->value.s);
2955 if (strlen(p->value.s) > 0) {
2956 dump_obj_lists(instance, p->value.s);
3052 key.name = p1->value.s;
3072 lisp_warn(instance, "function `%s' is undefined", p1->value.s);
3105 if (!strcmp(p1->value.s, "lambda"))
3370 p->value.c.cdr = new_object(instance, ALISP_OBJ_CONS);
3371 p = p->value.c.cdr;
3377 p->value.c.car = obj;
3467 seq = seq->value.c.cdr;
3469 *val = seq->value.i;
3480 alisp_compare_type(seq->value.c.car, ALISP_OBJ_CONS))
3481 seq = seq->value.c.car;
3483 p2 = seq->value.c.car;
3486 if (strcmp(p2->value.s, ptr_id))
3488 p2 = seq->value.c.cdr;
3491 *ptr = (void *)seq->value.ptr;