use dust_lang::*; use smallvec::smallvec; #[test] fn true_and_true_and_true() { let source = "true && true && true"; assert_eq!( compile(source), Ok(Chunk::with_data( None, FunctionType { type_parameters: None, value_parameters: None, return_type: Type::Boolean, }, smallvec![ Instruction::load_boolean(0, true, false), Instruction::test(0, true), Instruction::jump(1, true), Instruction::load_boolean(1, true, false), Instruction::test(1, true), Instruction::jump(1, true), Instruction::load_boolean(2, true, false), Instruction::r#return(true), ], smallvec![ Span(0, 4), Span(5, 7), Span(5, 7), Span(8, 12), Span(13, 15), Span(13, 15), Span(16, 20), Span(20, 20) ], smallvec![], smallvec![], vec![], )) ); }