--- source: crates/aiken-lang/src/parser/expr/when/mod.rs description: "Code:\n\nwhen a is {\n 2 if x > 1 -> 3\n 1 | 4 | 5 -> {\n let amazing = 5\n amazing\n }\n 3 -> 9\n _ -> 4\n}\n" --- When { location: 0..102, subject: Var { location: 5..6, name: "a", }, clauses: [ UntypedClause { location: 14..29, patterns: [ Int { location: 14..15, value: "2", base: Decimal { numeric_underscore: false, }, }, ], guard: Some( GtInt { location: 19..24, left: Var { location: 19..20, tipo: (), name: "x", }, right: Constant( Int { location: 23..24, value: "1", base: Decimal { numeric_underscore: false, }, }, ), }, ), then: Int { location: 28..29, value: "3", base: Decimal { numeric_underscore: false, }, }, }, UntypedClause { location: 32..82, patterns: [ Int { location: 32..33, value: "1", base: Decimal { numeric_underscore: false, }, }, Int { location: 36..37, value: "4", base: Decimal { numeric_underscore: false, }, }, Int { location: 40..41, value: "5", base: Decimal { numeric_underscore: false, }, }, ], guard: None, then: Sequence { location: 51..78, expressions: [ Assignment { location: 51..66, value: Int { location: 65..66, value: "5", base: Decimal { numeric_underscore: false, }, }, pattern: Var { location: 55..62, name: "amazing", }, kind: Let, annotation: None, }, Var { location: 71..78, name: "amazing", }, ], }, }, UntypedClause { location: 85..91, patterns: [ Int { location: 85..86, value: "3", base: Decimal { numeric_underscore: false, }, }, ], guard: None, then: Int { location: 90..91, value: "9", base: Decimal { numeric_underscore: false, }, }, }, UntypedClause { location: 94..100, patterns: [ Discard { name: "_", location: 94..95, }, ], guard: None, then: Int { location: 99..100, value: "4", base: Decimal { numeric_underscore: false, }, }, }, ], }