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"