Решение на Логически изрази от Божидар Виденов
Към профила на Божидар Виденов
Резултати
- 0 точки от тестове
- 0 бонус точки
- 0 точки общо
- 0 успешни тест(а)
- 0 неуспешни тест(а)
Код
#[derive(Clone, Debug, PartialEq, Eq)]
pub enum Expression {
Atom(char),
Not(Box<Expression>),
And(Vec<Expression>),
Or(Vec<Expression>),
}
#[derive(Debug, PartialEq, Eq)]
pub enum ParseError {
UnexpectedExpr,
UnexpectedUnaryOp,
UnexpectedBinOp,
UnexpectedParen,
UnexpectedEnd,
}
pub struct SimpleExprParser {
operands: Vec<Expression>,
ops: Vec<char>,
pending_nots: usize,
expect_operand: bool,
}
impl SimpleExprParser {
pub fn new() -> SimpleExprParser {
SimpleExprParser {
operands: Vec::new(),
ops: Vec::new(),
pending_nots: 0,
expect_operand: true,
}
}
pub fn push_atom(&mut self, c: char) -> Result<(), ParseError> {
if !self.expect_operand {
return Err(ParseError::UnexpectedExpr);
}
let mut expr = Expression::Atom(c);
for _ in 0..self.pending_nots {
expr = Expression::Not(Box::new(expr));
}
self.pending_nots = 0;
self.operands.push(expr);
self.expect_operand = false;
Ok(())
}
pub fn push_op(&mut self, op: char) -> Result<(), ParseError> {
match op {
'!' => {
if !self.expect_operand {
return Err(ParseError::UnexpectedUnaryOp);
}
self.pending_nots += 1;
Ok(())
}
'&' | '|' => {
if self.expect_operand {
return Err(ParseError::UnexpectedBinOp);
}
self.ops.push(op);
self.expect_operand = true;
Ok(())
}
_ => panic!("Invalid operator"),
}
}
fn expect_operand_check(&mut self, e: Expression) -> Result<(), ParseError> {
if !self.expect_operand {
return Err(ParseError::UnexpectedExpr);
}
if self.pending_nots > 0 {
let mut expr = e;
for _ in 0..self.pending_nots {
expr = Expression::Not(Box::new(expr));
}
self.pending_nots = 0;
self.operands.push(expr);
} else {
self.operands.push(e);
}
self.expect_operand = false;
Ok(())
}
pub fn finish(self) -> Result<Expression, ParseError> {
if self.expect_operand {
return Err(ParseError::UnexpectedEnd);
}
if self.pending_nots > 0 {
return Err(ParseError::UnexpectedEnd);
}
let mut expr = self.operands[0].clone();
for (i, &op) in self.ops.iter().enumerate() {
let next = self.operands[i + 1].clone();
expr = combine(expr, op, next);
}
Ok(expr)
}
}
fn combine(left: Expression, op: char, right: Expression) -> Expression {
match op {
'&' => {
if let Expression::And(mut v) = left {
v.push(right);
Expression::And(v)
} else {
Expression::And(vec![left, right])
}
}
'|' => {
if let Expression::Or(mut v) = left {
v.push(right);
Expression::Or(v)
} else {
Expression::Or(vec![left, right])
}
}
_ => panic!("Invalid operator"),
}
}
pub struct ExprParser {
stack: Vec<SimpleExprParser>,
}
impl ExprParser {
pub fn new() -> ExprParser {
ExprParser {
stack: vec![SimpleExprParser::new()],
}
}
pub fn push_atom(&mut self, c: char) -> Result<(), ParseError> {
self.top_mut().push_atom(c)
}
pub fn push_op(&mut self, op: char) -> Result<(), ParseError> {
self.top_mut().push_op(op)
}
pub fn open_paren(&mut self) -> Result<(), ParseError> {
self.stack.push(SimpleExprParser::new());
Ok(())
}
pub fn close_paren(&mut self) -> Result<(), ParseError> {
if self.stack.len() == 1 {
return Err(ParseError::UnexpectedParen);
}
let parser = self.stack.pop().unwrap();
let expr = parser.finish()?;
self.top_mut().expect_operand_check(expr)
}
fn top_mut(&mut self) -> &mut SimpleExprParser {
self.stack.last_mut().unwrap()
}
pub fn finish(mut self) -> Result<Expression, ParseError> {
if self.stack.len() != 1 {
return Err(ParseError::UnexpectedParen);
}
self.stack.pop().unwrap().finish()
}
}
#[derive(Clone, Debug, PartialEq, Eq)]
pub enum Value {
True,
False,
Expr(Expression),
}
fn eval_rec(
e: &Expression,
tset: &std::collections::HashSet<char>,
fset: &std::collections::HashSet<char>,
) -> Value {
use Value::*;
match e {
Expression::Atom(c) => {
if tset.contains(c) {
True
} else if fset.contains(c) {
False
} else {
Expr(Expression::Atom(*c))
}
}
Expression::Not(inner) => match eval_rec(inner, tset, fset) {
True => False,
False => True,
Expr(x) => Expr(Expression::Not(Box::new(x))),
},
Expression::And(v) => {
let mut new_exprs = Vec::new();
for sub in v {
match eval_rec(sub, tset, fset) {
False => return False,
True => (),
Expr(x) => new_exprs.push(x),
}
}
if new_exprs.is_empty() {
True
} else if new_exprs.len() == 1 {
Expr(new_exprs.pop().unwrap())
} else {
Expr(Expression::And(new_exprs))
}
}
Expression::Or(v) => {
let mut new_exprs = Vec::new();
for sub in v {
match eval_rec(sub, tset, fset) {
True => return True,
False => (),
Expr(x) => new_exprs.push(x),
}
}
if new_exprs.is_empty() {
False
} else if new_exprs.len() == 1 {
Expr(new_exprs.pop().unwrap())
} else {
Expr(Expression::Or(new_exprs))
}
}
}
}
pub fn eval(expr: &Expression, truthy: &[char], falsy: &[char]) -> Value {
let tset: std::collections::HashSet<char> = truthy.iter().cloned().collect();
let fset: std::collections::HashSet<char> = falsy.iter().cloned().collect();
eval_rec(expr, &tset, &fset)
}
Лог от изпълнението
Compiling solution v0.1.0 (/tmp/d20241224-258381-1ua07gt/solution)
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
78 | assert_eq!(parser.finish().unwrap(), expr!(atom('A')));
| ---------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
88 | assert_eq!(parser.finish().unwrap(), expr!(and(atom('A'), atom('B'))));
| -------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
88 | assert_eq!(parser.finish().unwrap(), expr!(and(atom('A'), atom('B'))));
| -------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
92 | assert_eq!(parser.finish().unwrap(), expr!(or(atom('A'), atom('B'))));
| ------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
92 | assert_eq!(parser.finish().unwrap(), expr!(or(atom('A'), atom('B'))));
| ------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
101 | assert_eq!(parser.finish().unwrap(), expr!(not(atom('B'))));
| --------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
101 | assert_eq!(parser.finish().unwrap(), expr!(not(atom('B'))));
| --------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
110 | assert_eq!(parser.finish().unwrap(), expr!(and(atom('A'), not(atom('B')))));
| ------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
110 | assert_eq!(parser.finish().unwrap(), expr!(and(atom('A'), not(atom('B')))));
| ------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
110 | assert_eq!(parser.finish().unwrap(), expr!(and(atom('A'), not(atom('B')))));
| ------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
114 | assert_eq!(parser.finish().unwrap(), expr!(or(not(atom('A')), atom('B'))));
| ------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
114 | assert_eq!(parser.finish().unwrap(), expr!(or(not(atom('A')), atom('B'))));
| ------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
114 | assert_eq!(parser.finish().unwrap(), expr!(or(not(atom('A')), atom('B'))));
| ------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
118 | assert_eq!(parser.finish().unwrap(), expr!(and(not(atom('A')), not(atom('B')))));
| ------------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
118 | assert_eq!(parser.finish().unwrap(), expr!(and(not(atom('A')), not(atom('B')))));
| ------------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
118 | assert_eq!(parser.finish().unwrap(), expr!(and(not(atom('A')), not(atom('B')))));
| ------------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
127 | assert_eq!(parser.finish().unwrap(), expr!(and(atom('A'), atom('B'), atom('C'))));
| ------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
127 | assert_eq!(parser.finish().unwrap(), expr!(and(atom('A'), atom('B'), atom('C'))));
| ------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
133 | expr!(or(atom('X'), atom('Y'), atom('Z'), atom('W')))
| ----------------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
133 | expr!(or(atom('X'), atom('Y'), atom('Z'), atom('W')))
| ----------------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
143 | assert_eq!(parser.finish().unwrap(), expr!(not(not(not(atom('B'))))));
| ------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
143 | assert_eq!(parser.finish().unwrap(), expr!(not(not(not(atom('B'))))));
| ------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
147 | assert_eq!(parser.finish().unwrap(), expr!(or(atom('A'), not(not(atom('B'))))));
| ----------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
147 | assert_eq!(parser.finish().unwrap(), expr!(or(atom('A'), not(not(atom('B'))))));
| ----------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
147 | assert_eq!(parser.finish().unwrap(), expr!(or(atom('A'), not(not(atom('B'))))));
| ----------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
151 | assert_eq!(parser.finish().unwrap(), expr!(or(not(not(atom('A'))), atom('B'))));
| ----------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
151 | assert_eq!(parser.finish().unwrap(), expr!(or(not(not(atom('A'))), atom('B'))));
| ----------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
151 | assert_eq!(parser.finish().unwrap(), expr!(or(not(not(atom('A'))), atom('B'))));
| ----------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
162 | expr!(and(or(and(atom('A'), atom('B')), atom('C')), atom('D')))
| --------------------------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
162 | expr!(and(or(and(atom('A'), atom('B')), atom('C')), atom('D')))
| --------------------------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
162 | expr!(and(or(and(atom('A'), atom('B')), atom('C')), atom('D')))
| --------------------------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
169 | expr!(or(and(or(atom('A'), atom('B')), atom('C')), atom('D')))
| -------------------------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
169 | expr!(or(and(or(atom('A'), atom('B')), atom('C')), atom('D')))
| -------------------------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
169 | expr!(or(and(or(atom('A'), atom('B')), atom('C')), atom('D')))
| -------------------------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
179 | assert_eq!(parser.finish().unwrap(), expr!(atom('A')));
| ---------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
183 | assert_eq!(parser.finish().unwrap(), expr!(and(atom('A'), atom('B'))));
| -------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
183 | assert_eq!(parser.finish().unwrap(), expr!(and(atom('A'), atom('B'))));
| -------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
187 | assert_eq!(parser.finish().unwrap(), expr!(or(atom('A'), atom('B'))));
| ------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
187 | assert_eq!(parser.finish().unwrap(), expr!(or(atom('A'), atom('B'))));
| ------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
191 | assert_eq!(parser.finish().unwrap(), expr!(not(atom('A'))));
| --------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
191 | assert_eq!(parser.finish().unwrap(), expr!(not(atom('A'))));
| --------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
202 | expr!(or(atom('X'), and(atom('A'), atom('B'))))
| ----------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
202 | expr!(or(atom('X'), and(atom('A'), atom('B'))))
| ----------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
202 | expr!(or(atom('X'), and(atom('A'), atom('B'))))
| ----------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
209 | expr!(and(or(atom('A'), atom('B')), atom('X')))
| ----------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
209 | expr!(and(or(atom('A'), atom('B')), atom('X')))
| ----------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
209 | expr!(and(or(atom('A'), atom('B')), atom('X')))
| ----------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
221 | expr!(and(atom('X'), not(or(atom('A'), atom('B')))))
| ---------------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
221 | expr!(and(atom('X'), not(or(atom('A'), atom('B')))))
| ---------------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
221 | expr!(and(atom('X'), not(or(atom('A'), atom('B')))))
| ---------------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
221 | expr!(and(atom('X'), not(or(atom('A'), atom('B')))))
| ---------------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
228 | expr!(or(not(or(atom('A'), atom('B'))), atom('X')))
| --------------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
228 | expr!(or(not(or(atom('A'), atom('B'))), atom('X')))
| --------------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
228 | expr!(or(not(or(atom('A'), atom('B'))), atom('X')))
| --------------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
240 | / expr!(or(
241 | | atom('X'),
242 | | and(atom('A'), atom('B')),
243 | | and(atom('C'), atom('D')),
244 | | atom('Y')
245 | | ))
| |______________- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
240 | / expr!(or(
241 | | atom('X'),
242 | | and(atom('A'), atom('B')),
243 | | and(atom('C'), atom('D')),
244 | | atom('Y')
245 | | ))
| |______________- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
240 | / expr!(or(
241 | | atom('X'),
242 | | and(atom('A'), atom('B')),
243 | | and(atom('C'), atom('D')),
244 | | atom('Y')
245 | | ))
| |______________- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
257 | expr!(not(and(atom('A'), not(and(atom('B'), not(and(atom('C'), atom('D'))))))))
| ------------------------------------------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
257 | expr!(not(and(atom('A'), not(and(atom('B'), not(and(atom('C'), atom('D'))))))))
| ------------------------------------------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
257 | expr!(not(and(atom('A'), not(and(atom('B'), not(and(atom('C'), atom('D'))))))))
| ------------------------------------------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
372 | assert_eq!(eval(&expr!(atom('A')), &['A'], &[]), Value::True);
| ---------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
373 | assert_eq!(eval(&expr!(atom('A')), &[], &['A']), Value::False);
| ---------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
375 | assert_eq!(eval(&expr!(not(atom('B'))), &['A'], &['B']), Value::True);
| --------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
375 | assert_eq!(eval(&expr!(not(atom('B'))), &['A'], &['B']), Value::True);
| --------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
376 | assert_eq!(eval(&expr!(not(atom('B'))), &['B'], &['A']), Value::False);
| --------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
376 | assert_eq!(eval(&expr!(not(atom('B'))), &['B'], &['A']), Value::False);
| --------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
378 | assert_eq!(eval(&expr!(and(atom('A'), atom('B'))), &['A', 'B'], &[]), Value::True);
| -------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
378 | assert_eq!(eval(&expr!(and(atom('A'), atom('B'))), &['A', 'B'], &[]), Value::True);
| -------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
379 | assert_eq!(eval(&expr!(and(atom('A'), atom('B'))), &['A'], &['B']), Value::False);
| -------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
379 | assert_eq!(eval(&expr!(and(atom('A'), atom('B'))), &['A'], &['B']), Value::False);
| -------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
380 | assert_eq!(eval(&expr!(or(atom('A'), atom('B'))), &['A'], &['B']), Value::True);
| ------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
380 | assert_eq!(eval(&expr!(or(atom('A'), atom('B'))), &['A'], &['B']), Value::True);
| ------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
381 | assert_eq!(eval(&expr!(or(atom('A'), atom('B'))), &[], &['A', 'B']), Value::False);
| ------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
381 | assert_eq!(eval(&expr!(or(atom('A'), atom('B'))), &[], &['A', 'B']), Value::False);
| ------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
389 | eval(&expr!(not(and(atom('A'), atom('B')))), &['A', 'B'], &[]),
| ------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
389 | eval(&expr!(not(and(atom('A'), atom('B')))), &['A', 'B'], &[]),
| ------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
389 | eval(&expr!(not(and(atom('A'), atom('B')))), &['A', 'B'], &[]),
| ------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
393 | eval(&expr!(not(and(atom('A'), atom('B')))), &['A'], &['B']),
| ------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
393 | eval(&expr!(not(and(atom('A'), atom('B')))), &['A'], &['B']),
| ------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
393 | eval(&expr!(not(and(atom('A'), atom('B')))), &['A'], &['B']),
| ------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
397 | eval(&expr!(not(or(atom('A'), atom('B')))), &['A'], &['B']),
| ------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
397 | eval(&expr!(not(or(atom('A'), atom('B')))), &['A'], &['B']),
| ------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
397 | eval(&expr!(not(or(atom('A'), atom('B')))), &['A'], &['B']),
| ------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
401 | eval(&expr!(not(or(atom('A'), atom('B')))), &[], &['A', 'B']),
| ------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
401 | eval(&expr!(not(or(atom('A'), atom('B')))), &[], &['A', 'B']),
| ------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
401 | eval(&expr!(not(or(atom('A'), atom('B')))), &[], &['A', 'B']),
| ------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
410 | assert_eq!(eval(&expr!(atom('A')), &[], &[]), Value::Expr(expr!(atom('A'))));
| ---------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
410 | assert_eq!(eval(&expr!(atom('A')), &[], &[]), Value::Expr(expr!(atom('A'))));
| ---------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
412 | eval(&expr!(not(atom('B'))), &[], &[]),
| --------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
412 | eval(&expr!(not(atom('B'))), &[], &[]),
| --------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
413 | Value::Expr(expr!(not(atom('B'))))
| --------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
413 | Value::Expr(expr!(not(atom('B'))))
| --------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
417 | eval(&expr!(and(atom('A'), atom('B'), atom('C'))), &['B'], &[]),
| ------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
417 | eval(&expr!(and(atom('A'), atom('B'), atom('C'))), &['B'], &[]),
| ------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
418 | Value::Expr(expr!(and(atom('A'), atom('C'))))
| -------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
418 | Value::Expr(expr!(and(atom('A'), atom('C'))))
| -------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
421 | eval(&expr!(and(atom('A'), atom('B'), atom('C'))), &[], &['B']),
| ------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
421 | eval(&expr!(and(atom('A'), atom('B'), atom('C'))), &[], &['B']),
| ------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
426 | eval(&expr!(or(atom('A'), atom('B'), atom('C'))), &['B'], &[]),
| ------------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
426 | eval(&expr!(or(atom('A'), atom('B'), atom('C'))), &['B'], &[]),
| ------------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
430 | eval(&expr!(or(atom('A'), atom('B'), atom('C'))), &[], &['B']),
| ------------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
430 | eval(&expr!(or(atom('A'), atom('B'), atom('C'))), &[], &['B']),
| ------------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
431 | Value::Expr(expr!(or(atom('A'), atom('C'))))
| ------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
431 | Value::Expr(expr!(or(atom('A'), atom('C'))))
| ------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
435 | eval(&expr!(and(atom('A'), not(atom('B')), atom('C'))), &[], &['B']),
| ------------------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
435 | eval(&expr!(and(atom('A'), not(atom('B')), atom('C'))), &[], &['B']),
| ------------------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
435 | eval(&expr!(and(atom('A'), not(atom('B')), atom('C'))), &[], &['B']),
| ------------------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
436 | Value::Expr(expr!(and(atom('A'), atom('C'))))
| -------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
436 | Value::Expr(expr!(and(atom('A'), atom('C'))))
| -------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
439 | eval(&expr!(and(atom('A'), not(atom('B')), atom('C'))), &['B'], &[]),
| ------------------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
439 | eval(&expr!(and(atom('A'), not(atom('B')), atom('C'))), &['B'], &[]),
| ------------------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
439 | eval(&expr!(and(atom('A'), not(atom('B')), atom('C'))), &['B'], &[]),
| ------------------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
444 | eval(&expr!(or(atom('A'), not(atom('B')), atom('C'))), &[], &['B']),
| ----------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
444 | eval(&expr!(or(atom('A'), not(atom('B')), atom('C'))), &[], &['B']),
| ----------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
444 | eval(&expr!(or(atom('A'), not(atom('B')), atom('C'))), &[], &['B']),
| ----------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
448 | eval(&expr!(or(atom('A'), not(atom('B')), atom('C'))), &['B'], &[]),
| ----------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
448 | eval(&expr!(or(atom('A'), not(atom('B')), atom('C'))), &['B'], &[]),
| ----------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
448 | eval(&expr!(or(atom('A'), not(atom('B')), atom('C'))), &['B'], &[]),
| ----------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
449 | Value::Expr(expr!(or(atom('A'), atom('C'))))
| ------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
449 | Value::Expr(expr!(or(atom('A'), atom('C'))))
| ------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
458 | eval(&expr!(and(atom('A'), atom('B'), atom('C'))), &['A', 'C'], &[]),
| ------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
458 | eval(&expr!(and(atom('A'), atom('B'), atom('C'))), &['A', 'C'], &[]),
| ------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
459 | Value::Expr(expr!(atom('B')))
| ---------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
462 | eval(&expr!(or(atom('A'), atom('B'), atom('C'))), &[], &['A', 'C']),
| ------------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
462 | eval(&expr!(or(atom('A'), atom('B'), atom('C'))), &[], &['A', 'C']),
| ------------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
463 | Value::Expr(expr!(atom('B')))
| ---------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
467 | eval(&expr!(and(atom('A'), not(atom('B')), atom('C'))), &['A', 'C'], &[]),
| ------------------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
467 | eval(&expr!(and(atom('A'), not(atom('B')), atom('C'))), &['A', 'C'], &[]),
| ------------------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
467 | eval(&expr!(and(atom('A'), not(atom('B')), atom('C'))), &['A', 'C'], &[]),
| ------------------------------------------------ in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
468 | Value::Expr(expr!(not(atom('B'))))
| --------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
468 | Value::Expr(expr!(not(atom('B'))))
| --------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
471 | eval(&expr!(or(atom('A'), not(atom('B')), atom('C'))), &[], &['A', 'C']),
| ----------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
471 | eval(&expr!(or(atom('A'), not(atom('B')), atom('C'))), &[], &['A', 'C']),
| ----------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
471 | eval(&expr!(or(atom('A'), not(atom('B')), atom('C'))), &[], &['A', 'C']),
| ----------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
472 | Value::Expr(expr!(not(atom('B'))))
| --------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
472 | Value::Expr(expr!(not(atom('B'))))
| --------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
482 | &expr!(or(
| __________________-
483 | | atom('X'),
484 | | and(atom('A'), atom('B')),
485 | | not(and(atom('C'), atom('D'))),
486 | | atom('Y')
487 | | )),
| |__________________- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
482 | &expr!(or(
| __________________-
483 | | atom('X'),
484 | | and(atom('A'), atom('B')),
485 | | not(and(atom('C'), atom('D'))),
486 | | atom('Y')
487 | | )),
| |__________________- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:36:9
|
36 | Expr::And(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
482 | &expr!(or(
| __________________-
483 | | atom('X'),
484 | | and(atom('A'), atom('B')),
485 | | not(and(atom('C'), atom('D'))),
486 | | atom('Y')
487 | | )),
| |__________________- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
36 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
482 | &expr!(or(
| __________________-
483 | | atom('X'),
484 | | and(atom('A'), atom('B')),
485 | | not(and(atom('C'), atom('D'))),
486 | | atom('Y')
487 | | )),
| |__________________- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:39:9
|
39 | Expr::Or(vec![$( expr!($tag($( $e )*)) ),*])
| ^^^^ use of undeclared type `Expr`
...
491 | Value::Expr(expr!(or(atom('X'), atom('B'), not(atom('D')), atom('Y'))))
| ---------------------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
39 | crate::solution_test::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | solution::Value(vec![$( expr!($tag($( $e )*)) ),*])
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:30:9
|
30 | Expr::Atom($c)
| ^^^^ use of undeclared type `Expr`
...
491 | Value::Expr(expr!(or(atom('X'), atom('B'), not(atom('D')), atom('Y'))))
| ---------------------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
30 | crate::solution_test::Value($c)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 | solution::Value($c)
| ~~~~~~~~~~~~~~~
error[E0433]: failed to resolve: use of undeclared type `Expr`
--> tests/solution_test.rs:33:9
|
33 | Expr::Not(Box::new(expr!( $tag($( $e )*) )))
| ^^^^ use of undeclared type `Expr`
...
491 | Value::Expr(expr!(or(atom('X'), atom('B'), not(atom('D')), atom('Y'))))
| ---------------------------------------------------------- in this macro invocation
|
= note: this error originates in the macro `expr` (in Nightly builds, run with -Z macro-backtrace for more info)
help: there is an enum variant `crate::solution_test::Value::Expr` and 1 other; try using the variant's enum
|
33 | crate::solution_test::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 | solution::Value(Box::new(expr!( $tag($( $e )*) )))
| ~~~~~~~~~~~~~~~
For more information about this error, try `rustc --explain E0433`.
error: could not compile `solution` due to 237 previous errors
