]> andersk Git - splint.git/blame - src/Headers/aliasStack.h
*** empty log message ***
[splint.git] / src / Headers / aliasStack.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** aliasStack.h
8*/
9
10# ifndef aliasStack_H
11# define aliasStack_H
12
13typedef struct _aliasStack *aliasStack ;
14
15typedef struct _aliasStack
16{
17 aliasTable elements;
18 aliasStack thisbranch;
19 aliasStack lastbranch;
20 aliasStack parent;
21 int lexlevel;
22} _aliasStack ;
23
24extern aliasStack aliasStack_new(void);
25
26extern void aliasStack_newAlias (aliasStack s, sRef el, sRef al);
27extern void aliasStack_clearAlias (aliasStack s, sRef el);
28extern sRefSet aliasStack_canAlias (aliasStack s, sRef sr);
29
30extern void aliasStack_push (aliasStack s, sRef el) ;
31extern aliasStack aliasStack_pop (aliasStack s) ;
32extern sRef aliasStack_top (aliasStack s) ;
33
34extern cstring aliasStack_unparse (aliasStack s) ;
35extern void aliasStack_free (/*@only@*/ aliasStack s) ;
36
37extern sRefSet aliasStack_aliasedBy (aliasStack s, sRef sr);
38extern aliasStack aliasStack_branch (aliasStack s);
39extern aliasStack aliasStack_trueBranch (aliasStack s);
40extern aliasStack aliasStack_altBranch (aliasStack s);
41extern aliasStack aliasStack_popBranches (aliasStack alt);
42extern aliasStack aliasStack_popTrueBranch (aliasStack s);
43extern void aliasStack_checkGlobs (aliasStack s);
44
45# define aliasStackBASESIZE MIDBASESIZE
46# define aliasStackNULL ((aliasStack)0)
47# else
48# error "Multiple include"
49# endif
50
51
52
53
This page took 0.064896 seconds and 5 git commands to generate.