--- source: crates/ruff_python_parser/tests/fixtures.rs input_file: crates/ruff_python_parser/resources/valid/expressions/await.py --- ## AST ``` Module( ModModule { node_index: AtomicNodeIndex(..), range: 0..211, body: [ Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 0..7, value: Await( ExprAwait { node_index: AtomicNodeIndex(..), range: 0..7, value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 6..7, id: Name("x"), ctx: Load, }, ), }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 8..19, value: BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 8..19, left: Await( ExprAwait { node_index: AtomicNodeIndex(..), range: 8..15, value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 14..15, id: Name("x"), ctx: Load, }, ), }, ), op: Add, right: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 18..19, value: Int( 1, ), }, ), }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 20..33, value: BoolOp( ExprBoolOp { node_index: AtomicNodeIndex(..), range: 20..33, op: And, values: [ Await( ExprAwait { node_index: AtomicNodeIndex(..), range: 20..27, value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 26..27, id: Name("a"), ctx: Load, }, ), }, ), Name( ExprName { node_index: AtomicNodeIndex(..), range: 32..33, id: Name("b"), ctx: Load, }, ), ], }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 34..43, value: Await( ExprAwait { node_index: AtomicNodeIndex(..), range: 34..43, value: Call( ExprCall { node_index: AtomicNodeIndex(..), range: 40..43, func: Name( ExprName { node_index: AtomicNodeIndex(..), range: 40..41, id: Name("f"), ctx: Load, }, ), arguments: Arguments { range: 41..43, node_index: AtomicNodeIndex(..), args: [], keywords: [], }, }, ), }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 44..56, value: Await( ExprAwait { node_index: AtomicNodeIndex(..), range: 44..56, value: List( ExprList { node_index: AtomicNodeIndex(..), range: 50..56, elts: [ NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 51..52, value: Int( 1, ), }, ), NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 54..55, value: Int( 2, ), }, ), ], ctx: Load, }, ), }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 57..69, value: Await( ExprAwait { node_index: AtomicNodeIndex(..), range: 57..69, value: Set( ExprSet { node_index: AtomicNodeIndex(..), range: 63..69, elts: [ NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 64..65, value: Int( 3, ), }, ), NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 67..68, value: Int( 4, ), }, ), ], }, ), }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 70..82, value: Await( ExprAwait { node_index: AtomicNodeIndex(..), range: 70..82, value: Dict( ExprDict { node_index: AtomicNodeIndex(..), range: 76..82, items: [ DictItem { key: Some( Name( ExprName { node_index: AtomicNodeIndex(..), range: 77..78, id: Name("i"), ctx: Load, }, ), ), value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 80..81, value: Int( 5, ), }, ), }, ], }, ), }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 83..93, value: Tuple( ExprTuple { node_index: AtomicNodeIndex(..), range: 83..93, elts: [ Await( ExprAwait { node_index: AtomicNodeIndex(..), range: 83..90, value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 89..90, value: Int( 7, ), }, ), }, ), NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 92..93, value: Int( 8, ), }, ), ], ctx: Load, parenthesized: false, }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 94..107, value: Await( ExprAwait { node_index: AtomicNodeIndex(..), range: 94..107, value: Tuple( ExprTuple { node_index: AtomicNodeIndex(..), range: 100..107, elts: [ NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 101..102, value: Int( 9, ), }, ), NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 104..106, value: Int( 10, ), }, ), ], ctx: Load, parenthesized: true, }, ), }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 108..120, value: Compare( ExprCompare { node_index: AtomicNodeIndex(..), range: 108..120, left: Await( ExprAwait { node_index: AtomicNodeIndex(..), range: 108..115, value: NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 114..115, value: Int( 1, ), }, ), }, ), ops: [ Eq, ], comparators: [ NumberLiteral( ExprNumberLiteral { node_index: AtomicNodeIndex(..), range: 119..120, value: Int( 1, ), }, ), ], }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 121..146, value: If( ExprIf { node_index: AtomicNodeIndex(..), range: 121..146, test: BooleanLiteral( ExprBooleanLiteral { node_index: AtomicNodeIndex(..), range: 132..136, value: true, }, ), body: Await( ExprAwait { node_index: AtomicNodeIndex(..), range: 121..128, value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 127..128, id: Name("x"), ctx: Load, }, ), }, ), orelse: NoneLiteral( ExprNoneLiteral { node_index: AtomicNodeIndex(..), range: 142..146, }, ), }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 147..158, value: Await( ExprAwait { node_index: AtomicNodeIndex(..), range: 147..158, value: Tuple( ExprTuple { node_index: AtomicNodeIndex(..), range: 153..158, elts: [ Starred( ExprStarred { node_index: AtomicNodeIndex(..), range: 154..156, value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 155..156, id: Name("x"), ctx: Load, }, ), ctx: Load, }, ), ], ctx: Load, parenthesized: true, }, ), }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 159..178, value: Await( ExprAwait { node_index: AtomicNodeIndex(..), range: 159..178, value: Lambda( ExprLambda { node_index: AtomicNodeIndex(..), range: 166..177, parameters: Some( Parameters { range: 173..174, node_index: AtomicNodeIndex( 0, ), posonlyargs: [], args: [ ParameterWithDefault { range: 173..174, node_index: AtomicNodeIndex(..), parameter: Parameter { range: 173..174, node_index: AtomicNodeIndex(..), name: Identifier { id: Name("x"), range: 173..174, node_index: AtomicNodeIndex(..), }, annotation: None, }, default: None, }, ], vararg: None, kwonlyargs: [], kwarg: None, }, ), body: Name( ExprName { node_index: AtomicNodeIndex(..), range: 176..177, id: Name("x"), ctx: Load, }, ), }, ), }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 179..192, value: BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 179..192, left: Await( ExprAwait { node_index: AtomicNodeIndex(..), range: 179..186, value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 185..186, id: Name("x"), ctx: Load, }, ), }, ), op: Pow, right: UnaryOp( ExprUnaryOp { node_index: AtomicNodeIndex(..), range: 190..192, op: USub, operand: Name( ExprName { node_index: AtomicNodeIndex(..), range: 191..192, id: Name("x"), ctx: Load, }, ), }, ), }, ), }, ), Expr( StmtExpr { node_index: AtomicNodeIndex(..), range: 193..211, value: BinOp( ExprBinOp { node_index: AtomicNodeIndex(..), range: 193..211, left: Await( ExprAwait { node_index: AtomicNodeIndex(..), range: 193..200, value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 199..200, id: Name("x"), ctx: Load, }, ), }, ), op: Pow, right: Await( ExprAwait { node_index: AtomicNodeIndex(..), range: 204..211, value: Name( ExprName { node_index: AtomicNodeIndex(..), range: 210..211, id: Name("y"), ctx: Load, }, ), }, ), }, ), }, ), ], }, ) ```