general_parser/
configuration.rs

1#[derive(Clone, Copy, Debug)]
2pub struct BinaryOperator<'a> {
3	pub representation: &'a str,
4	pub precedence: u8,
5}
6
7#[derive(Clone, Copy, Debug)]
8pub struct UnaryOperator<'a> {
9	pub representation: &'a str,
10	pub precedence: u8,
11}
12
13#[derive(Default, Debug)]
14pub struct Configuration<'a> {
15	pub prefix_unary_operators: Vec<UnaryOperator<'a>>,
16	pub postfix_unary_operators: Vec<UnaryOperator<'a>>,
17	pub binary_operators: Vec<BinaryOperator<'a>>,
18	pub adjacency: Option<Adjacency<'a>>,
19}
20
21#[derive(Debug)]
22pub struct Adjacency<'a> {
23	// TODO skip
24	pub operator: BinaryOperator<'a>,
25	pub functions: Vec<&'a str>,
26}