version 1.30, 2004/02/13 05:48:36 |
version 1.31, 2004/02/27 09:13:04 |
|
|
* 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/pexpr.c,v 1.29 2004/02/09 08:23:30 noro Exp $ |
* $OpenXM: OpenXM_contrib2/asir2000/io/pexpr.c,v 1.30 2004/02/13 05:48:36 saito Exp $ |
*/ |
*/ |
#include "ca.h" |
#include "ca.h" |
#include "al.h" |
#include "al.h" |
Line 73 int double_output; |
|
Line 73 int double_output; |
|
int real_digit; |
int real_digit; |
int real_binary; |
int real_binary; |
int print_quote; |
int print_quote; |
|
extern int asir_texmacs; |
|
|
#define TAIL |
#define TAIL |
#define PUTS(s) fputs(s,OUT) |
#define PUTS(s) fputs(s,OUT) |
|
|
#endif |
#endif |
#endif |
#endif |
|
|
|
#define DATA_BEGIN 2 |
|
#define DATA_END 5 |
|
|
|
extern FUNC user_print_function; |
|
|
void PRINTEXPR(vl,p) |
void PRINTEXPR(vl,p) |
VL vl; |
VL vl; |
Obj p; |
Obj p; |
{ |
{ |
|
if ( asir_texmacs && !user_print_function ) printf("\2verbatim:"); |
if ( !p ) { |
if ( !p ) { |
PRINTR(vl,(R)p); |
PRINTR(vl,(R)p); |
return; |
} else |
} |
switch ( OID(p) ) { |
|
case O_N: |
switch ( OID(p) ) { |
PRINTNUM((Num)p); break; |
case O_N: |
case O_P: |
PRINTNUM((Num)p); break; |
PRINTP(vl,(P)p); break; |
case O_P: |
case O_R: |
PRINTP(vl,(P)p); break; |
PRINTR(vl,(R)p); break; |
case O_R: |
case O_LIST: |
PRINTR(vl,(R)p); break; |
PRINTLIST(vl,(LIST)p); break; |
case O_LIST: |
case O_VECT: |
PRINTLIST(vl,(LIST)p); break; |
PRINTVECT(vl,(VECT)p); break; |
case O_VECT: |
case O_MAT: |
PRINTVECT(vl,(VECT)p); break; |
PRINTMAT(vl,(MAT)p); break; |
case O_MAT: |
case O_STR: |
PRINTMAT(vl,(MAT)p); break; |
PRINTSTR((STRING)p); break; |
case O_STR: |
case O_COMP: |
PRINTSTR((STRING)p); break; |
PRINTCOMP(vl,(COMP)p); break; |
case O_COMP: |
case O_DP: |
PRINTCOMP(vl,(COMP)p); break; |
PRINTDP(vl,(DP)p); break; |
case O_DP: |
case O_USINT: |
PRINTDP(vl,(DP)p); break; |
PRINTUI(vl,(USINT)p); break; |
case O_USINT: |
case O_GF2MAT: |
PRINTUI(vl,(USINT)p); break; |
PRINTGF2MAT(vl,(GF2MAT)p); break; |
case O_GF2MAT: |
case O_ERR: |
PRINTGF2MAT(vl,(GF2MAT)p); break; |
|
case O_ERR: |
|
PRINTERR(vl,(ERR)p); break; |
PRINTERR(vl,(ERR)p); break; |
case O_MATHCAP: |
case O_MATHCAP: |
PRINTLIST(vl,((MATHCAP)p)->body); break; |
PRINTLIST(vl,((MATHCAP)p)->body); break; |
case O_F: |
case O_F: |
PRINTLF(vl,(F)p); break; |
PRINTLF(vl,(F)p); break; |
case O_GFMMAT: |
case O_GFMMAT: |
PRINTGFMMAT(vl,(GFMMAT)p); break; |
PRINTGFMMAT(vl,(GFMMAT)p); break; |
case O_BYTEARRAY: |
case O_BYTEARRAY: |
PRINTBYTEARRAY(vl,(BYTEARRAY)p); break; |
PRINTBYTEARRAY(vl,(BYTEARRAY)p); break; |
case O_QUOTE: |
case O_QUOTE: |
PRINTQUOTE(vl,(QUOTE)p); break; |
PRINTQUOTE(vl,(QUOTE)p); break; |
case O_SYMBOL: |
case O_SYMBOL: |
PRINTSYMBOL((SYMBOL)p); break; |
PRINTSYMBOL((SYMBOL)p); break; |
case O_RANGE: |
case O_RANGE: |
PRINTRANGE(vl,(RANGE)p); break; |
PRINTRANGE(vl,(RANGE)p); break; |
default: |
default: |
break; |
break; |
} |
} |
|
if ( asir_texmacs && !user_print_function ) { putchar('\5'); fflush(stdout); } |
} |
} |
|
|
void PRINTN(n) |
void PRINTN(n) |