[BACK]Return to parse.h CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2000 / parse

Diff for /OpenXM_contrib2/asir2000/parse/parse.h between version 1.39 and 1.55

version 1.39, 2005/09/30 01:35:25 version 1.55, 2015/08/14 13:51:56
Line 45 
Line 45 
  * 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/parse/parse.h,v 1.38 2005/09/21 23:39:32 noro Exp $   * $OpenXM: OpenXM_contrib2/asir2000/parse/parse.h,v 1.54 2015/08/06 10:01:53 fujimoto Exp $
 */  */
 # if defined(VISUAL)  # if defined(VISUAL) || defined(__MINGW32__)
 #include <time.h>  #include <time.h>
 #else  #else
 #include <sys/time.h>  #include <sys/time.h>
Line 69  typedef enum {
Line 69  typedef enum {
         I_FORMULA, I_LIST, I_STR, I_NEWCOMP, I_CAR, I_CDR, I_CAST,          I_FORMULA, I_LIST, I_STR, I_NEWCOMP, I_CAR, I_CDR, I_CAST,
         I_INDEX, I_EV, I_TIMER, I_GF2NGEN, I_GFPNGEN, I_GFSNGEN,          I_INDEX, I_EV, I_TIMER, I_GF2NGEN, I_GFPNGEN, I_GFSNGEN,
         I_LOP, I_OPT, I_GETOPT, I_POINT, I_PAREN, I_MINUS,          I_LOP, I_OPT, I_GETOPT, I_POINT, I_PAREN, I_MINUS,
         I_NARYOP, I_CONS          I_NARYOP, I_CONS, I_FUNC_QARG, I_FUNC_HEAD,
 } fid;  } fid;
   
 /* identifiers for statements */  /* identifiers for statements */
Line 123  typedef struct oPV {
Line 123  typedef struct oPV {
 typedef struct oINFILE {  typedef struct oINFILE {
         char *name;          char *name;
         FILE *fp;          FILE *fp;
           JMP_BUF jmpbuf;
           int ready_for_longjmp;
         int ln;          int ln;
         struct oINFILE *next;          struct oINFILE *next;
         char *tname;          char *tname;
Line 136  struct oTKWD {
Line 138  struct oTKWD {
 };  };
   
 typedef struct fid_spec {  typedef struct fid_spec {
     fid id;          fid id;
         farg_type type[10];          farg_type type[10];
 } *fid_spec_p;  } *fid_spec_p;
   
Line 194  typedef struct oPFINS {
Line 196  typedef struct oPFINS {
 #define NEWPF(p) ((p)=(PF)MALLOC(sizeof(struct oPF)))  #define NEWPF(p) ((p)=(PF)MALLOC(sizeof(struct oPF)))
   
 typedef struct oFNODE {  typedef struct oFNODE {
         fid id;          short id;
           unsigned normalized:1;
           unsigned expanded:2;
           unsigned coef:1;
         pointer arg[1];          pointer arg[1];
 } *FNODE;  } *FNODE;
   
Line 274  switch ( id ) {\
Line 279  switch ( id ) {\
   
 #define DEFSIZE 32  #define DEFSIZE 32
 #define PVGLOBAL(i) (((unsigned int)(i))|(1<<30))  #define PVGLOBAL(i) (((unsigned int)(i))|(1<<30))
 #define PVMGLOBAL(i) (((unsigned int)(i))|(3<<30))  #define PVMGLOBAL(i) (((unsigned int)(i))|(2<<30))
   #define PVPATTERN(i) (((unsigned int)(i))|(3<<30))
 #define PVATTR(i) (((unsigned int)(i))>>30)  #define PVATTR(i) (((unsigned int)(i))>>30)
 #define PVIND(i) (((unsigned int)(i))&0x3fffffff)  #define PVIND(i) (((unsigned int)(i))&0x3fffffff)
 #define GETPV(i,p) \  #define GETPV(i,p) \
 (PVATTR(i)==0?(int)((p)=CPVS->va[(unsigned int)(i)].priv)\  (PVATTR(i)==0?(int)((p)=CPVS->va[(unsigned int)(i)].priv)\
              :PVATTR(i)==1?(int)((p)=GPVS->va[PVIND(i)].priv)\     :PVATTR(i)==1?(int)((p)=GPVS->va[PVIND(i)].priv)\
                           :(int)((p)=MPVS->va[PVIND(i)].priv))        :PVATTR(i)==2?(int)((p)=MPVS->va[PVIND(i)].priv)\
            :(int)((p)=PPVS->va[PVIND(i)].priv))
   
 #define GETPVREF(i,p) \  #define GETPVREF(i,p) \
 (PVATTR(i)==0?(int)((p)=&(CPVS->va[(unsigned int)(i)].priv))\  (PVATTR(i)==0?(int)((p)=&(CPVS->va[(unsigned int)(i)].priv))\
              :PVATTR(i)==1?(int)((p)=&(GPVS->va[PVIND(i)].priv))\     :PVATTR(i)==1?(int)((p)=&(GPVS->va[PVIND(i)].priv))\
                           :(int)((p)=&(MPVS->va[PVIND(i)].priv)))        :PVATTR(i)==2?(int)((p)=&(MPVS->va[PVIND(i)].priv))\
            :(int)((p)=&(PPVS->va[PVIND(i)].priv)))
   
 #define GETPVNAME(i,p) \  #define GETPVNAME(i,p) \
 (PVATTR(i)==0?(int)((p)=CPVS->va[(unsigned int)(i)].name)\  (PVATTR(i)==0?(int)((p)=CPVS->va[(unsigned int)(i)].name)\
              :PVATTR(i)==1?(int)((p)=GPVS->va[PVIND(i)].name)\     :PVATTR(i)==1?(int)((p)=GPVS->va[PVIND(i)].name)\
                           :(int)((p)=MPVS->va[PVIND(i)].name))        :PVATTR(i)==2?(int)((p)=MPVS->va[PVIND(i)].name)\
            :(int)((p)=PPVS->va[PVIND(i)].name))
   
 #define ASSPV(i,p) \  #define ASSPV(i,p) \
 (PVATTR(i)==0?(int)(CPVS->va[(unsigned int)(i)].priv=(pointer)(p))\  (PVATTR(i)==0?(int)(CPVS->va[(unsigned int)(i)].priv=(pointer)(p))\
              :PVATTR(i)==1?(int)(GPVS->va[PVIND(i)].priv=(pointer)(p))\     :PVATTR(i)==1?(int)(GPVS->va[PVIND(i)].priv=(pointer)(p))\
                           :(int)(MPVS->va[PVIND(i)].priv=(pointer)(p)))        :PVATTR(i)==2?(int)(MPVS->va[PVIND(i)].priv=(pointer)(p))\
            :(int)(PPVS->va[PVIND(i)].priv=(pointer)(p)))
   
 #define NEWNODE2(a) ((a)=(NODE2)MALLOC(sizeof(struct oNODE2)))  #define NEWNODE2(a) ((a)=(NODE2)MALLOC(sizeof(struct oNODE2)))
 #define MKNODE2(a,b,c,d) \  #define MKNODE2(a,b,c,d) \
Line 300  switch ( id ) {\
Line 313  switch ( id ) {\
 #define BDY1(a) ((a)->body1)  #define BDY1(a) ((a)->body1)
 #define BDY2(a) ((a)->body2)  #define BDY2(a) ((a)->body2)
   
 extern VS GPVS,CPVS,EPVS,APVS,MPVS;  extern VS GPVS,CPVS,EPVS,APVS,MPVS,PPVS;
 extern MODULE CUR_MODULE;  extern MODULE CUR_MODULE;
 extern NODE MODULE_LIST;  extern NODE MODULE_LIST;
 extern char *CUR_FUNC;  extern char *CUR_FUNC;
Line 328  extern NODE current_option;
Line 341  extern NODE current_option;
 #define fflush w_fflush  #define fflush w_fflush
 #endif  #endif
   
 #if defined(__GNUC__) || defined(VISUAL) || (defined(__MACH__) && defined(__ppc__)) || defined(__FreeBSD__)  #if defined(__GNUC__) || defined(VISUAL) || defined(__MINGW32__) || (defined(__MACH__) && defined(__ppc__)) || defined(__FreeBSD__)
 NODE mknode(int,...);  NODE mknode(int,...);
 FNODE mkfnode(int,fid,...);  FNODE mkfnode(int,fid,...);
 SNODE mksnode(int,sid,...);  SNODE mksnode(int,sid,...);
Line 454  void tty_reset(void);
Line 467  void tty_reset(void);
 void set_timer(int);  void set_timer(int);
 void reset_timer(void);  void reset_timer(void);
 void int_handler(int);  void int_handler(int);
 void int_handler(int);  
 void segv_handler(int);  void segv_handler(int);
 void bus_handler(int);  void bus_handler(int);
 void fpe_handler(int);  void fpe_handler(int);
Line 473  int yyparse(void);
Line 485  int yyparse(void);
 void nodetod(NODE,DP *);  void nodetod(NODE,DP *);
 void poppvs(void);  void poppvs(void);
 int length(NODE);  int length(NODE);
 int get_heapsize(void);  size_t get_heapsize(void);
 int searchpvar(char *);  int searchpvar(char *);
 void mkparif(char *,FUNC *);  void mkparif(char *,FUNC *);
 void makevar(char *,P *);  void makevar(char *,P *);
Line 502  void printv(VL,V);
Line 514  void printv(VL,V);
 void sprintv(VL,V);  void sprintv(VL,V);
 int arf_comp(VL, Obj, Obj);  int arf_comp(VL, Obj, Obj);
 int complist(VL, LIST, LIST);  int complist(VL, LIST, LIST);
 int complist(VL, LIST, LIST);  
 int getcompsize(int);  int getcompsize(int);
 int getpvar(VS,char *,int);  int getpvar(VS,char *,int);
 int getpvar(VS,char *,int);  
 int gettype(unsigned int);  int gettype(unsigned int);
 int indextotype(int,int);  int indextotype(int,int);
 int loadfile(char *);  int loadfile(char *);
Line 641  void dp_mbase(NODE hlist,NODE *mbase);
Line 651  void dp_mbase(NODE hlist,NODE *mbase);
 void dp_idiv(DP p,Q c,DP *rp);  void dp_idiv(DP p,Q c,DP *rp);
 void dp_ptozp2(DP p0,DP p1,DP *hp,DP *rp);  void dp_ptozp2(DP p0,DP p1,DP *hp,DP *rp);
 void dp_ptozp(DP p,DP *rp);  void dp_ptozp(DP p,DP *rp);
 int eqdl(int nv,DL dl1,DL dl2);  
 void _dpmod_to_vect(DP f,DL *at,int *b);  void _dpmod_to_vect(DP f,DL *at,int *b);
 void _tf_to_vect_compress(NODE tf,DL *at,CDP *b);  void _tf_to_vect_compress(NODE tf,DL *at,CDP *b);
 void dp_to_vect(DP f,DL *at,Q *b);  void dp_to_vect(DP f,DL *at,Q *b);
Line 813  void prompt() ;
Line 822  void prompt() ;
 void sprompt(char *ptr);  void sprompt(char *ptr);
 void process_args(int ac,char **av);  void process_args(int ac,char **av);
 void sig_init() ;  void sig_init() ;
 static void (*old_int)(int);;  
 void asir_save_handler() ;  void asir_save_handler() ;
 void asir_set_handler() ;  void asir_set_handler() ;
 void asir_reset_handler() ;  void asir_reset_handler() ;
Line 882  pointer evalmapf(FUNC f,FNODE a);
Line 890  pointer evalmapf(FUNC f,FNODE a);
 pointer eval_rec_mapf(FUNC f,FNODE a);  pointer eval_rec_mapf(FUNC f,FNODE a);
 pointer beval_rec_mapf(FUNC f,NODE node);  pointer beval_rec_mapf(FUNC f,NODE node);
 pointer bevalf(FUNC f,NODE a);  pointer bevalf(FUNC f,NODE a);
 pointer evalif(FNODE f,FNODE a);  pointer bevalf_with_opts(FUNC f,NODE a,NODE opts);
   pointer evalif(FNODE f,FNODE a,FNODE opt);
 pointer evalpf(PF pf,NODE args,NODE deriv);  pointer evalpf(PF pf,NODE args,NODE deriv);
 void evalnodebody(NODE sn,NODE *dnp);  void evalnodebody(NODE sn,NODE *dnp);
 void gen_searchf(char *name,FUNC *r);  void gen_searchf(char *name,FUNC *r);

Legend:
Removed from v.1.39  
changed lines
  Added in v.1.55

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