⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 genrcfun.h

📁 clips源代码
💻 H
字号:
   /*******************************************************/   /*      "C" Language Integrated Production System      */   /*                                                     */   /*               CLIPS Version 6.24  06/05/06          */   /*                                                     */   /*                                                     */   /*******************************************************//*************************************************************//* Purpose:                                                  *//*                                                           *//* Principal Programmer(s):                                  *//*      Brian L. Donnell                                     *//*                                                           *//* Contributing Programmer(s):                               *//*                                                           *//* Revision History:                                         *//*                                                           *//*      6.24: Renamed BOOLEAN macro type to intBool.         *//*                                                           *//*************************************************************/#ifndef _H_genrcfun#define _H_genrcfuntypedef struct defgenericModule DEFGENERIC_MODULE;typedef struct restriction RESTRICTION;typedef struct method DEFMETHOD;typedef struct defgeneric DEFGENERIC;#ifndef _STDIO_INCLUDED_#define _STDIO_INCLUDED_#include <stdio.h>#endif#ifndef _H_conscomp#include "conscomp.h"#endif#ifndef _H_constrct#include "constrct.h"#endif#ifndef _H_moduldef#include "moduldef.h"#endif#ifndef _H_symbol#include "symbol.h"#endif#ifndef _H_expressn#include "expressn.h"#endif#ifndef _H_evaluatn#include "evaluatn.h"#endif#if OBJECT_SYSTEM#ifndef _H_object#include "object.h"#endif#endifstruct defgenericModule  {   struct defmoduleItemHeader header;  };struct restriction  {   void **types;   EXPRESSION *query;   short tcnt;  };struct method  {   short index;   unsigned busy;   short restrictionCount;   short minRestrictions;   short maxRestrictions;   short localVarCount;   unsigned system : 1;   unsigned trace : 1;   RESTRICTION *restrictions;   EXPRESSION *actions;   char *ppForm;   struct userData *usrData;  };struct defgeneric  {   struct constructHeader header;   unsigned busy,trace;   DEFMETHOD *methods;   short mcnt;   short new_index;  };#define DEFGENERIC_DATA 27struct defgenericData  {    struct construct *DefgenericConstruct;   int DefgenericModuleIndex;   ENTITY_RECORD GenericEntityRecord;#if DEBUGGING_FUNCTIONS   unsigned WatchGenerics;   unsigned WatchMethods;#endif   DEFGENERIC *CurrentGeneric;   DEFMETHOD *CurrentMethod;   DATA_OBJECT *GenericCurrentArgument;#if (! RUN_TIME) && (! BLOAD_ONLY)   unsigned OldGenericBusySave;#endif#if CONSTRUCT_COMPILER && (! RUN_TIME)   struct CodeGeneratorItem *DefgenericCodeItem;#endif#if (! BLOAD_ONLY) && (! RUN_TIME)   struct token GenericInputToken;#endif  };#define DefgenericData(theEnv) ((struct defgenericData *) GetEnvironmentData(theEnv,DEFGENERIC_DATA))#define SaveBusyCount(gfunc)    (DefgenericData(theEnv)->OldGenericBusySave = gfunc->busy)#define RestoreBusyCount(gfunc) (gfunc->busy = DefgenericData(theEnv)->OldGenericBusySave)#ifdef LOCALE#undef LOCALE#endif#ifdef _GENRCFUN_SOURCE_#define LOCALE#else#define LOCALE extern#endif#if ! RUN_TIMELOCALE intBool ClearDefgenericsReady(void *);LOCALE void *AllocateDefgenericModule(void *);LOCALE void FreeDefgenericModule(void *,void *);#endif#if (! BLOAD_ONLY) && (! RUN_TIME)LOCALE int ClearDefmethods(void *);LOCALE int RemoveAllExplicitMethods(void *,DEFGENERIC *);LOCALE void RemoveDefgeneric(void *,void *);LOCALE int ClearDefgenerics(void *);LOCALE void MethodAlterError(void *,DEFGENERIC *);LOCALE void DeleteMethodInfo(void *,DEFGENERIC *,DEFMETHOD *);LOCALE void DestroyMethodInfo(void *,DEFGENERIC *,DEFMETHOD *);LOCALE int MethodsExecuting(DEFGENERIC *);#endif#if ! OBJECT_SYSTEMLOCALE intBool SubsumeType(int,int);#endifLOCALE long FindMethodByIndex(DEFGENERIC *,long);#if DEBUGGING_FUNCTIONSLOCALE void PreviewGeneric(void *);LOCALE void PrintMethod(void *,char *,int,DEFMETHOD *);#endifLOCALE DEFGENERIC *CheckGenericExists(void *,char *,char *);LOCALE long CheckMethodExists(void *,char *,DEFGENERIC *,long);#if ! OBJECT_SYSTEMLOCALE char *TypeName(void *,int);#endifLOCALE void PrintGenericName(void *,char *,DEFGENERIC *);#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -