version 1.9, 2005/09/28 08:08:34 |
version 1.20, 2017/08/31 02:36:21 |
|
|
/* $OpenXM: OpenXM_contrib2/asir2000/io/pexpr_body.c,v 1.8 2005/01/17 07:43:24 saito Exp $ */ |
/* $OpenXM: OpenXM_contrib2/asir2000/io/pexpr_body.c,v 1.19 2016/06/29 08:16:11 ohara Exp $ */ |
|
|
#define PRINTHAT (fortran_output?PUTS("**"):PUTS("^")) |
#define PRINTHAT (fortran_output?PUTS("**"):PUTS("^")) |
|
|
Line 15 void PRINTIMAT(); /* IMAT */ |
|
Line 15 void PRINTIMAT(); /* IMAT */ |
|
void PRINTSTR(); |
void PRINTSTR(); |
void PRINTCOMP(); |
void PRINTCOMP(); |
void PRINTDP(); |
void PRINTDP(); |
|
void PRINTDPM(); |
void PRINTUI(); |
void PRINTUI(); |
void PRINTGF2MAT(); |
void PRINTGF2MAT(); |
void PRINTGFMMAT(); |
void PRINTGFMMAT(); |
void PRINTBYTEARRAY(); |
void PRINTBYTEARRAY(); |
void PRINTQUOTE(); |
void PRINTQUOTE(); |
void PRINTQUOTEARG(); |
void PRINTQUOTEARG(); |
|
void PRINTNBP(); |
void PRINTERR(); |
void PRINTERR(); |
void PRINTCPLX(); |
void PRINTCPLX(); |
void PRINTLM(); |
void PRINTLM(); |
|
|
PRINTCOMP(vl,(COMP)p); break; |
PRINTCOMP(vl,(COMP)p); break; |
case O_DP: |
case O_DP: |
PRINTDP(vl,(DP)p); break; |
PRINTDP(vl,(DP)p); break; |
|
case O_DPM: |
|
PRINTDPM(vl,(DPM)p); break; |
case O_USINT: |
case O_USINT: |
PRINTUI(vl,(USINT)p); break; |
PRINTUI(vl,(USINT)p); break; |
case O_GF2MAT: |
case O_GF2MAT: |
|
|
PRINTQUOTE(vl,(QUOTE)p); break; |
PRINTQUOTE(vl,(QUOTE)p); break; |
case O_QUOTEARG: |
case O_QUOTEARG: |
PRINTQUOTEARG(vl,(QUOTEARG)p); break; |
PRINTQUOTEARG(vl,(QUOTEARG)p); break; |
|
case O_NBP: |
|
PRINTNBP(vl,(NBP)p); break; |
case O_SYMBOL: |
case O_SYMBOL: |
PRINTSYMBOL((SYMBOL)p); break; |
PRINTSYMBOL((SYMBOL)p); break; |
case O_RANGE: |
case O_RANGE: |
Line 613 void PRINTFNODE(FNODE f,int paren) |
|
Line 619 void PRINTFNODE(FNODE f,int paren) |
|
/* lists */ |
/* lists */ |
case I_LIST: PUTS("["); PRINTFNODENODE((NODE)FA0(f)); PUTS("]"); break; |
case I_LIST: PUTS("["); PRINTFNODENODE((NODE)FA0(f)); PUTS("]"); break; |
/* function */ |
/* function */ |
case I_FUNC: |
case I_FUNC: case I_FUNC_QARG: |
if ( !strcmp(((FUNC)FA0(f))->name,"@pi") ) PUTS("@pi"); |
if ( !strcmp(((FUNC)FA0(f))->name,"@pi") ) PUTS("@pi"); |
else if ( !strcmp(((FUNC)FA0(f))->name,"@e") ) PUTS("@e"); |
else if ( !strcmp(((FUNC)FA0(f))->name,"@e") ) PUTS("@e"); |
else { |
else { |
|
|
int i,expo; |
int i,expo; |
|
|
m = (unsigned int *)&BDY((Real)q); |
m = (unsigned int *)&BDY((Real)q); |
#if defined(__i386__) || defined(MIPSEL) || defined(VISUAL) || defined(__alpha) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__x86_64) |
#if defined(__i386__) || defined(MIPSEL) || defined(VISUAL) || defined(__MINGW32__) || defined(__alpha) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__x86_64) || defined(__ARM_ARCH) || defined(ANDROID) |
u = m[1]; l = m[0]; |
u = m[1]; l = m[0]; |
#else |
#else |
u = m[0]; l = m[1]; |
u = m[0]; l = m[1]; |
|
|
case N_A: |
case N_A: |
PUTS("("); PRINTR(ALG,(R)BDY((Alg)q)); PUTS(")"); |
PUTS("("); PRINTR(ALG,(R)BDY((Alg)q)); PUTS(")"); |
break; |
break; |
#if defined(PARI) |
|
case N_B: |
case N_B: |
PRINTBF((BF)q); break; |
PRINTBF((BF)q); break; |
#endif |
|
#if defined(INTERVAL) |
#if defined(INTERVAL) |
case N_IP: |
case N_IP: |
case N_IntervalBigFloat: |
case N_IntervalBigFloat: |
|
|
PRINTN(NM(dn)); |
PRINTN(NM(dn)); |
} |
} |
break; |
break; |
|
case N_GZ: |
|
mpz_out_str(OUT,10,BDY((GZ)q)); |
|
break; |
|
case N_GQ: |
|
mpq_out_str(OUT,10,BDY((GQ)q)); |
|
break; |
} |
} |
} |
} |
|
|
|
|
} |
} |
} |
} |
|
|
|
void PRINTDPM(vl,d) |
|
VL vl; |
|
DPM d; |
|
{ |
|
int n,i; |
|
DMM m; |
|
DL dl; |
|
|
|
for ( n = d->nv, m = BDY(d); m; m = NEXT(m) ) { |
|
PUTS("("); PRINTEXPR(vl,(pointer)m->c); PUTS(")*<<"); |
|
for ( i = 0, dl = m->dl; i < n-1; i++ ) { |
|
TAIL PRINTF(OUT,"%d,",dl->d[i]); |
|
} |
|
TAIL PRINTF(OUT,"%d:%d",dl->d[i],m->pos); |
|
PUTS(">>"); |
|
if ( NEXT(m) ) |
|
PUTS("+"); |
|
} |
|
} |
|
|
void PRINTUI(vl,u) |
void PRINTUI(vl,u) |
VL vl; |
VL vl; |
USINT u; |
USINT u; |
|
|
QUOTEARG quote; |
QUOTEARG quote; |
{ |
{ |
PUTS("<...quoted...>"); |
PUTS("<...quoted...>"); |
|
} |
|
|
|
void PRINTNBP(VL vl,NBP p) |
|
{ |
|
NODE t; |
|
NBM m; |
|
int d,i; |
|
unsigned int *b; |
|
if ( !p ) PUTS("0"); |
|
else { |
|
for ( t = BDY(p); t; t = NEXT(t) ) { |
|
m = (NBM)BDY(t); |
|
PUTS("("); |
|
PRINTEXPR(vl,(Obj)m->c); |
|
PUTS(")*"); |
|
d = m->d; |
|
b = m->b; |
|
if ( d ) |
|
for ( i = 0; i < d; i++ ) { |
|
if ( NBM_GET(b,i) ) PUTS("x"); |
|
else PUTS("y"); |
|
} |
|
else PUTS("1"); |
|
if ( NEXT(t) ) PUTS("+"); |
|
} |
|
} |
} |
} |
|
|
void PRINTTB(VL vl,TB p) |
void PRINTTB(VL vl,TB p) |