=================================================================== RCS file: /home/cvs/OpenXM/src/kan96xx/Kan/extern.h,v retrieving revision 1.17 retrieving revision 1.25 diff -u -p -r1.17 -r1.25 --- OpenXM/src/kan96xx/Kan/extern.h 2004/05/13 04:38:28 1.17 +++ OpenXM/src/kan96xx/Kan/extern.h 2004/09/11 01:00:42 1.25 @@ -1,4 +1,4 @@ -/* $OpenXM: OpenXM/src/kan96xx/Kan/extern.h,v 1.16 2003/12/06 02:49:22 takayama Exp $ */ +/* $OpenXM: OpenXM/src/kan96xx/Kan/extern.h,v 1.24 2004/09/09 11:42:22 takayama Exp $ */ /*********** global variables for module stackmachine***************/ extern int VerboseStack; extern int DebugStack; @@ -90,6 +90,12 @@ void KsetContext(struct object contextobj); void contextControl(actionOfContextControl ctl); struct object getSuperContext(struct object contextObj) ; +/* stackmachine.c back-trace */ +void tracePushName(char *s); +void traceClearStack(void); +char *tracePopName(void); +char *traceShowStack(void); + /* kclass.c */ int initClassDataBase(); void fprintClass(FILE *fp,struct object ob); @@ -122,6 +128,12 @@ struct object *cdr(struct object *list); void printObjectList(struct object *op); int memberQ(struct object *list1,struct object list2); +struct object KvJoin(struct object listo1,struct object listo2); +struct object Kcar(struct object listo); +struct object Kcdr(struct object listo); +struct object KlistToArray(struct object listo); +struct object KarrayToList(struct object ob); + /* list:conversion */ struct object listToArray(struct object *op); struct object *arrayToList(struct object ob); @@ -157,6 +169,7 @@ struct object KooLess(struct object o1,struct object o /** Conversion */ struct object KdataConversion(struct object ob1, char *key); +struct object Kto_int32(struct object ob); struct object KpoInteger(int i); struct object KpoString(char *s); struct object KpoPOLY(POLY f); @@ -165,6 +178,7 @@ struct object KpoMatrixOfPOLY(struct matrixOfPOLY *mp) struct object KpoRingp(struct ring *ringp); struct object KpoDouble(double a); struct object KpoUniversalNumber(struct coeff *u); +struct object KintToUniversalNumber(int n); #define KopInteger(o) ( (o).lc.ival ) #define KopString(o) ( (o).lc.str ) #define KopPOLY(o) ( (o).lc.poly ) @@ -223,6 +237,9 @@ struct object test(struct object ob); struct object Kextension(struct object ob); struct object KgbExtension(struct object ob); struct object KmpzExtension(struct object ob); +struct object Krest(struct object ob); +struct object Kjoin(struct object ob1, struct object ob2); +struct object Kget(struct object ob1, struct object ob2); /** Utilities */ char *KremoveSpace(char *s); @@ -259,6 +276,7 @@ struct object KisOrdered(struct object of); struct object KvectorToSchreyer_es(struct object obarray); POLY objArrayToPOLY(struct object ob); struct object POLYtoObjArray(POLY f,int size); +struct object KgetExponents(struct object obPoly,struct object type); /* hilbert.c */ struct object hilberto(struct object obgb,struct object obvlist);