2 ** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2003.
3 ** See ../LICENSE for license information.
10 # ifndef MTANNOTATIONDECL_H
11 # define MTANNOTATIONDECL_H
13 struct s_mtAnnotationDecl
{
16 mtContextNode context
;
20 extern cstring
mtAnnotationDecl_unparse (mtAnnotationDecl p_node
) /*@*/ ;
22 extern mtAnnotationDecl
23 mtAnnotationDecl_create (/*@only@*/ mttok p_id
, /*@only@*/ mtContextNode p_c
, /*@only@*/ mttok p_value
) /*@*/ ;
25 extern /*@observer@*/ cstring
mtAnnotationDecl_getName (mtAnnotationDecl p_annot
) /*@*/ ;
26 # define mtAnnotationDecl_getName(annot) ((annot)->name)
28 extern /*@observer@*/ cstring
mtAnnotationDecl_getValue (mtAnnotationDecl p_annot
) /*@*/ ;
29 # define mtAnnotationDecl_getValue(annot) ((annot)->value)
31 extern /*@only@*/ mtContextNode
mtAnnotationDecl_stealContext (mtAnnotationDecl p_annot
) /*@modifies p_annot@*/ ;
33 extern /*@observer@*/ mtContextNode
mtAnnotationDecl_getContext (mtAnnotationDecl p_annot
) /*@*/ ;
34 # define mtAnnotationDecl_getContext(annot) ((annot)->context)
36 extern /*@observer@*/ fileloc
mtAnnotationDecl_getLoc (mtAnnotationDecl p_annot
) /*@*/ ;
37 # define mtAnnotationDecl_getLoc(annot) ((annot)->loc) /*@i25@*/
40 # error "Multiple include"