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

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

?? dffnxpsr.c

?? clips源代碼
?? C
?? 第 1 頁 / 共 2 頁
字號:
        }      return(FALSE);     }   /*=============================*/   /* Reformat the closing token. */   /*=============================*/   PPBackup(theEnv);   PPBackup(theEnv);   SavePPBuffer(theEnv,DeffunctionData(theEnv)->DFInputToken.printForm);   SavePPBuffer(theEnv,"\n");   /*======================*/   /* Add the deffunction. */   /*======================*/   AddDeffunction(theEnv,deffunctionName,actions,min,max,lvars,FALSE);   ReturnExpression(theEnv,parameterList);   return(DeffunctionError);  }/* =========================================   *****************************************          INTERNALLY VISIBLE FUNCTIONS   =========================================   ***************************************** *//************************************************************  NAME         : ValidDeffunctionName  DESCRIPTION  : Determines if a new deffunction of the given                 name can be defined in the current module  INPUTS       : The new deffunction name  RETURNS      : TRUE if OK, FALSE otherwise  SIDE EFFECTS : Error message printed if not OK  NOTES        : GetConstructNameAndComment() (called before                 this function) ensures that the deffunction                 name does not conflict with one from                 another module ************************************************************/static intBool ValidDeffunctionName(  void *theEnv,  char *theDeffunctionName)  {   struct constructHeader *theDeffunction;#if DEFGENERIC_CONSTRUCT   struct defmodule *theModule;   struct constructHeader *theDefgeneric;#endif   /* ============================================      A deffunction cannot be named the same as a      construct type, e.g, defclass, defrule, etc.      ============================================ */   if (FindConstruct(theEnv,theDeffunctionName) != NULL)     {      PrintErrorID(theEnv,"DFFNXPSR",1,FALSE);      EnvPrintRouter(theEnv,WERROR,"Deffunctions are not allowed to replace constructs.\n");      return(FALSE);     }   /* ============================================      A deffunction cannot be named the same as a      pre-defined system function, e.g, watch,      list-defrules, etc.      ============================================ */   if (FindFunction(theEnv,theDeffunctionName) != NULL)     {      PrintErrorID(theEnv,"DFFNXPSR",2,FALSE);      EnvPrintRouter(theEnv,WERROR,"Deffunctions are not allowed to replace external functions.\n");      return(FALSE);     }#if DEFGENERIC_CONSTRUCT   /* ============================================      A deffunction cannot be named the same as a      generic function (either in this module or      imported from another)      ============================================ */   theDefgeneric =     (struct constructHeader *) LookupDefgenericInScope(theEnv,theDeffunctionName);   if (theDefgeneric != NULL)     {      theModule = GetConstructModuleItem(theDefgeneric)->theModule;      if (theModule != ((struct defmodule *) EnvGetCurrentModule(theEnv)))        {         PrintErrorID(theEnv,"DFFNXPSR",5,FALSE);         EnvPrintRouter(theEnv,WERROR,"Defgeneric ");         EnvPrintRouter(theEnv,WERROR,EnvGetDefgenericName(theEnv,(void *) theDefgeneric));         EnvPrintRouter(theEnv,WERROR," imported from module ");         EnvPrintRouter(theEnv,WERROR,EnvGetDefmoduleName(theEnv,(void *) theModule));         EnvPrintRouter(theEnv,WERROR," conflicts with this deffunction.\n");         return(FALSE);        }      else        {         PrintErrorID(theEnv,"DFFNXPSR",3,FALSE);         EnvPrintRouter(theEnv,WERROR,"Deffunctions are not allowed to replace generic functions.\n");        }      return(FALSE);     }#endif   theDeffunction = (struct constructHeader *) EnvFindDeffunction(theEnv,theDeffunctionName);   if (theDeffunction != NULL)     {      /* ===========================================         And a deffunction in the current module can         only be redefined if it is not executing.         =========================================== */      if (((DEFFUNCTION *) theDeffunction)->executing)        {         PrintErrorID(theEnv,"DFNXPSR",4,FALSE);         EnvPrintRouter(theEnv,WERROR,"Deffunction ");         EnvPrintRouter(theEnv,WERROR,EnvGetDeffunctionName(theEnv,(void *) theDeffunction));         EnvPrintRouter(theEnv,WERROR," may not be redefined while it is executing.\n");         return(FALSE);        }     }   return(TRUE);  }/****************************************************  NAME         : AddDeffunction  DESCRIPTION  : Adds a deffunction to the list of                 deffunctions  INPUTS       : 1) The symbolic name                 2) The action expressions                 3) The minimum number of arguments                 4) The maximum number of arguments                    (can be -1)                 5) The number of local variables                 6) A flag indicating if this is                    a header call so that the                    deffunction can be recursively                    called  RETURNS      : The new deffunction (NULL on errors)  SIDE EFFECTS : Deffunction structures allocated  NOTES        : Assumes deffunction is not executing ****************************************************/#if IBM_TBC#pragma argsused#endifstatic DEFFUNCTION *AddDeffunction(  void *theEnv,  SYMBOL_HN *name,  EXPRESSION *actions,  int min,  int max,  int lvars,  int headerp)  {   DEFFUNCTION *dfuncPtr;   unsigned oldbusy;#if DEBUGGING_FUNCTIONS   unsigned DFHadWatch = FALSE;#else#if MAC_MCW || IBM_MCW || MAC_XCD#pragma unused(headerp)#endif#endif   /*===============================================================*/   /* If the deffunction doesn't exist, create a new structure to   */   /* contain it and add it to the List of deffunctions. Otherwise, */   /* use the existing structure and remove the pretty print form   */   /* and interpretive code.                                        */   /*===============================================================*/   dfuncPtr = (DEFFUNCTION *) EnvFindDeffunction(theEnv,ValueToString(name));   if (dfuncPtr == NULL)     {      dfuncPtr = get_struct(theEnv,deffunctionStruct);      InitializeConstructHeader(theEnv,"deffunction",(struct constructHeader *) dfuncPtr,name);      IncrementSymbolCount(name);      dfuncPtr->code = NULL;      dfuncPtr->minNumberOfParameters = min;      dfuncPtr->maxNumberOfParameters = max;      dfuncPtr->numberOfLocalVars = lvars;      dfuncPtr->busy = 0;      dfuncPtr->executing = 0;     }   else     {#if DEBUGGING_FUNCTIONS      DFHadWatch = EnvGetDeffunctionWatch(theEnv,(void *) dfuncPtr);#endif      dfuncPtr->minNumberOfParameters = min;      dfuncPtr->maxNumberOfParameters = max;      dfuncPtr->numberOfLocalVars = lvars;      oldbusy = dfuncPtr->busy;      ExpressionDeinstall(theEnv,dfuncPtr->code);      dfuncPtr->busy = oldbusy;      ReturnPackedExpression(theEnv,dfuncPtr->code);      dfuncPtr->code = NULL;      SetDeffunctionPPForm((void *) dfuncPtr,NULL);      /* =======================================         Remove the deffunction from the list so         that it can be added at the end         ======================================= */      RemoveConstructFromModule(theEnv,(struct constructHeader *) dfuncPtr);     }   AddConstructToModule((struct constructHeader *) dfuncPtr);   /* ==================================      Install the new interpretive code.      ================================== */   if (actions != NULL)     {      /* ===============================         If a deffunction is recursive,         do not increment its busy count         based on self-references         =============================== */      oldbusy = dfuncPtr->busy;      ExpressionInstall(theEnv,actions);      dfuncPtr->busy = oldbusy;      dfuncPtr->code = actions;     }   /* ===============================================================      Install the pretty print form if memory is not being conserved.      =============================================================== */#if DEBUGGING_FUNCTIONS   EnvSetDeffunctionWatch(theEnv,DFHadWatch ? TRUE : DeffunctionData(theEnv)->WatchDeffunctions,(void *) dfuncPtr);   if ((EnvGetConserveMemory(theEnv) == FALSE) && (headerp == FALSE))     SetDeffunctionPPForm((void *) dfuncPtr,CopyPPBuffer(theEnv));#endif   return(dfuncPtr);  }#endif /* DEFFUNCTION_CONSTRUCT && (! BLOAD_ONLY) && (! RUN_TIME) */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
www.亚洲色图.com| 中文字幕日韩精品一区| 日韩欧美国产午夜精品| 亚洲国产中文字幕在线视频综合 | 热久久一区二区| 极品少妇一区二区| 国产精品人妖ts系列视频| 欧美高清激情brazzers| 成人ar影院免费观看视频| 麻豆国产欧美日韩综合精品二区| 亚洲同性gay激情无套| 精品国产乱子伦一区| 欧美日韩免费一区二区三区 | 在线观看日韩一区| 国产精品久久久久久福利一牛影视| 蜜臀av一区二区在线免费观看 | 国v精品久久久网| 欧美xxxxx牲另类人与| 蜜桃视频第一区免费观看| 91精品国产丝袜白色高跟鞋| 麻豆精品视频在线观看免费| 精品欧美久久久| 国产精品538一区二区在线| 国产精品二三区| 欧美在线999| 蜜臀a∨国产成人精品| 日韩精品一区二区三区视频在线观看| 亚洲午夜影视影院在线观看| 欧美日本视频在线| 国内外成人在线视频| 久久久久久日产精品| 欧美日韩成人一区| 国产精品2024| 最好看的中文字幕久久| 成人一级片网址| 中文文精品字幕一区二区| 五月综合激情网| 99久久精品情趣| 成人午夜av在线| 欧美亚洲综合色| 亚洲国产高清aⅴ视频| 欧美大片日本大片免费观看| 欧美一二三区精品| 日韩一区二区免费在线观看| 国产精品蜜臀在线观看| 久久综合丝袜日本网| 久久久久久久电影| 亚洲国产精品99久久久久久久久 | 中文字幕在线不卡| 欧美蜜桃一区二区三区| 成人精品视频一区| 精品一区二区三区视频| 日韩在线卡一卡二| 一区二区三区欧美日韩| 久久久久久毛片| 日韩一区二区在线播放| 欧美亚洲一区二区三区四区| 国产一区二区三区观看| 午夜亚洲国产au精品一区二区| 综合电影一区二区三区 | 激情深爱一区二区| 一级特黄大欧美久久久| 亚洲欧洲日韩综合一区二区| 国产午夜精品久久| 久久美女高清视频 | 日韩和欧美一区二区三区| 亚洲免费av在线| 夜夜嗨av一区二区三区四季av| 亚洲免费观看高清| 亚洲综合另类小说| 国产一区视频网站| 色噜噜夜夜夜综合网| aaa欧美色吧激情视频| 色综合久久中文综合久久97| 日本精品一级二级| 国产乱人伦精品一区二区在线观看| 久久亚洲精品小早川怜子| 国产精品久99| 91成人在线精品| 免费在线观看精品| 欧美久久一二区| 26uuu亚洲| 有坂深雪av一区二区精品| 另类小说综合欧美亚洲| 成人av先锋影音| 久久免费国产精品| 亚洲国产精品麻豆| 国产成人欧美日韩在线电影| 在线视频欧美精品| 欧美精品一区二区三区高清aⅴ| 91精品在线一区二区| 久久婷婷国产综合精品青草 | 香蕉久久一区二区不卡无毒影院| 麻豆成人综合网| 91蜜桃婷婷狠狠久久综合9色| 欧美在线影院一区二区| 久久影视一区二区| 亚洲午夜在线视频| caoporen国产精品视频| 日韩免费观看高清完整版在线观看| 国产视频一区在线观看| 日韩精品一二三四| 色综合久久综合| 亚洲国产精品精华液2区45| 亚洲狠狠爱一区二区三区| 成人av电影免费在线播放| 欧美丰满一区二区免费视频| 最好看的中文字幕久久| 蜜臀a∨国产成人精品| 在线观看视频一区二区| 亚洲欧美激情视频在线观看一区二区三区| 蜜臀av一级做a爰片久久| 在线视频欧美精品| 一区在线播放视频| 波多野结衣视频一区| 337p日本欧洲亚洲大胆精品 | 欧洲一区二区三区在线| 亚洲柠檬福利资源导航| 成人精品鲁一区一区二区| 337p粉嫩大胆噜噜噜噜噜91av| 日本一区二区免费在线| 亚洲综合在线电影| 精品美女一区二区三区| 国产女主播在线一区二区| 久久综合色婷婷| 精品欧美一区二区三区精品久久| 亚洲第一激情av| 91国在线观看| 亚洲三级电影网站| 99精品久久99久久久久| 日韩和欧美的一区| 欧美性xxxxxxxx| 亚洲在线视频一区| 91成人免费网站| 亚洲一区二区精品久久av| 欧洲一区二区av| 欧洲av在线精品| 久久疯狂做爰流白浆xx| 中文字幕不卡在线播放| 欧美午夜精品一区二区三区 | 粉嫩蜜臀av国产精品网站| 亚洲欧洲在线观看av| 欧美群妇大交群中文字幕| 久久 天天综合| 国产精品久久久久影院亚瑟| 欧美日韩高清一区二区| 国产成人精品aa毛片| 亚洲va中文字幕| 久久久www成人免费无遮挡大片| av一区二区三区四区| 久久精品国产99久久6| 亚洲免费观看在线视频| 久久久久久久久久久久久女国产乱| 99国产精品久久久久| 国内精品第一页| 蜜臀av一区二区在线免费观看 | 欧美性猛片xxxx免费看久爱| 天天av天天翘天天综合网| 国产亚洲成年网址在线观看| 91精品国产免费久久综合| 成人97人人超碰人人99| 国产一区在线观看麻豆| 国产做a爰片久久毛片| 久国产精品韩国三级视频| 经典三级在线一区| 国产福利91精品一区| 国产精品传媒入口麻豆| 国产欧美视频一区二区三区| 粉嫩一区二区三区在线看| 美女视频一区在线观看| 亚洲在线免费播放| 亚洲成年人网站在线观看| 亚洲一区在线观看免费观看电影高清| 91精品国产手机| 成人毛片在线观看| 毛片基地黄久久久久久天堂| 2021国产精品久久精品| 欧美肥妇毛茸茸| 在线观看中文字幕不卡| 成人高清视频在线观看| 国内精品国产成人| 青椒成人免费视频| 亚洲图片欧美一区| 1000精品久久久久久久久| 久久久久久久精| 日韩欧美国产麻豆| 欧美精品tushy高清| 在线视频一区二区三| 69久久夜色精品国产69蝌蚪网| 99久久免费精品高清特色大片| 国产精品综合在线视频| 日本不卡一区二区| 丝袜诱惑制服诱惑色一区在线观看| 亚洲天堂久久久久久久| 中文一区一区三区高中清不卡| 国产性天天综合网| 久久九九久久九九| 久久综合九色综合97婷婷| 欧美大胆一级视频| 欧美日韩国产成人在线91|