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

Diff for /OpenXM_contrib2/asir2000/io/bsave.c between version 1.11 and 1.15

version 1.11, 2002/01/08 04:14:38 version 1.15, 2006/08/09 02:40:47
Line 44 
Line 44 
  * OF THE SOFTWARE HAS BEEN DEVELOPED BY A THIRD PARTY, THE THIRD PARTY   * OF THE SOFTWARE HAS BEEN DEVELOPED BY A THIRD PARTY, THE THIRD PARTY
  * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,   * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,
  * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.   * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.
  * $OpenXM: OpenXM_contrib2/asir2000/io/bsave.c,v 1.10 2001/10/09 01:36:20 noro Exp $   * $OpenXM: OpenXM_contrib2/asir2000/io/bsave.c,v 1.14 2004/12/10 07:36:35 noro Exp $
 */  */
 /* saveXXX must not use GC_malloc(), GC_malloc_atomic(). */  /* saveXXX must not use GC_malloc(), GC_malloc_atomic(). */
   
Line 52 
Line 52 
 #include "parse.h"  #include "parse.h"
 #include "com.h"  #include "com.h"
   
 #if PARI  #if defined(PARI)
 #include "genpari.h"  #include "genpari.h"
 int get_lg(GEN);  int get_lg(GEN);
 #endif  #endif
   
   void savenbp(FILE *s,NBP p);
   
 void (*savef[])() = { 0, savenum, savep, saver, savelist, savevect,  void (*savef[])() = { 0, savenum, savep, saver, savelist, savevect,
         savemat, savestring, 0, savedp, saveui, saveerror,0,0,0,savegfmmat, savebytearray };          savemat, savestring, 0, savedp, saveui, saveerror,0,0,0,savegfmmat,
           savebytearray, 0, 0, 0, 0, 0, 0, 0, 0,  savenbp };
 #if defined(INTERVAL)  #if defined(INTERVAL)
 void saveitv();  void saveitv();
 void saveitvd();  void saveitvd();
 void (*nsavef[])() = { saveq, savereal, 0, savebf, saveitv, saveitvd, 0, saveitv, savecplx ,savemi, savelm, savegf2n, savegfpn, savegfs, savegfsn};  void (*nsavef[])() = { saveq, savereal, 0, savebf, saveitv, saveitvd, 0, saveitv, savecplx ,savemi, savelm, savegf2n, savegfpn, savegfs, savegfsn,savedalg};
 #else  #else
 void (*nsavef[])() = { saveq, savereal, 0, savebf, savecplx ,savemi, savelm, savegf2n, savegfpn, savegfs, savegfsn};  void (*nsavef[])() = { saveq, savereal, 0, savebf, savecplx ,savemi, savelm, savegf2n, savegfpn, savegfs, savegfsn,savedalg};
 #endif  #endif
   
 static short zeroval = 0;  static short zeroval = 0;
Line 112  void savereal(FILE *s,Real p)
Line 115  void savereal(FILE *s,Real p)
   
 void savebf(FILE *s,BF p)  void savebf(FILE *s,BF p)
 {  {
 #if PARI  #if defined(PARI)
         GEN z;          GEN z;
         int sign;          int sign;
         unsigned long expo;          unsigned long expo;
         unsigned int len;          unsigned int len,t;
   
         z = (GEN)BDY(p);          z = (GEN)BDY(p);
         sign = signe(z);          sign = signe(z);
Line 201  void savegfsn(FILE *s,GFSN p)
Line 204  void savegfsn(FILE *s,GFSN p)
         write_intarray(s,COEF(BDY(p)),d+1);          write_intarray(s,COEF(BDY(p)),d+1);
 }  }
   
   void savedalg(FILE *s,DAlg p)
   {
           saveobj(s,(Obj)p->nm);
           saveobj(s,(Obj)p->dn);
   }
   
 void savep(FILE *s,P p)  void savep(FILE *s,P p)
 {  {
         DCP dc;          DCP dc;
Line 338  void savebytearray(FILE *s,BYTEARRAY p)
Line 347  void savebytearray(FILE *s,BYTEARRAY p)
 {  {
         write_short(s,&OID(p)); write_int(s,&p->len);          write_short(s,&OID(p)); write_int(s,&p->len);
         write_string(s,p->body,p->len);          write_string(s,p->body,p->len);
   }
   
   void savenbp(FILE *s,NBP p)
   {
           int i,n;
           NODE t;
           NBM m;
   
           write_short(s,&OID(p));
           for ( n = 0, t = BDY(p); t; t = NEXT(t), n++ );
           write_int(s,&n);
           for ( i = 0, t = BDY(p); i < n; t = NEXT(t), i++ ) {
                   m = (NBM)BDY(t);
                   saveobj(s,(Obj)m->c);
                   write_int(s,&m->d);
                   write_intarray(s,m->b,(m->d+31)/32);
           }
 }  }

Legend:
Removed from v.1.11  
changed lines
  Added in v.1.15

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