ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/microscheme/scheme.c
(Generate patch)

Comparing microscheme/scheme.c (file contents):
Revision 1.14 by root, Thu Nov 26 08:56:32 2015 UTC vs.
Revision 1.15 by root, Thu Nov 26 09:05:20 2015 UTC

4557 pointer d = cdr (x); 4557 pointer d = cdr (x);
4558 int r; 4558 int r;
4559 4559
4560 switch (op) 4560 switch (op)
4561 { 4561 {
4562 case OP_NOT: /* not */ 4562 case OP_NOT: /* not */ r = is_false (a) ; break;
4563 r = is_false (a); break; 4563 case OP_BOOLP: /* boolean? */ r = a == S_F || a == S_T; break;
4564 4564 case OP_EOFOBJP: /* eof-object? */ r = a == S_EOF ; break;
4565 case OP_BOOLP: /* boolean? */ 4565 case OP_NULLP: /* null? */ r = a == NIL ; break;
4566 r = a == S_F || a == S_T; break; 4566 case OP_SYMBOLP: /* symbol? */ r = is_symbol (a) ; break;
4567 4567 case OP_NUMBERP: /* number? */ r = is_number (a) ; break;
4568 case OP_EOFOBJP: /* eof-object? */ 4568 case OP_STRINGP: /* string? */ r = is_string (a) ; break;
4569 r = a == S_EOF; break; 4569 case OP_INTEGERP: /* integer? */ r = is_integer (a) ; break;
4570 4570 case OP_REALP: /* real? */ r = is_number (a) ; break; /* all numbers are real */
4571 case OP_NULLP: /* null? */ 4571 case OP_CHARP: /* char? */ r = is_character (a) ; break;
4572 r = a == NIL; break;
4573
4574 case OP_SYMBOLP: /* symbol? */
4575 r = is_symbol (a); break;
4576
4577 case OP_NUMBERP: /* number? */
4578 r = is_number (a); break;
4579
4580 case OP_STRINGP: /* string? */
4581 r = is_string (a); break;
4582
4583 case OP_INTEGERP: /* integer? */
4584 r = is_integer (a); break;
4585
4586 case OP_REALP: /* real? */
4587 r = is_number (a); break; /* all numbers are real */
4588
4589 case OP_CHARP: /* char? */
4590 r = is_character (a); break;
4591 4572
4592#if USE_CHAR_CLASSIFIERS 4573#if USE_CHAR_CLASSIFIERS
4593 case OP_CHARAP: /* char-alphabetic? */ 4574 case OP_CHARAP: /* char-alphabetic? */ r = Cisalpha (ivalue (a)); break;
4594 r = Cisalpha (ivalue (a)); break; 4575 case OP_CHARNP: /* char-numeric? */ r = Cisdigit (ivalue (a)); break;
4595
4596 case OP_CHARNP: /* char-numeric? */
4597 r = Cisdigit (ivalue (a)); break;
4598
4599 case OP_CHARWP: /* char-whitespace? */ 4576 case OP_CHARWP: /* char-whitespace? */ r = Cisspace (ivalue (a)); break;
4600 r = Cisspace (ivalue (a)); break;
4601
4602 case OP_CHARUP: /* char-upper-case? */ 4577 case OP_CHARUP: /* char-upper-case? */ r = Cisupper (ivalue (a)); break;
4603 r = Cisupper (ivalue (a)); break;
4604
4605 case OP_CHARLP: /* char-lower-case? */ 4578 case OP_CHARLP: /* char-lower-case? */ r = Cislower (ivalue (a)); break;
4606 r = Cislower (ivalue (a)); break;
4607#endif 4579#endif
4608 4580
4609#if USE_PORTS 4581#if USE_PORTS
4610 case OP_PORTP: /* port? */ 4582 case OP_PORTP: /* port? */ r = is_port (a) ; break;
4611 r = is_port (a); break;
4612
4613 case OP_INPORTP: /* input-port? */ 4583 case OP_INPORTP: /* input-port? */ r = is_inport (a) ; break;
4614 r = is_inport (a); break;
4615
4616 case OP_OUTPORTP: /* output-port? */ 4584 case OP_OUTPORTP: /* output-port? */ r = is_outport (a); break;
4617 r = is_outport (a); break;
4618#endif 4585#endif
4619 4586
4620 case OP_PROCP: /* procedure? */ 4587 case OP_PROCP: /* procedure? */
4621 4588
4622 /*-- 4589 /*--
4625 * in R^3 report sec. 6.9 4592 * in R^3 report sec. 6.9
4626 */ 4593 */
4627 r = is_proc (a) || is_closure (a) || is_continuation (a) || is_foreign (a); 4594 r = is_proc (a) || is_closure (a) || is_continuation (a) || is_foreign (a);
4628 break; 4595 break;
4629 4596
4630 case OP_PAIRP: /* pair? */ 4597 case OP_PAIRP: /* pair? */ r = is_pair (a) ; break;
4631 r = is_pair (a); break; 4598 case OP_LISTP: /* list? */ r = list_length (SCHEME_A_ a) >= 0; break;
4632 4599 case OP_ENVP: /* environment? */ r = is_environment (a) ; break;
4633 case OP_LISTP: /* list? */ 4600 case OP_VECTORP: /* vector? */ r = is_vector (a) ; break;
4634 r = list_length (SCHEME_A_ a) >= 0; break; 4601 case OP_EQ: /* eq? */ r = a == cadr (x) ; break;
4635 4602 case OP_EQV: /* eqv? */ r = eqv (a, cadr (x)) ; break;
4636 case OP_ENVP: /* environment? */
4637 r = is_environment (a); break;
4638
4639 case OP_VECTORP: /* vector? */
4640 r = is_vector (a); break;
4641
4642 case OP_EQ: /* eq? */
4643 r = a == cadr (x); break;
4644
4645 case OP_EQV: /* eqv? */
4646 r = eqv (a, cadr (x)); break;
4647 } 4603 }
4648 4604
4649 s_retbool (r); 4605 s_retbool (r);
4650} 4606}
4651 4607

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines