[BACK]Return to pexpr_body.c CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2000 / io

Diff for /OpenXM_contrib2/asir2000/io/pexpr_body.c between version 1.6 and 1.7

version 1.6, 2004/12/17 03:09:08 version 1.7, 2004/12/18 16:50:10
Line 1 
Line 1 
 /* $OpenXM: OpenXM_contrib2/asir2000/io/pexpr_body.c,v 1.5 2004/12/02 13:48:43 noro Exp $ */  /* $OpenXM: OpenXM_contrib2/asir2000/io/pexpr_body.c,v 1.6 2004/12/17 03:09:08 noro Exp $ */
   
 #define PRINTHAT (fortran_output?PUTS("**"):PUTS("^"))  #define PRINTHAT (fortran_output?PUTS("**"):PUTS("^"))
   
Line 11  void PRINTR();
Line 11  void PRINTR();
 void PRINTLIST();  void PRINTLIST();
 void PRINTVECT();  void PRINTVECT();
 void PRINTMAT();  void PRINTMAT();
   void PRINTIMAT(); /* IMAT */
 void PRINTSTR();  void PRINTSTR();
 void PRINTCOMP();  void PRINTCOMP();
 void PRINTDP();  void PRINTDP();
Line 60  Obj p;
Line 61  Obj p;
                                 PRINTVECT(vl,(VECT)p); break;                                  PRINTVECT(vl,(VECT)p); break;
                         case O_MAT:                          case O_MAT:
                                 PRINTMAT(vl,(MAT)p); break;                                  PRINTMAT(vl,(MAT)p); break;
   /* IMAT */
                           case O_IMAT:
                                   PRINTIMAT(vl,(IMAT)p); break;
   /* IMAT */
                         case O_STR:                          case O_STR:
                                 PRINTSTR((STRING)p); break;                                  PRINTSTR((STRING)p); break;
                         case O_COMP:                          case O_COMP:
Line 289  MAT mat;
Line 294  MAT mat;
                         break;                          break;
         }          }
 }  }
   
   /* IMAT */
   #if !defined(CPRINT)
   void PRINTIMAT(vl,xmat)
   VL vl;
   IMAT xmat;
   {
           int i,j,c;
           int row, col, cr;
           IMATC Im;
           IENT ent;
   
           row = xmat->row;
           col = xmat->col;
           Im = (pointer)xmat->root;
           if ( xmat->clen == 0 ) {
                   for(j = 0; j< row; j++) {
                           PUTS("( ");
                           for(i = 0; i < col; i++) PUTS("0 ");
                           PUTS(")");
                           if ( j < row - 1 ) PUTS("\n");
                   }
                   return;
           }
           c = -1;
           GetNextIent(&Im, &ent, &c);
           for(j = 0; j < row; j++) {
                   PUTS("( ");
                   for(i = 0; i < col; i++) {
                           cr = j * row + i;
                           if( ent.cr == cr ) {
                                   PRINTEXPR(vl, (pointer)ent.body); PUTS(" ");
                                   GetNextIent(&Im, &ent, &c);
                           } else {
                                   PUTS("0 ");
                           }
                   }
                   PUTS(")");
                   if ( j < row - 1 ) PUTS("\n");
           }
   }
   #endif
   /* IMAT */
   
 void PRINTLIST(vl,list)  void PRINTLIST(vl,list)
 VL vl;  VL vl;

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.7

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>