]> andersk Git - splint.git/blame - src/Headers/sRefTable.h
Updated copyrights
[splint.git] / src / Headers / sRefTable.h
CommitLineData
885824d3 1/*
c0de361f 2** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2003.
885824d3 3** See ../LICENSE for license information.
4**
5*/
6/*
7** sRefTable.h
8**
9** based on sRefSet.h
10*/
11
12# ifndef sRefTABLE_H
13# define sRefTABLE_H
14
15typedef /*@owned@*/ sRef ow_sRef;
16
28bf4b0b 17abst_typedef /*@null@*/ struct
885824d3 18{
19 int entries;
20 int nspace;
21 /*@reldef@*/ /*@relnull@*/ ow_sRef *elements;
22} *sRefTable;
23
24/*@constant int sRefTableBASESIZE; @*/
25# define sRefTableBASESIZE HUGEBASESIZE
26
27/*@constant null sRefTable sRefTable_undefined; @*/
28# define sRefTable_undefined ((sRefTable) NULL)
29
0e41eb0e 30extern /*@nullwhentrue@*/ bool sRefTable_isNull (sRefTable p_s) /*@*/ ;
31extern /*@nullwhentrue@*/ bool sRefTable_isEmpty (/*@sef@*/ sRefTable p_s) /*@*/ ;
32extern /*@unused@*/ /*@falsewhennull@*/ bool
885824d3 33 sRefTable_isDefined (sRefTable p_s) /*@*/ ;
34
35# define sRefTable_isNull(s) ((s) == sRefTable_undefined)
36# define sRefTable_isDefined(s) ((!sRefTable_isNull(s)))
37
38# define sRefTable_isEmpty(s) ((s) == sRefTable_undefined || ((s)->entries == 0))
39
40extern /*@unused@*/ /*@only@*/ cstring sRefTable_unparse (sRefTable p_s) /*@*/ ;
41extern void sRefTable_free (/*@only@*/ sRefTable p_s) /*@modifies p_s@*/;
42extern void sRefTable_clear (sRefTable p_s) /*@modifies p_s@*/ ;
43extern sRefTable
44 sRefTable_add (/*@returned@*/ sRefTable p_s,
45 /*@special@*/ /*@owned@*/ sRef p_el)
46 /*@modifies p_s@*/ ;
47
48# else
49# error "Multiple include"
50# endif
51
52
53
This page took 0.186589 seconds and 5 git commands to generate.