File: dlgrt.h

package info (click to toggle)
goo 0.155-14
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 14,900 kB
  • ctags: 21,551
  • sloc: ansic: 253,539; lisp: 2,452; makefile: 266; sh: 211
file content (33 lines) | stat: -rw-r--r-- 948 bytes parent folder | download | duplicates (9)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
//// Copyright 2002, Jonathan Bachrach.  See file TERMS.

#undef FUNFOR
#undef FUNCODEDEF
#undef EXT
#undef DEF
#undef VARREF
#undef VARSET
#undef BOUNDP
#undef VARREF_OR

#define FUNFOR(x)     static P x##I(REGS)
#define FUNCODEDEF(x) static P x##I (REGS regs)
#define LOCNAM(x)     x##V
#define EXT(x, m, n)  static DLVAR_DAT LOCNAM(x) = { n, m, PNUL };
#define DEF(x, m, n)  static P x = PNUL; static DLVAR_DAT LOCNAM(x) = { n, m, PNUL };
#define BOUNDP(x, d)  (P)YevalSast_evalYPbinding_boundQ((P)&LOCNAM(x))
#define VARREF(x)     YevalSast_evalYPbinding_value((P)&LOCNAM(x))
#define VARSET(x, v)  YevalSast_evalYPbinding_value_setter((P)v, (P)&LOCNAM(x))

#define VARREF_OR(x, d)  (P)YevalSast_evalYPbinding_value_or((P)&LOCNAM(x), (P)d)

#undef DYNEXT
#undef DYNDEF
#undef DYNREF
#undef DYNSET

#define DYNEXT(x, m, n) EXT(x, m, n)
#define DYNDEF(x, m, n) DEF(x, m, n)
#define DYNREF(x)       VARREF(x)
#define DYNSET(x, v)    VARSET(x, v)