1pub mod analyze;
2pub mod cache;
3pub mod call_classification;
4pub mod call_target;
5pub mod checker;
6pub mod context;
7pub mod diagnostics;
8pub mod facts;
9pub mod loader;
10pub mod module_graph;
11pub mod passes;
12pub mod path;
13pub mod prelude;
14pub mod promotion;
15pub mod store;
16
17use syntax::ast::Expression;
18
19pub(crate) fn is_trivial_expression(expression: &Expression) -> bool {
20 match expression {
21 Expression::Unit { .. } => true,
22 Expression::Block { items, .. } => {
23 items.is_empty() || (items.len() == 1 && matches!(items[0], Expression::Unit { .. }))
24 }
25 Expression::Tuple { elements, .. } => elements.is_empty(),
26 _ => false,
27 }
28}