perl 2.0 patch 1: removed redundant debugging code in regexp.c
[p5sagit/p5-mst-13.2.git] / str.h
CommitLineData
378cc40b 1/* $Header: str.h,v 2.0 88/06/05 00:11:11 root Exp $
8d063cd8 2 *
3 * $Log: str.h,v $
378cc40b 4 * Revision 2.0 88/06/05 00:11:11 root
5 * Baseline version 2.0.
8d063cd8 6 *
7 */
8
9struct string {
10 char * str_ptr; /* pointer to malloced string */
11 double str_nval; /* numeric value, if any */
12 int str_len; /* allocated size */
13 int str_cur; /* length of str_ptr as a C string */
14 union {
15 STR *str_next; /* while free, link to next free str */
16 STAB *str_magic; /* while in use, ptr to magic stab, if any */
17 } str_link;
18 char str_pok; /* state of str_ptr */
19 char str_nok; /* state of str_nval */
378cc40b 20 char str_rare; /* used by search strings */
21 char str_prev; /* also used by search strings */
8d063cd8 22};
23
24#define Nullstr Null(STR*)
25
26/* the following macro updates any magic values this str is associated with */
27
28#define STABSET(x) (x->str_link.str_magic && stabset(x->str_link.str_magic,x))
29
30EXT STR **tmps_list;
378cc40b 31EXT int tmps_max INIT(-1);
32EXT int tmps_base INIT(-1);
8d063cd8 33
34char *str_2ptr();
35double str_2num();
36STR *str_static();
37STR *str_make();
38STR *str_nmake();