]> andersk Git - splint.git/blame - src/Headers/annotationInfo.h
Added code to support CSV output (-csv flag).
[splint.git] / src / Headers / annotationInfo.h
CommitLineData
28bf4b0b 1/*
2** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2001.
3** See ../LICENSE for license information.
4*/
5/*
6** annotationInfo.h
7**
8** A record that keeps information on a user-defined annotations including:
9**
10*/
11
12# ifndef ANNOTINFO_H
13# define ANNOTINFO_H
14
15struct s_annotationInfo {
16 cstring name;
17 /*@dependent@*/ /*@observer@*/ metaStateInfo state;
18 /* associated metaStateInfo entry */
19 fileloc loc;
20 int value;
21 mtContextNode context;
22} ;
23
24/* typedef struct _annotationInfo *annotationInfo; */
25
26/*@constant null annotationInfo annotationInfo_undefined; @*/
27# define annotationInfo_undefined ((annotationInfo) NULL)
28
0e41eb0e 29extern /*@falsewhennull@*/ bool annotationInfo_isDefined (annotationInfo) /*@*/ ;
28bf4b0b 30# define annotationInfo_isDefined(p_info) ((p_info) != annotationInfo_undefined)
31
0e41eb0e 32extern /*@nullwhentrue@*/ bool annotationInfo_isUndefined (annotationInfo) /*@*/ ;
28bf4b0b 33# define annotationInfo_isUndefined(p_info) ((p_info) == annotationInfo_undefined)
34
35extern bool annotationInfo_equal (annotationInfo, annotationInfo) /*@*/ ;
36# define annotationInfo_equal(p_info1, p_info2) ((p_info1) == (p_info2))
37
38extern bool annotationInfo_matchesContext (annotationInfo, uentry) /*@*/ ;
39extern bool annotationInfo_matchesContextRef (annotationInfo, sRef) /*@*/ ;
40
41extern /*@observer@*/ metaStateInfo annotationInfo_getState (annotationInfo) /*@*/ ;
42extern int annotationInfo_getValue (annotationInfo) /*@*/ ;
43extern /*@observer@*/ cstring annotationInfo_getName (annotationInfo) /*@*/ ;
44
45extern /*@only@*/ annotationInfo
46annotationInfo_create (/*@only@*/ cstring p_name,
47 /*@dependent@*/ /*@exposed@*/ metaStateInfo p_state,
48 /*@only@*/ mtContextNode p_context,
49 int p_value, /*@only@*/ fileloc p_loc) /*@*/ ;
50
53306cab 51extern /*@observer@*/ cstring annotationInfo_unparse (annotationInfo p_a);
52extern /*@observer@*/ fileloc annotationInfo_getLoc (annotationInfo p_a) /*@*/ ;
28bf4b0b 53
54extern void annotationInfo_free (/*@only@*/ annotationInfo) ;
55
56extern /*@observer@*/ cstring annotationInfo_dump (annotationInfo) ;
57extern /*@observer@*/ annotationInfo annotationInfo_undump (char **p_s) /*@modifies *p_s@*/ ;
58
b7e84605 59extern void annotationInfo_showContextRefError (annotationInfo, sRef) /*@*/ ;
60
28bf4b0b 61# else
62# error "Multiple include"
63# endif
64
65
66
67
This page took 0.060263 seconds and 5 git commands to generate.