2 ** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2001.
3 ** See ../LICENSE for license information.
6 # ifndef USYMTAB_INTERFACE_H
7 # define USYMTAB_INTERFACE_H
13 extern void doDeclareConstant (constDeclarationNode, bool);
14 extern void doDeclareVar (varDeclarationNode, bool);
15 extern void doDeclareType (typeNode, bool);
16 extern void doDeclareFcn (fcnNode p_f, typeId p_tn, bool p_priv, bool p_spec);
17 extern void declareIter (iterNode p_iter);
19 extern void declareConstant (constDeclarationNode);
20 extern void declareVar (varDeclarationNode);
21 extern void declareType (typeNode);
22 extern void declareFcn (fcnNode p_f, typeId p_t);
24 extern void declarePrivConstant (constDeclarationNode);
25 extern void declarePrivVar (varDeclarationNode);
26 extern void declarePrivType (typeNode);
27 extern void declarePrivFcn (fcnNode p_f, typeId p_t);
29 # define declareConstant(c) doDeclareConstant(c, FALSE)
30 # define declareVar(c) doDeclareVar(c, FALSE)
31 # define declareType(c) doDeclareType(c, FALSE)
32 # define declareFcn(f, t) doDeclareFcn(f, t, FALSE, TRUE)
34 # define declarePrivConstant(c) doDeclareConstant(c, TRUE)
35 # define declarePrivVar(c) doDeclareVar(c, TRUE)
36 # define declarePrivType(c) doDeclareType(c, TRUE)
37 # define declarePrivFcn(f, t) doDeclareFcn(f, t, TRUE, TRUE)
40 # error "Multiple include"