]>
Commit | Line | Data |
---|---|---|
28bf4b0b | 1 | /* |
2 | ** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2001. | |
3 | ** See ../LICENSE for license information. | |
4 | ** | |
5 | */ | |
6 | /* | |
7 | ** mtTransferAction.h | |
8 | */ | |
9 | ||
10 | # ifndef MTTRANSFERACTION_H | |
11 | # define MTTRANSFERACTION_H | |
12 | ||
13 | struct s_mtTransferAction { | |
14 | enum { MTAK_VALUE, MTAK_ERROR } kind; | |
15 | cstring value; /* for MTAK_VALUE only */ | |
16 | cstring message; | |
17 | fileloc loc; | |
18 | } ; | |
19 | ||
20 | extern void mtTransferAction_free (/*@only@*/ mtTransferAction p_node) ; | |
21 | ||
22 | extern cstring mtTransferAction_unparse (mtTransferAction p_node) /*@*/ ; | |
23 | ||
24 | extern mtTransferAction | |
25 | mtTransferAction_createValue (/*@only@*/ mttok p_value) /*@*/ ; | |
26 | ||
27 | extern /*@observer@*/ cstring mtTransferAction_getValue (mtTransferAction) /*@*/ ; | |
28 | # define mtTransferAction_getValue(node) ((node)->value) | |
29 | ||
30 | extern /*@observer@*/ fileloc mtTransferAction_getLoc (mtTransferAction) /*@*/ ; | |
31 | # define mtTransferAction_getLoc(node) ((node)->loc) | |
32 | ||
33 | extern /*@observer@*/ cstring mtTransferAction_getMessage (mtTransferAction) /*@*/ ; | |
34 | ||
35 | extern bool mtTransferAction_isError (mtTransferAction) /*@*/ ; | |
36 | # define mtTransferAction_isError(node) ((node)->kind == MTAK_ERROR) | |
37 | ||
38 | extern mtTransferAction mtTransferAction_createError (/*@only@*/ mttok) /*@*/ ; | |
39 | ||
40 | extern mtTransferAction | |
41 | mtTransferAction_createErrorMessage (/*@only@*/ mttok p_message) /*@*/ ; | |
42 | ||
43 | # else | |
44 | # error "Multiple include" | |
45 | # endif |