亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? factcom.c

?? clips源代碼
?? C
?? 第 1 頁 / 共 3 頁
字號:
  {   int tempValue1, tempValue2, tempValue3;   struct fact *theFact;   FILE *filePtr;   struct defmodule *theModule;   DATA_OBJECT_PTR theDOArray;   int count, i, printFact, error;   /*======================================================*/   /* Open the file. Use either "fast save" or I/O Router. */   /*======================================================*/   if ((filePtr = GenOpen(theEnv,fileName,"w")) == NULL)     {      OpenErrorMessage(theEnv,"save-facts",fileName);      return(FALSE);     }   SetFastSave(theEnv,filePtr);   /*===========================================*/   /* Set the print flags so that addresses and */   /* strings are printed properly to the file. */   /*===========================================*/   tempValue1 = PrintUtilityData(theEnv)->PreserveEscapedCharacters;   PrintUtilityData(theEnv)->PreserveEscapedCharacters = TRUE;   tempValue2 = PrintUtilityData(theEnv)->AddressesToStrings;   PrintUtilityData(theEnv)->AddressesToStrings = TRUE;   tempValue3 = PrintUtilityData(theEnv)->InstanceAddressesToNames;   PrintUtilityData(theEnv)->InstanceAddressesToNames = TRUE;   /*===================================================*/   /* Determine the list of specific facts to be saved. */   /*===================================================*/   theDOArray = GetSaveFactsDeftemplateNames(theEnv,theList,saveCode,&count,&error);   if (error)     {      PrintUtilityData(theEnv)->PreserveEscapedCharacters = tempValue1;      PrintUtilityData(theEnv)->AddressesToStrings = tempValue2;      PrintUtilityData(theEnv)->InstanceAddressesToNames = tempValue3;      GenClose(theEnv,filePtr);      SetFastSave(theEnv,NULL);      return(FALSE);     }   /*=================*/   /* Save the facts. */   /*=================*/   theModule = ((struct defmodule *) EnvGetCurrentModule(theEnv));   for (theFact = (struct fact *) GetNextFactInScope(theEnv,NULL);        theFact != NULL;        theFact = (struct fact *) GetNextFactInScope(theEnv,theFact))     {      /*===========================================================*/      /* If we're doing a local save and the facts's corresponding */      /* deftemplate isn't in the current module, then don't save  */      /* the fact.                                                 */      /*===========================================================*/      if ((saveCode == LOCAL_SAVE) &&          (theFact->whichDeftemplate->header.whichModule->theModule != theModule))        { printFact = FALSE; }      /*=====================================================*/      /* Otherwise, if the list of facts to be printed isn't */      /* restricted, then set the print flag to TRUE.        */      /*=====================================================*/      else if (theList == NULL)        { printFact = TRUE; }      /*=======================================================*/      /* Otherwise see if the fact's corresponding deftemplate */      /* is in the list of deftemplates whose facts are to be  */      /* saved. If it's in the list, then set the print flag   */      /* to TRUE, otherwise set it to FALSE.                   */      /*=======================================================*/      else        {         printFact = FALSE;         for (i = 0; i < count; i++)           {            if (theDOArray[i].value == (void *) theFact->whichDeftemplate)              {               printFact = TRUE;               break;              }           }        }      /*===================================*/      /* If the print flag is set to TRUE, */      /* then save the fact to the file.   */      /*===================================*/      if (printFact)        {         PrintFact(theEnv,(char *) filePtr,theFact,FALSE,FALSE);         EnvPrintRouter(theEnv,(char *) filePtr,"\n");        }     }   /*==========================*/   /* Restore the print flags. */   /*==========================*/   PrintUtilityData(theEnv)->PreserveEscapedCharacters = tempValue1;   PrintUtilityData(theEnv)->AddressesToStrings = tempValue2;   PrintUtilityData(theEnv)->InstanceAddressesToNames = tempValue3;   /*=================*/   /* Close the file. */   /*=================*/   GenClose(theEnv,filePtr);   SetFastSave(theEnv,NULL);   /*==================================*/   /* Free the deftemplate name array. */   /*==================================*/   if (theList != NULL) rm3(theEnv,theDOArray,(long) sizeof(DATA_OBJECT) * count);   /*===================================*/   /* Return TRUE to indicate no errors */   /* occurred while saving the facts.  */   /*===================================*/   return(TRUE);  }/*******************************************************************//* GetSaveFactsDeftemplateNames: Retrieves the list of deftemplate *//*   names for saving specific facts with the save-facts command.  *//*******************************************************************/static DATA_OBJECT_PTR GetSaveFactsDeftemplateNames(  void *theEnv,  struct expr *theList,  int saveCode,  int *count,  int *error)  {   struct expr *tempList;   DATA_OBJECT_PTR theDOArray;   int i, tempCount;   struct deftemplate *theDeftemplate = NULL;   /*=============================*/   /* Initialize the error state. */   /*=============================*/   *error = FALSE;   /*=====================================================*/   /* If no deftemplate names were specified as arguments */   /* then the deftemplate name list is empty.            */   /*=====================================================*/   if (theList == NULL)     {      *count = 0;      return(NULL);     }   /*======================================*/   /* Determine the number of deftemplate  */   /* names to be stored in the name list. */   /*======================================*/   for (tempList = theList, *count = 0;        tempList != NULL;        tempList = tempList->nextArg, (*count)++)     { /* Do Nothing */ }   /*=========================================*/   /* Allocate the storage for the name list. */   /*=========================================*/   theDOArray = (DATA_OBJECT_PTR) gm3(theEnv,(long) sizeof(DATA_OBJECT) * *count);   /*=====================================*/   /* Loop through each of the arguments. */   /*=====================================*/   for (tempList = theList, i = 0;        i < *count;        tempList = tempList->nextArg, i++)     {      /*========================*/      /* Evaluate the argument. */      /*========================*/      EvaluateExpression(theEnv,tempList,&theDOArray[i]);      if (EvaluationData(theEnv)->EvaluationError)        {         *error = TRUE;         rm3(theEnv,theDOArray,(long) sizeof(DATA_OBJECT) * *count);         return(NULL);        }      /*======================================*/      /* A deftemplate name must be a symbol. */      /*======================================*/      if (theDOArray[i].type != SYMBOL)        {         *error = TRUE;         ExpectedTypeError1(theEnv,"save-facts",3+i,"symbol");         rm3(theEnv,theDOArray,(long) sizeof(DATA_OBJECT) * *count);         return(NULL);        }      /*===================================================*/      /* Find the deftemplate. For a local save, look only */      /* in the current module. For a visible save, look   */      /* in all visible modules.                           */      /*===================================================*/      if (saveCode == LOCAL_SAVE)        {         theDeftemplate = (struct deftemplate *)                         EnvFindDeftemplate(theEnv,ValueToString(theDOArray[i].value));         if (theDeftemplate == NULL)           {            *error = TRUE;            ExpectedTypeError1(theEnv,"save-facts",3+i,"local deftemplate name");            rm3(theEnv,theDOArray,(long) sizeof(DATA_OBJECT) * *count);            return(NULL);           }        }      else if (saveCode == VISIBLE_SAVE)        {         theDeftemplate = (struct deftemplate *)           FindImportedConstruct(theEnv,"deftemplate",NULL,                                 ValueToString(theDOArray[i].value),                                 &tempCount,TRUE,NULL);         if (theDeftemplate == NULL)           {            *error = TRUE;            ExpectedTypeError1(theEnv,"save-facts",3+i,"visible deftemplate name");            rm3(theEnv,theDOArray,(long) sizeof(DATA_OBJECT) * *count);            return(NULL);           }        }      /*==================================*/      /* Add a pointer to the deftemplate */      /* to the array being created.      */      /*==================================*/      theDOArray[i].type = DEFTEMPLATE_PTR;      theDOArray[i].value = (void *) theDeftemplate;     }   /*===================================*/   /* Return the array of deftemplates. */   /*===================================*/   return(theDOArray);  }/**************************************************************//* EnvLoadFacts: C access routine for the load-facts command. *//**************************************************************/globle intBool EnvLoadFacts(  void *theEnv,  char *fileName)  {   FILE *filePtr;   struct token theToken;   struct expr *testPtr;   DATA_OBJECT rv;   /*======================================================*/   /* Open the file. Use either "fast save" or I/O Router. */   /*======================================================*/   if ((filePtr = GenOpen(theEnv,fileName,"r")) == NULL)     {      OpenErrorMessage(theEnv,"load-facts",fileName);      return(FALSE);     }   SetFastLoad(theEnv,filePtr);   /*=================*/   /* Load the facts. */   /*=================*/   theToken.type = LPAREN;   while (theToken.type != STOP)     {      testPtr = StandardLoadFact(theEnv,(char *) filePtr,&theToken);      if (testPtr == NULL) theToken.type = STOP;      else EvaluateExpression(theEnv,testPtr,&rv);      ReturnExpression(theEnv,testPtr);     }   /*=================*/   /* Close the file. */   /*=================*/   SetFastLoad(theEnv,NULL);   GenClose(theEnv,filePtr);   /*================================================*/   /* Return TRUE if no error occurred while loading */   /* the facts, otherwise return FALSE.             */   /*================================================*/   if (EvaluationData(theEnv)->EvaluationError) return(FALSE);   return(TRUE);  }/*********************************************//* EnvLoadFactsFromString: C access routine. *//*********************************************/globle intBool EnvLoadFactsFromString(  void *theEnv,  char *theString,  int theMax)  {   char * theStrRouter = "*** load-facts-from-string ***";   struct token theToken;   struct expr *testPtr;   DATA_OBJECT rv;   /*==========================*/   /* Initialize string router */   /*==========================*/   if ((theMax == -1) ? (!OpenStringSource(theEnv,theStrRouter,theString,0)) :                        (!OpenTextSource(theEnv,theStrRouter,theString,0,(unsigned) theMax)))     return(FALSE);   /*=================*/   /* Load the facts. */   /*=================*/   theToken.type = LPAREN;   while (theToken.type != STOP)     {      testPtr = StandardLoadFact(theEnv,theStrRouter,&theToken);      if (testPtr == NULL) theToken.type = STOP;      else EvaluateExpression(theEnv,testPtr,&rv);      ReturnExpression(theEnv,testPtr);     }   /*=================*/   /* Close router.   */   /*=================*/   CloseStringSource(theEnv,theStrRouter);   /*================================================*/   /* Return TRUE if no error occurred while loading */   /* the facts, otherwise return FALSE.             */   /*================================================*/   if (EvaluationData(theEnv)->EvaluationError) return(FALSE);   return(TRUE);  }/**************************************************************************//* StandardLoadFact: Loads a single fact from the specified logical name. *//**************************************************************************/static struct expr *StandardLoadFact(  void *theEnv,  char *logicalName,  struct token *theToken)  {   int error = FALSE;   struct expr *temp;   GetToken(theEnv,logicalName,theToken);   if (theToken->type != LPAREN) return(NULL);   temp = GenConstant(theEnv,FCALL,FindFunction(theEnv,"assert"));   temp->argList = GetRHSPattern(theEnv,logicalName,theToken,&error,                                  TRUE,FALSE,TRUE,RPAREN);   if (error == TRUE)     {      EnvPrintRouter(theEnv,WERROR,"Function load-facts encountered an error\n");      SetEvaluationError(theEnv,TRUE);      ReturnExpression(theEnv,temp);      return(NULL);     }   if (ExpressionContainsVariables(temp,TRUE))     {      ReturnExpression(theEnv,temp);      return(NULL);     }   return(temp);  }#if (! RUN_TIME)/****************************************************************//* AssertParse: Driver routine for parsing the assert function. *//****************************************************************/static struct expr *AssertParse(  void *theEnv,  struct expr *top,  char *logicalName)  {   int error;   struct expr *rv;   struct token theToken;   ReturnExpression(theEnv,top);   SavePPBuffer(theEnv," ");   IncrementIndentDepth(theEnv,8);   rv = BuildRHSAssert(theEnv,logicalName,&theToken,&error,TRUE,TRUE,"assert command");   DecrementIndentDepth(theEnv,8);   return(rv);  }#endif /* (! RUN_TIME) */#endif /* DEFTEMPLATE_CONSTRUCT */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美天天综合网| 国产网站一区二区| www.欧美色图| 国产99久久久国产精品潘金网站| 亚洲成人在线免费| 国产精品嫩草99a| 国产精品久久久久影院色老大| 亚洲精品一区二区三区在线观看 | 国产精品一区二区久久精品爱涩| 亚洲午夜在线视频| 一区二区三区在线视频观看| 亚洲美女少妇撒尿| 国产三级精品视频| 国产精品久久久久影院亚瑟| 国产精品午夜在线| 中文字幕视频一区| 五月综合激情婷婷六月色窝| 日韩高清不卡一区二区三区| 日韩成人av影视| 免费欧美高清视频| 成人精品亚洲人成在线| 欧美欧美欧美欧美| 国产精品午夜电影| 日本美女一区二区三区视频| 在线一区二区三区四区| 日韩一区在线免费观看| 精品一区二区三区久久| 欧美另类久久久品| 一二三区精品视频| 91免费在线视频观看| 国产情人综合久久777777| 日韩—二三区免费观看av| 色999日韩国产欧美一区二区| 久久免费偷拍视频| 国产综合久久久久久鬼色| 日韩三级中文字幕| 丝袜美腿亚洲综合| 在线观看亚洲专区| 亚洲成人免费视频| 欧美日韩国产一区| 五月激情综合色| 日韩写真欧美这视频| 国产精品一区2区| 一区二区中文字幕在线| 色欧美片视频在线观看在线视频| 亚洲特黄一级片| 欧美日韩一级片在线观看| 三级成人在线视频| 国产日产欧产精品推荐色| 波多野结衣亚洲一区| 亚洲成人黄色影院| 日本韩国欧美三级| 麻豆一区二区三| 中文字幕一区二区三区蜜月| 色噜噜狠狠成人中文综合| 日韩电影在线观看网站| 国产精品传媒视频| 日韩欧美一级片| 欧美午夜在线观看| 欧美一区二区在线免费观看| 免费成人美女在线观看.| 亚洲妇女屁股眼交7| 亚洲一区二区免费视频| 亚洲欧美激情视频在线观看一区二区三区| 欧美大片日本大片免费观看| 欧美一级精品大片| 日韩欧美亚洲国产另类| 日韩欧美视频一区| 久久久久国产一区二区三区四区| 亚洲精品一区二区三区99| 国产午夜精品美女毛片视频| 久久久久久久精| 日韩理论片在线| 午夜精品福利一区二区三区蜜桃| 天堂久久一区二区三区| 午夜精品福利一区二区三区av| 中文幕一区二区三区久久蜜桃| 亚洲成av人片| 欧美日韩情趣电影| 91日韩精品一区| 91色视频在线| av中文字幕不卡| 91国偷自产一区二区三区成为亚洲经典| 国产盗摄女厕一区二区三区| 成人免费视频视频| 99久久国产综合精品色伊| 国产在线不卡视频| 成人教育av在线| 欧美日韩卡一卡二| 欧美日韩成人在线| 久久精品一区二区三区不卡牛牛| 精品国产乱码久久久久久夜甘婷婷 | 成人福利视频在线| 91精品91久久久中77777| 欧美一区二区网站| 中文字幕精品一区二区精品绿巨人 | 欧美日韩精品免费| 精品久久国产97色综合| 国产精品久久久一区麻豆最新章节| 国产欧美综合在线| 亚洲欧美偷拍三级| 国产一区二区影院| 91蝌蚪国产九色| 久久众筹精品私拍模特| 亚洲精品亚洲人成人网| 久久精品999| 欧美日韩一级片网站| 国产精品丝袜久久久久久app| 亚洲成人久久影院| 在线看不卡av| 亚洲欧洲日韩一区二区三区| 极品美女销魂一区二区三区免费| 在线免费视频一区二区| 国产精品毛片久久久久久久| 蜜臀av性久久久久蜜臀aⅴ四虎| 日本高清不卡一区| 夜夜精品视频一区二区| 99精品久久只有精品| 精品国产欧美一区二区| 成人免费高清视频在线观看| 韩国三级中文字幕hd久久精品| 欧美一级久久久久久久大片| 国产大陆精品国产| 日韩经典一区二区| 国产欧美一区二区精品仙草咪| 成人在线综合网站| 亚洲成a人v欧美综合天堂下载| 久久中文娱乐网| 欧美一级搡bbbb搡bbbb| 成人国产免费视频| 看电影不卡的网站| 亚洲综合精品自拍| 日韩女优电影在线观看| av一二三不卡影片| 极品瑜伽女神91| 日韩高清一区在线| 一区二区三区中文字幕| 欧美精彩视频一区二区三区| 欧美日韩国产综合草草| 99久久精品国产导航| 国产99久久久国产精品| 精品一区二区三区香蕉蜜桃| 奇米影视一区二区三区小说| 一区二区三区四区在线播放 | 成人在线视频一区| 国产成人鲁色资源国产91色综| 久久不见久久见免费视频7| 午夜久久久久久| 日韩成人免费看| 日韩电影在线观看一区| 免费在线一区观看| 日本欧美肥老太交大片| 久久国产精品第一页| 无码av中文一区二区三区桃花岛| 亚洲精品视频一区二区| 亚洲精品日日夜夜| 亚洲午夜久久久| 麻豆91在线看| 国产99久久久国产精品免费看| 国产成人鲁色资源国产91色综| 99麻豆久久久国产精品免费| 日本高清不卡在线观看| 欧美日韩一区二区在线观看视频 | 99国产精品久久久久久久久久久| 99vv1com这只有精品| 欧美性欧美巨大黑白大战| 欧美日韩久久一区二区| 精品捆绑美女sm三区| 国产精品免费网站在线观看| 视频一区在线播放| 大白屁股一区二区视频| 在线一区二区三区四区| 久久亚区不卡日本| 又紧又大又爽精品一区二区| 韩国v欧美v亚洲v日本v| 91麻豆国产自产在线观看| 日韩欧美高清dvd碟片| 亚洲精品乱码久久久久| 国产一区欧美二区| 欧美丰满高潮xxxx喷水动漫| 亚洲欧洲韩国日本视频| 精品无码三级在线观看视频| 91成人国产精品| 最好看的中文字幕久久| 樱桃视频在线观看一区| 亚洲成人免费在线观看| 懂色av噜噜一区二区三区av| 欧美老年两性高潮| 中文字幕在线观看一区| 国产高清成人在线| 日韩女优毛片在线| 日韩电影在线观看一区| 丰满少妇久久久久久久| 欧美mv日韩mv国产网站| 亚洲韩国精品一区| 一本一本久久a久久精品综合麻豆| 久久久99精品免费观看不卡| 蜜桃91丨九色丨蝌蚪91桃色| 欧美精品免费视频| 亚州成人在线电影|