| 548 | } |
| 549 | |
| 550 | int exprlist_length(leftv v) |
| 551 | { |
| 552 | int rc = 0; |
| 553 | while (v!=NULL) |
| 554 | { |
| 555 | switch (v->Typ()) |
| 556 | { |
| 557 | case INT_CMD: |
| 558 | case POLY_CMD: |
| 559 | case VECTOR_CMD: |
| 560 | case NUMBER_CMD: |
| 561 | rc++; |
| 562 | break; |
| 563 | case INTVEC_CMD: |
| 564 | case INTMAT_CMD: |
| 565 | rc += ((intvec *)(v->Data()))->length(); |
| 566 | break; |
| 567 | case MATRIX_CMD: |
| 568 | case IDEAL_CMD: |
| 569 | case MODUL_CMD: |
| 570 | { |
| 571 | matrix mm = (matrix)(v->Data()); |
| 572 | rc += mm->rows() * mm->cols(); |
| 573 | } |
| 574 | break; |
| 575 | case LIST_CMD: |
| 576 | rc+=((lists)v->Data())->nr+1; |
| 577 | break; |
| 578 | default: |
| 579 | rc++; |
| 580 | } |
| 581 | v = v->next; |
| 582 | } |
| 583 | return rc; |
| 584 | } |
| 585 | |
| 586 | BOOLEAN iiWRITE(leftv,leftv v) |
| 587 | { |
no test coverage detected