general_parser/
configuration.rs

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