PennMUSH Community

root/1.8.3/trunk/hdrs/boolexp.h

Revision 919, 1.1 kB (checked in by shawnw, 1 year ago)

1.8.3p3

Line 
1 #ifndef BOOLEXP_H
2 #define BOOLEXP_H
3 #include "copyrite.h"
4 #include "chunk.h"
5
6 typedef chunk_reference_t boolexp;
7
8 /* tokens for locks */
9 #define NOT_TOKEN '!'
10 #define AND_TOKEN '&'
11 #define OR_TOKEN '|'
12 #define AT_TOKEN '@'
13 #define IN_TOKEN '+'
14 #define IS_TOKEN '='
15 #define OWNER_TOKEN '$'
16
17 enum { TRUE_BOOLEXP = NULL_CHUNK_REFERENCE };
18
19 /* From boolexp.c */
20 extern boolexp dup_bool(boolexp b);
21 extern int sizeof_boolexp(boolexp b);
22 extern int eval_boolexp(dbref player, boolexp b, dbref target);
23 extern boolexp parse_boolexp(dbref player, const char *buf, lock_type ltype);
24 extern boolexp parse_boolexp_d(dbref player, const char *buf, lock_type ltype,
25                                int derefs);
26 extern void free_boolexp(boolexp b);
27 boolexp getboolexp(FILE * f, const char *ltype);
28 void putboolexp(FILE * f, boolexp b);
29 enum u_b_f {
30   UB_ALL, /**< Use names of objects */
31   UB_DBREF, /**< Use dbrefs */
32   UB_MEREF /**< Use dbrefs or "me" if the object is the player arg
33               from unparse_boolexp.() For @decompile. */
34 };
35 extern char *unparse_boolexp(dbref player, boolexp b, enum u_b_f flag);
36 #endif                          /* BOOLEXP_H */
Note: See TracBrowser for help on using the browser.