/*******************************************************/ /* "C" Language Integrated Production System */ /* */ /* CLIPS Version 6.40 10/18/16 */ /* */ /* EXPRESSION OPERATIONS HEADER FILE */ /*******************************************************/ /*************************************************************/ /* Purpose: Provides utility routines for manipulating and */ /* examining expressions. */ /* */ /* Principal Programmer(s): */ /* Gary D. Riley */ /* */ /* Contributing Programmer(s): */ /* Brian L. Dantes */ /* */ /* Revision History: */ /* */ /* 6.24: Renamed BOOLEAN macro type to intBool. */ /* */ /* 6.30: Add NegateExpression function. */ /* */ /* Added const qualifiers to remove C++ */ /* deprecation warnings. */ /* */ /* 6.40: Removed LOCALE definition. */ /* */ /* Pragma once and other inclusion changes. */ /* */ /* Added support for booleans with . */ /* */ /* Removed use of void pointers for specific */ /* data structures. */ /* */ /* UDF redesign. */ /* */ /* Eval support for run time and bload only. */ /* */ /*************************************************************/ #ifndef _H_exprnops #pragma once #define _H_exprnops #include "expressn.h" bool ConstantExpression(struct expr *); void PrintExpression(Environment *,const char *,struct expr *); unsigned long ExpressionSize(struct expr *); unsigned short CountArguments(struct expr *); struct expr *CopyExpression(Environment *,struct expr *); bool ExpressionContainsVariables(struct expr *,bool); bool IdenticalExpression(struct expr *,struct expr *); struct expr *GenConstant(Environment *,unsigned short,void *); bool CheckArgumentAgainstRestriction(Environment *,struct expr *,unsigned); bool ConstantType(int); struct expr *CombineExpressions(Environment *,struct expr *,struct expr *); struct expr *AppendExpressions(struct expr *,struct expr *); struct expr *NegateExpression(Environment *,struct expr *); #endif /* _H_exprnops */