|
Revision 919, 1.1 KB
(checked in by shawnw, 19 months 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 */ |
|---|