Motr  M0
parser.h
Go to the documentation of this file.
1 /* -*- C -*- */
2 /*
3  * Copyright (c) 2012-2020 Seagate Technology LLC and/or its Affiliates
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  * For any questions about this software or licensing,
18  * please email opensource@seagate.com or cortx-questions@seagate.com.
19  *
20  */
21 
22 
23 #pragma once
24 
25 #ifndef __MOTR_XCODE_FF2C_PARSER_H__
26 #define __MOTR_XCODE_FF2C_PARSER_H__
27 
37 #include "xcode/ff2c/lex.h"
38 
39 /* export */
40 struct ff2c_term;
41 
43  FNT_FF = 1,
52 };
53 extern const char *ff2c_term_type_name[];
54 
55 struct ff2c_term {
58  struct ff2c_term *fn_head;
59  struct ff2c_term *fn_tail;
60  struct ff2c_term *fn_next;
62 };
63 
64 int ff2c_parse(struct ff2c_context *ctx, struct ff2c_term **out);
65 void ff2c_term_fini(struct ff2c_term *term);
66 
67 
70 /* __MOTR_XCODE_FF2C_PARSER_H__ */
71 #endif
72 
73 /*
74  * Local variables:
75  * c-indentation-style: "K&R"
76  * c-basic-offset: 8
77  * tab-width: 8
78  * fill-column: 80
79  * scroll-step: 1
80  * End:
81  */
Definition: parser.h:49
struct ff2c_token fn_tok
Definition: parser.h:61
const char * ff2c_term_type_name[]
Definition: parser.c:236
Definition: parser.h:43
enum ff2c_term_type fn_type
Definition: parser.h:56
ff2c_term_type
Definition: parser.h:42
struct ff2c_term * fn_head
Definition: parser.h:58
struct ff2c_term * fn_tail
Definition: parser.h:59
struct ff2c_term * fn_parent
Definition: parser.h:57
Definition: parser.h:51
struct ff2c_term * fn_next
Definition: parser.h:60
Definition: lex.h:94
struct m0_rpc_fop_session_terminate term
Definition: session.c:53
Definition: nucleus.c:42
#define out(...)
Definition: gen.c:41
void ff2c_term_fini(struct ff2c_term *term)
Definition: parser.c:231
int ff2c_parse(struct ff2c_context *ctx, struct ff2c_term **out)
Definition: parser.c:225