api refactoring
[m6w6/ext-psi] / src / types / return_stmt.h
1 #ifndef _PSI_TYPES_RETURN_STMT_H
2 #define _PSI_TYPES_RETURN_STMT_H
3
4 typedef struct return_stmt {
5 struct psi_token *token;
6 set_value *set;
7 decl_arg *decl;
8 } return_stmt;
9
10 static inline return_stmt *init_return_stmt(set_value *val) {
11 return_stmt *ret = calloc(1, sizeof(*ret));
12 ret->set = val;
13 return ret;
14 }
15
16 static inline void free_return_stmt(return_stmt *ret) {
17 if (ret->token) {
18 free(ret->token);
19 }
20 free_set_value(ret->set);
21 free(ret);
22 }
23
24 #endif