/**
* The include file to go with the expression handler. You may need to use
* the define EXPRESSION_NO_CLASSES to stop clashes occuring from includeing
* this file into something which inherits the basic expressions file.
* @see /std/basic/expresssions.c
* @author Pinkfish
* @started Mon May 8 17:01:14 PDT 2000
*/
#ifndef __EXPRESSIONS_H
/** @ignore yes */
#define __EXPRESSIONS_H
/** An integer type. */
#define EXPRESSION_TYPE_INTEGER 1
/** A string type. */
#define EXPRESSION_TYPE_STRING 2
/** An array type. */
#define EXPRESSION_TYPE_ARRAY 3
/** A mapping type. */
#define EXPRESSION_TYPE_MAPPING 4
/** A float type. */
#define EXPRESSION_TYPE_FLOAT 5
/** An operator type. */
#define EXPRESSION_TYPE_OPERATOR 6
/** A boolean type. */
#define EXPRESSION_TYPE_BOOLEAN 7
/** A variable type. */
#define EXPRESSION_TYPE_VARIABLE 8
/** A money type. */
#define EXPRESSION_TYPE_MONEY 9
/** A functionm type. */
#define EXPRESSION_TYPE_FUNCTION 10
/**
* A special type, this is type (and above this) that should be used by
* the inheriables if they wish to define special types of controls.
*/
#define EXPRESSION_TYPE_SPECIAL 11
/** The error type. */
#define EXPRESSION_TYPE_ERROR -1
#ifndef EXPRESSION_NO_CLASSES
/**
* The class used to hold information about both expression nodes and
* evaluated data. The type is one of the types above and the value is
* dependant on the type.
* @element type the type of the data
* @element value the value of the data
*/
class parse_node {
int type;
mixed value;
}
#endif
#endif