[ty] Shrink size of AstNodeRef (#20028)

## Summary

Removes the `module_ptr` field from `AstNodeRef` in release mode, and
change `NodeIndex` to a `NonZeroU32` to reduce the size of
`Option<AstNodeRef<_>>` fields.

I believe CI runs in debug mode, so this won't show up in the memory
report, but this reduces memory by ~2% in release mode.
This commit is contained in:
Ibraheem Ahmed 2025-08-22 17:03:22 -04:00 committed by GitHub
parent 886c4e4773
commit 7abc41727b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
648 changed files with 19641 additions and 20364 deletions

View file

@ -215,7 +215,7 @@ pub fn parse_parenthesized_expression_range(
/// value: "'''\n int | str'''".to_string().into_boxed_str(),
/// flags: StringLiteralFlags::empty(),
/// range: TextRange::new(TextSize::new(0), TextSize::new(16)),
/// node_index: AtomicNodeIndex::dummy()
/// node_index: AtomicNodeIndex::NONE
/// };
/// let parsed = parse_string_annotation("'''\n int | str'''", &string);
/// assert!(!parsed.is_ok());

View file

@ -304,7 +304,7 @@ impl<'src> Parser<'src> {
op: bin_op,
right: Box::new(right.expr),
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
};
@ -472,7 +472,7 @@ impl<'src> Parser<'src> {
range: identifier.range,
id: identifier.id,
ctx,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -491,7 +491,7 @@ impl<'src> Parser<'src> {
return ast::Identifier {
id: name,
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
};
}
@ -501,7 +501,7 @@ impl<'src> Parser<'src> {
return ast::Identifier {
id,
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
};
}
@ -520,7 +520,7 @@ impl<'src> Parser<'src> {
ast::Identifier {
id,
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
} else {
self.add_error(
@ -531,7 +531,7 @@ impl<'src> Parser<'src> {
ast::Identifier {
id: Name::empty(),
range: self.missing_node_range(),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
}
@ -551,7 +551,7 @@ impl<'src> Parser<'src> {
Expr::NumberLiteral(ast::ExprNumberLiteral {
value: Number::Float(value),
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
TokenKind::Complex => {
@ -561,7 +561,7 @@ impl<'src> Parser<'src> {
Expr::NumberLiteral(ast::ExprNumberLiteral {
value: Number::Complex { real, imag },
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
TokenKind::Int => {
@ -571,7 +571,7 @@ impl<'src> Parser<'src> {
Expr::NumberLiteral(ast::ExprNumberLiteral {
value: Number::Int(value),
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
TokenKind::True => {
@ -579,7 +579,7 @@ impl<'src> Parser<'src> {
Expr::BooleanLiteral(ast::ExprBooleanLiteral {
value: true,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
TokenKind::False => {
@ -587,21 +587,21 @@ impl<'src> Parser<'src> {
Expr::BooleanLiteral(ast::ExprBooleanLiteral {
value: false,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
TokenKind::None => {
self.bump(TokenKind::None);
Expr::NoneLiteral(ast::ExprNoneLiteral {
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
TokenKind::Ellipsis => {
self.bump(TokenKind::Ellipsis);
Expr::EllipsisLiteral(ast::ExprEllipsisLiteral {
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
TokenKind::Name => Expr::Name(self.parse_name()),
@ -629,7 +629,7 @@ impl<'src> Parser<'src> {
range: self.missing_node_range(),
id: Name::empty(),
ctx: ExprContext::Invalid,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
}
@ -672,7 +672,7 @@ impl<'src> Parser<'src> {
func: Box::new(func),
arguments,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -702,7 +702,7 @@ impl<'src> Parser<'src> {
arg: None,
value: value.expr,
range: parser.node_range(argument_start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
});
seen_keyword_unpacking = true;
@ -767,7 +767,7 @@ impl<'src> Parser<'src> {
ast::Identifier {
id: ident_expr.id,
range: ident_expr.range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
} else {
// TODO(dhruvmanila): Parser shouldn't drop the `parsed_expr` if it's
@ -780,7 +780,7 @@ impl<'src> Parser<'src> {
ast::Identifier {
id: Name::empty(),
range: parsed_expr.range(),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
};
@ -790,7 +790,7 @@ impl<'src> Parser<'src> {
arg: Some(arg),
value: value.expr,
range: parser.node_range(argument_start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
});
} else {
if !parsed_expr.is_unparenthesized_starred_expr() {
@ -815,7 +815,7 @@ impl<'src> Parser<'src> {
let arguments = ast::Arguments {
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
args: args.into_boxed_slice(),
keywords: keywords.into_boxed_slice(),
};
@ -857,11 +857,11 @@ impl<'src> Parser<'src> {
range: slice_range,
id: Name::empty(),
ctx: ExprContext::Invalid,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})),
ctx: ExprContext::Load,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
};
}
@ -881,7 +881,7 @@ impl<'src> Parser<'src> {
ctx: ExprContext::Load,
range: self.node_range(slice_start),
parenthesized: false,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
});
} else if slice.is_starred_expr() {
// If the only slice element is a starred expression, that is represented
@ -892,7 +892,7 @@ impl<'src> Parser<'src> {
ctx: ExprContext::Load,
range: self.node_range(slice_start),
parenthesized: false,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
});
}
@ -941,7 +941,7 @@ impl<'src> Parser<'src> {
slice: Box::new(slice),
ctx: ExprContext::Load,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -1035,7 +1035,7 @@ impl<'src> Parser<'src> {
Expr::Slice(ast::ExprSlice {
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
lower,
upper,
step,
@ -1066,7 +1066,7 @@ impl<'src> Parser<'src> {
op,
operand: Box::new(operand.expr),
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -1091,7 +1091,7 @@ impl<'src> Parser<'src> {
attr,
ctx: ExprContext::Load,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -1135,7 +1135,7 @@ impl<'src> Parser<'src> {
values,
op,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -1215,7 +1215,7 @@ impl<'src> Parser<'src> {
ops: operators.into_boxed_slice(),
comparators: comparators.into_boxed_slice(),
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -1285,22 +1285,22 @@ impl<'src> Parser<'src> {
StringType::Str(string) => Expr::StringLiteral(ast::ExprStringLiteral {
value: ast::StringLiteralValue::single(string),
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}),
StringType::Bytes(bytes) => Expr::BytesLiteral(ast::ExprBytesLiteral {
value: ast::BytesLiteralValue::single(bytes),
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}),
StringType::FString(fstring) => Expr::FString(ast::ExprFString {
value: ast::FStringValue::single(fstring),
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}),
StringType::TString(tstring) => Expr::TString(ast::ExprTString {
value: ast::TStringValue::single(tstring),
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}),
},
_ => self.handle_implicitly_concatenated_strings(strings, range),
@ -1367,7 +1367,7 @@ impl<'src> Parser<'src> {
return Expr::from(ast::ExprBytesLiteral {
value: ast::BytesLiteralValue::concatenated(values),
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
});
}
}
@ -1395,7 +1395,7 @@ impl<'src> Parser<'src> {
return Expr::from(ast::ExprTString {
value: ast::TStringValue::concatenated(values),
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
});
}
}
@ -1433,7 +1433,7 @@ impl<'src> Parser<'src> {
return Expr::from(ast::ExprStringLiteral {
value: ast::StringLiteralValue::concatenated(values),
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
});
}
@ -1457,7 +1457,7 @@ impl<'src> Parser<'src> {
Expr::from(ast::ExprFString {
value: ast::FStringValue::concatenated(parts),
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
@ -1493,7 +1493,7 @@ impl<'src> Parser<'src> {
value: Box::new([]),
range,
flags: ast::BytesLiteralFlags::from(flags).with_invalid(),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
} else {
// test_err invalid_string_literal
@ -1503,7 +1503,7 @@ impl<'src> Parser<'src> {
value: "".into(),
range,
flags: ast::StringLiteralFlags::from(flags).with_invalid(),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
}
@ -1677,7 +1677,7 @@ impl<'src> Parser<'src> {
ast::InterpolatedStringLiteralElement {
value: "".into(),
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}),
)
@ -1846,7 +1846,7 @@ impl<'src> Parser<'src> {
Some(Box::new(ast::InterpolatedStringFormatSpec {
range: self.node_range(spec_start),
elements,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}))
} else {
None
@ -1898,7 +1898,7 @@ impl<'src> Parser<'src> {
conversion,
format_spec,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -1928,7 +1928,7 @@ impl<'src> Parser<'src> {
elts: vec![],
ctx: ExprContext::Load,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
});
}
@ -1980,7 +1980,7 @@ impl<'src> Parser<'src> {
return Expr::Dict(ast::ExprDict {
items: vec![],
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
});
}
@ -2091,7 +2091,7 @@ impl<'src> Parser<'src> {
elts: vec![],
ctx: ExprContext::Load,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
parenthesized: true,
})
.into();
@ -2180,7 +2180,7 @@ impl<'src> Parser<'src> {
elts,
ctx: ExprContext::Load,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
parenthesized: parenthesized.is_yes(),
}
}
@ -2209,7 +2209,7 @@ impl<'src> Parser<'src> {
elts,
ctx: ExprContext::Load,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -2258,7 +2258,7 @@ impl<'src> Parser<'src> {
ast::ExprSet {
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
elts,
}
}
@ -2301,7 +2301,7 @@ impl<'src> Parser<'src> {
ast::ExprDict {
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
items,
}
}
@ -2369,7 +2369,7 @@ impl<'src> Parser<'src> {
ast::Comprehension {
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
target: target.expr,
iter: iter.expr,
ifs,
@ -2399,7 +2399,7 @@ impl<'src> Parser<'src> {
elt: Box::new(element),
generators,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
parenthesized: parenthesized.is_yes(),
}
}
@ -2420,7 +2420,7 @@ impl<'src> Parser<'src> {
elt: Box::new(element),
generators,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -2442,7 +2442,7 @@ impl<'src> Parser<'src> {
value: Box::new(value),
generators,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -2462,7 +2462,7 @@ impl<'src> Parser<'src> {
elt: Box::new(element),
generators,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -2499,7 +2499,7 @@ impl<'src> Parser<'src> {
value: Box::new(parsed_expr.expr),
ctx: ExprContext::Load,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -2522,7 +2522,7 @@ impl<'src> Parser<'src> {
ast::ExprAwait {
value: Box::new(parsed_expr.expr),
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -2571,7 +2571,7 @@ impl<'src> Parser<'src> {
Expr::Yield(ast::ExprYield {
value,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
@ -2611,7 +2611,7 @@ impl<'src> Parser<'src> {
Expr::YieldFrom(ast::ExprYieldFrom {
value: Box::new(expr),
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
@ -2652,7 +2652,7 @@ impl<'src> Parser<'src> {
target: Box::new(target),
value: Box::new(value.expr),
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -2700,7 +2700,7 @@ impl<'src> Parser<'src> {
body: Box::new(body.expr),
parameters,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -2725,7 +2725,7 @@ impl<'src> Parser<'src> {
test: Box::new(test.expr),
orelse: Box::new(orelse.expr),
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -2751,7 +2751,7 @@ impl<'src> Parser<'src> {
let command = ast::ExprIpyEscapeCommand {
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
kind,
value,
};
@ -3010,7 +3010,7 @@ impl From<InterpolatedStringData> for FString {
elements: value.elements,
range: value.range,
flags: value.flags.into(),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
}
@ -3021,7 +3021,7 @@ impl From<InterpolatedStringData> for TString {
elements: value.elements,
range: value.range,
flags: value.flags.into(),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
}

View file

@ -133,7 +133,7 @@ impl<'src> Parser<'src> {
ModExpression {
body: Box::new(parsed_expr.expr),
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -151,7 +151,7 @@ impl<'src> Parser<'src> {
ModModule {
body,
range: TextRange::new(self.start_offset, self.current_token_range().end()),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}

View file

@ -112,7 +112,7 @@ impl Parser<'_> {
lhs = Pattern::MatchOr(ast::PatternMatchOr {
range: self.node_range(start),
patterns,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
});
}
@ -128,7 +128,7 @@ impl Parser<'_> {
range: self.node_range(start),
name: Some(ident),
pattern: Some(Box::new(lhs)),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
});
}
@ -255,7 +255,7 @@ impl Parser<'_> {
keys,
patterns,
rest,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -279,7 +279,7 @@ impl Parser<'_> {
} else {
Some(ident)
},
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -319,7 +319,7 @@ impl Parser<'_> {
return Pattern::MatchSequence(ast::PatternMatchSequence {
patterns: vec![],
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
});
}
@ -374,7 +374,7 @@ impl Parser<'_> {
ast::PatternMatchSequence {
range: self.node_range(start),
patterns,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -389,7 +389,7 @@ impl Parser<'_> {
Pattern::MatchSingleton(ast::PatternMatchSingleton {
value: Singleton::None,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
TokenKind::True => {
@ -397,7 +397,7 @@ impl Parser<'_> {
Pattern::MatchSingleton(ast::PatternMatchSingleton {
value: Singleton::True,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
TokenKind::False => {
@ -405,7 +405,7 @@ impl Parser<'_> {
Pattern::MatchSingleton(ast::PatternMatchSingleton {
value: Singleton::False,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
TokenKind::String | TokenKind::FStringStart | TokenKind::TStringStart => {
@ -414,7 +414,7 @@ impl Parser<'_> {
Pattern::MatchValue(ast::PatternMatchValue {
value: Box::new(str),
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
TokenKind::Complex => {
@ -427,10 +427,10 @@ impl Parser<'_> {
value: Box::new(Expr::NumberLiteral(ast::ExprNumberLiteral {
value: Number::Complex { real, imag },
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})),
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
TokenKind::Int => {
@ -443,10 +443,10 @@ impl Parser<'_> {
value: Box::new(Expr::NumberLiteral(ast::ExprNumberLiteral {
value: Number::Int(value),
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})),
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
TokenKind::Float => {
@ -459,10 +459,10 @@ impl Parser<'_> {
value: Box::new(Expr::NumberLiteral(ast::ExprNumberLiteral {
value: Number::Float(value),
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})),
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
kind => {
@ -489,7 +489,7 @@ impl Parser<'_> {
return Pattern::MatchValue(ast::PatternMatchValue {
value: Box::new(Expr::UnaryOp(unary_expr)),
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
});
}
}
@ -509,7 +509,7 @@ impl Parser<'_> {
Pattern::MatchValue(ast::PatternMatchValue {
value: Box::new(attribute),
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
} else {
// test_ok match_as_pattern_soft_keyword
@ -530,7 +530,7 @@ impl Parser<'_> {
range: ident.range,
pattern: None,
name: if &ident == "_" { None } else { Some(ident) },
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
} else {
@ -544,12 +544,12 @@ impl Parser<'_> {
range: self.missing_node_range(),
id: Name::empty(),
ctx: ExprContext::Invalid,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
});
Pattern::MatchValue(ast::PatternMatchValue {
range: invalid_node.range(),
value: Box::new(invalid_node),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
}
@ -605,10 +605,10 @@ impl Parser<'_> {
op: operator,
right: rhs_value,
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})),
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -648,14 +648,14 @@ impl Parser<'_> {
range: ident.range(),
id: ident.id,
ctx: ExprContext::Load,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}))
} else {
Box::new(Expr::Name(ast::ExprName {
range: ident.range(),
id: Name::empty(),
ctx: ExprContext::Invalid,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}))
}
}
@ -707,7 +707,7 @@ impl Parser<'_> {
ast::Identifier {
id: Name::empty(),
range: parser.missing_node_range(),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
};
@ -717,7 +717,7 @@ impl Parser<'_> {
attr: key,
pattern: value_pattern,
range: parser.node_range(pattern_start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
});
} else {
has_seen_pattern = true;
@ -743,10 +743,10 @@ impl Parser<'_> {
patterns,
keywords,
range: self.node_range(arguments_start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
},
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
}

View file

@ -4,7 +4,7 @@ expression: parsed.expr()
---
Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..5,
id: Name("first"),
ctx: Load,

View file

@ -4,20 +4,20 @@ expression: parsed.syntax()
---
Module(
ModModule {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..929,
body: [
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 21..42,
value: BinOp(
ExprBinOp {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 27..40,
left: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 27..28,
id: Name("a"),
ctx: Load,
@ -26,7 +26,7 @@ Module(
op: Mod,
right: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 39..40,
id: Name("b"),
ctx: Load,
@ -38,7 +38,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 66..73,
kind: Help2,
value: "a.foo",
@ -46,7 +46,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 74..80,
kind: Help,
value: "a.foo",
@ -54,7 +54,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 81..88,
kind: Help,
value: "a.foo",
@ -62,7 +62,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 89..100,
kind: Help2,
value: "a.foo()",
@ -70,7 +70,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 115..128,
kind: Magic,
value: "timeit a = b",
@ -78,7 +78,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 129..147,
kind: Magic,
value: "timeit foo(b) % 3",
@ -86,7 +86,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 148..176,
kind: Magic,
value: "alias showPath pwd && ls -a",
@ -94,7 +94,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 177..205,
kind: Magic,
value: "timeit a = foo(b); b = 2",
@ -102,7 +102,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 206..226,
kind: Magic,
value: "matplotlib --inline",
@ -110,7 +110,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 227..253,
kind: Magic,
value: "matplotlib --inline",
@ -118,7 +118,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 277..309,
kind: Shell,
value: "pwd && ls -a | sed 's/^/\\ /'",
@ -126,7 +126,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 310..347,
kind: Shell,
value: "pwd && ls -a | sed 's/^/\\\\ /'",
@ -134,7 +134,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 348..393,
kind: ShCap,
value: "cd /Users/foo/Library/Application\\ Support/",
@ -142,21 +142,19 @@ Module(
),
FunctionDef(
StmtFunctionDef {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 566..626,
is_async: false,
decorator_list: [],
name: Identifier {
id: Name("foo"),
range: 570..573,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
},
type_params: None,
parameters: Parameters {
range: 573..575,
node_index: AtomicNodeIndex(
0,
),
node_index: NodeIndex(None),
posonlyargs: [],
args: [],
vararg: None,
@ -167,16 +165,16 @@ Module(
body: [
Return(
StmtReturn {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 581..626,
value: Some(
Compare(
ExprCompare {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 598..620,
left: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 598..599,
id: Name("a"),
ctx: Load,
@ -188,7 +186,7 @@ Module(
comparators: [
Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 619..620,
id: Name("b"),
ctx: Load,
@ -205,7 +203,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 656..664,
kind: Paren,
value: "foo 1 2",
@ -213,7 +211,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 665..673,
kind: Quote2,
value: "foo 1 2",
@ -221,7 +219,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 674..682,
kind: Quote,
value: "foo 1 2",
@ -229,12 +227,12 @@ Module(
),
For(
StmtFor {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 711..737,
is_async: false,
target: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 715..716,
id: Name("a"),
ctx: Store,
@ -242,11 +240,11 @@ Module(
),
iter: Call(
ExprCall {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 720..728,
func: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 720..725,
id: Name("range"),
ctx: Load,
@ -254,11 +252,11 @@ Module(
),
arguments: Arguments {
range: 725..728,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
args: [
NumberLiteral(
ExprNumberLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 726..727,
value: Int(
5,
@ -273,7 +271,7 @@ Module(
body: [
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 734..737,
kind: Shell,
value: "ls",
@ -285,12 +283,12 @@ Module(
),
Assign(
StmtAssign {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 739..748,
targets: [
Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 739..741,
id: Name("p1"),
ctx: Store,
@ -299,7 +297,7 @@ Module(
],
value: IpyEscapeCommand(
ExprIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 744..748,
kind: Shell,
value: "pwd",
@ -309,11 +307,11 @@ Module(
),
AnnAssign(
StmtAnnAssign {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 749..763,
target: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 749..751,
id: Name("p2"),
ctx: Store,
@ -321,7 +319,7 @@ Module(
),
annotation: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 753..756,
id: Name("str"),
ctx: Load,
@ -330,7 +328,7 @@ Module(
value: Some(
IpyEscapeCommand(
ExprIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 759..763,
kind: Shell,
value: "pwd",
@ -342,12 +340,12 @@ Module(
),
Assign(
StmtAssign {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 764..784,
targets: [
Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 764..767,
id: Name("foo"),
ctx: Store,
@ -356,7 +354,7 @@ Module(
],
value: IpyEscapeCommand(
ExprIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 770..784,
kind: Magic,
value: "foo bar",
@ -366,7 +364,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 786..791,
kind: Magic,
value: " foo",
@ -374,12 +372,12 @@ Module(
),
Assign(
StmtAssign {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 792..813,
targets: [
Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 792..795,
id: Name("foo"),
ctx: Store,
@ -388,7 +386,7 @@ Module(
],
value: IpyEscapeCommand(
ExprIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 798..813,
kind: Magic,
value: "foo # comment",
@ -398,7 +396,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 838..842,
kind: Help,
value: "foo",
@ -406,7 +404,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 843..852,
kind: Help2,
value: "foo.bar",
@ -414,7 +412,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 853..865,
kind: Help,
value: "foo.bar.baz",
@ -422,7 +420,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 866..874,
kind: Help2,
value: "foo[0]",
@ -430,7 +428,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 875..885,
kind: Help,
value: "foo[0][1]",
@ -438,7 +436,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 886..905,
kind: Help2,
value: "foo.bar[0].baz[1]",
@ -446,7 +444,7 @@ Module(
),
IpyEscapeCommand(
StmtIpyEscapeCommand {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 906..929,
kind: Help2,
value: "foo.bar[0].baz[2].egg",

View file

@ -5,12 +5,12 @@ expression: suite
[
Assign(
StmtAssign {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..37,
targets: [
Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..1,
id: Name("x"),
ctx: Store,
@ -19,13 +19,13 @@ expression: suite
],
value: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 4..37,
value: StringLiteralValue {
inner: Single(
StringLiteral {
range: 4..37,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "\u{8}another cool trick",
flags: StringLiteralFlags {
quote_style: Double,

View file

@ -312,7 +312,7 @@ impl<'src> Parser<'src> {
Stmt::Expr(ast::StmtExpr {
range: self.node_range(start),
value: Box::new(parsed_expr.expr),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
}
@ -368,7 +368,7 @@ impl<'src> Parser<'src> {
ast::StmtDelete {
targets,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -417,7 +417,7 @@ impl<'src> Parser<'src> {
ast::StmtReturn {
range: self.node_range(start),
value,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -523,7 +523,7 @@ impl<'src> Parser<'src> {
range: self.node_range(start),
exc,
cause,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -564,7 +564,7 @@ impl<'src> Parser<'src> {
ast::StmtImport {
range: self.node_range(start),
names,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -676,7 +676,7 @@ impl<'src> Parser<'src> {
names,
level: leading_dots,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -693,11 +693,11 @@ impl<'src> Parser<'src> {
name: ast::Identifier {
id: Name::new_static("*"),
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
},
asname: None,
range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
};
}
@ -730,7 +730,7 @@ impl<'src> Parser<'src> {
range: self.node_range(start),
name,
asname,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -759,7 +759,7 @@ impl<'src> Parser<'src> {
ast::Identifier {
id: Name::from(dotted_name),
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -775,7 +775,7 @@ impl<'src> Parser<'src> {
self.bump(TokenKind::Pass);
ast::StmtPass {
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -791,7 +791,7 @@ impl<'src> Parser<'src> {
self.bump(TokenKind::Continue);
ast::StmtContinue {
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -807,7 +807,7 @@ impl<'src> Parser<'src> {
self.bump(TokenKind::Break);
ast::StmtBreak {
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -857,7 +857,7 @@ impl<'src> Parser<'src> {
test: Box::new(test.expr),
msg,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -896,7 +896,7 @@ impl<'src> Parser<'src> {
ast::StmtGlobal {
range: self.node_range(start),
names,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -942,7 +942,7 @@ impl<'src> Parser<'src> {
ast::StmtNonlocal {
range: self.node_range(start),
names,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -995,7 +995,7 @@ impl<'src> Parser<'src> {
type_params: type_params.map(Box::new),
value: Box::new(value.expr),
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -1022,7 +1022,7 @@ impl<'src> Parser<'src> {
range,
kind,
value,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -1119,7 +1119,7 @@ impl<'src> Parser<'src> {
value: value.into_boxed_str(),
kind,
range: self.node_range(parsed_expr.start()),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -1187,7 +1187,7 @@ impl<'src> Parser<'src> {
targets,
value: Box::new(value.expr),
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -1267,7 +1267,7 @@ impl<'src> Parser<'src> {
value,
simple,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -1322,7 +1322,7 @@ impl<'src> Parser<'src> {
op,
value: Box::new(value.expr),
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -1378,7 +1378,7 @@ impl<'src> Parser<'src> {
body,
elif_else_clauses,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -1422,7 +1422,7 @@ impl<'src> Parser<'src> {
test,
body,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -1572,7 +1572,7 @@ impl<'src> Parser<'src> {
finalbody,
is_star,
range: self.node_range(try_start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -1722,7 +1722,7 @@ impl<'src> Parser<'src> {
name,
body: except_body,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}),
block_kind,
)
@ -1834,7 +1834,7 @@ impl<'src> Parser<'src> {
body,
orelse,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -1882,7 +1882,7 @@ impl<'src> Parser<'src> {
body,
orelse,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -2012,7 +2012,7 @@ impl<'src> Parser<'src> {
is_async: false,
returns,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -2082,7 +2082,7 @@ impl<'src> Parser<'src> {
type_params: type_params.map(Box::new),
arguments,
body,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -2109,7 +2109,7 @@ impl<'src> Parser<'src> {
body,
is_async: false,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -2378,7 +2378,7 @@ impl<'src> Parser<'src> {
range: self.node_range(start),
context_expr: context_expr.expr,
optional_vars,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
},
}
}
@ -2447,7 +2447,7 @@ impl<'src> Parser<'src> {
subject: Box::new(subject),
cases,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
TokenKind::Newline if matches!(self.peek2(), (TokenKind::Indent, TokenKind::Case)) => {
@ -2470,7 +2470,7 @@ impl<'src> Parser<'src> {
subject: Box::new(subject),
cases,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
_ => {
@ -2518,7 +2518,7 @@ impl<'src> Parser<'src> {
subject: Box::new(subject),
cases,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -2697,7 +2697,7 @@ impl<'src> Parser<'src> {
guard,
body,
range: self.node_range(start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -2866,7 +2866,7 @@ impl<'src> Parser<'src> {
decorators.push(ast::Decorator {
expression: parsed_expr.expr,
range: self.node_range(decorator_start),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
});
// test_err decorator_missing_newline
@ -3080,7 +3080,7 @@ impl<'src> Parser<'src> {
range: self.node_range(start),
name,
annotation,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -3130,7 +3130,7 @@ impl<'src> Parser<'src> {
range: self.node_range(start),
parameter,
default,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -3448,7 +3448,7 @@ impl<'src> Parser<'src> {
ast::TypeParams {
range: self.node_range(start),
type_params,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}
}
@ -3511,7 +3511,7 @@ impl<'src> Parser<'src> {
range: self.node_range(start),
name,
default,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
// test_ok type_param_param_spec
@ -3551,7 +3551,7 @@ impl<'src> Parser<'src> {
range: self.node_range(start),
name,
default,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
// test_ok type_param_type_var
// type X[T] = int
@ -3635,7 +3635,7 @@ impl<'src> Parser<'src> {
name,
bound,
default,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
}

View file

@ -5,17 +5,17 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..15,
value: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..15,
value: StringLiteralValue {
inner: Single(
StringLiteral {
range: 0..15,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "\u{8}",
flags: StringLiteralFlags {
quote_style: Double,

View file

@ -5,17 +5,17 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..9,
value: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..9,
value: StringLiteralValue {
inner: Single(
StringLiteral {
range: 0..9,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "\u{7}",
flags: StringLiteralFlags {
quote_style: Double,

View file

@ -5,17 +5,17 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..21,
value: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..21,
value: StringLiteralValue {
inner: Single(
StringLiteral {
range: 0..21,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "\r",
flags: StringLiteralFlags {
quote_style: Double,

View file

@ -5,17 +5,17 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..45,
value: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..45,
value: StringLiteralValue {
inner: Single(
StringLiteral {
range: 0..45,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "\u{89}",
flags: StringLiteralFlags {
quote_style: Double,

View file

@ -5,17 +5,17 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..12,
value: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..12,
value: StringLiteralValue {
inner: Single(
StringLiteral {
range: 0..12,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "\u{7f}",
flags: StringLiteralFlags {
quote_style: Double,

View file

@ -5,12 +5,12 @@ expression: suite
[
Assign(
StmtAssign {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..16,
targets: [
Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..4,
id: Name("bold"),
ctx: Store,
@ -19,13 +19,13 @@ expression: suite
],
value: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 7..16,
value: StringLiteralValue {
inner: Single(
StringLiteral {
range: 7..16,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "\u{3}8[1m",
flags: StringLiteralFlags {
quote_style: Single,

View file

@ -5,17 +5,17 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..738,
value: BytesLiteral(
ExprBytesLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..738,
value: BytesLiteralValue {
inner: Single(
BytesLiteral {
range: 0..738,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: [
0,
1,

View file

@ -5,17 +5,17 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..12,
value: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..12,
value: StringLiteralValue {
inner: Single(
StringLiteral {
range: 0..12,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "\u{1b}",
flags: StringLiteralFlags {
quote_style: Double,

View file

@ -5,17 +5,17 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..13,
value: BytesLiteral(
ExprBytesLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..13,
value: BytesLiteralValue {
inner: Single(
BytesLiteral {
range: 0..13,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: [
111,
109,

View file

@ -5,17 +5,17 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..14,
value: BytesLiteral(
ExprBytesLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..14,
value: BytesLiteralValue {
inner: Single(
BytesLiteral {
range: 0..14,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: [
35,
97,

View file

@ -5,17 +5,17 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..15,
value: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..15,
value: StringLiteralValue {
inner: Single(
StringLiteral {
range: 0..15,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "\u{c}",
flags: StringLiteralFlags {
quote_style: Double,

View file

@ -5,33 +5,33 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..22,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..22,
value: FStringValue {
inner: Single(
FString(
FString {
range: 0..22,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Literal(
InterpolatedStringLiteralElement {
range: 2..5,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "aaa",
},
),
Interpolation(
InterpolatedElement {
range: 5..10,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 6..9,
id: Name("bbb"),
ctx: Load,
@ -45,17 +45,17 @@ expression: suite
Literal(
InterpolatedStringLiteralElement {
range: 10..13,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "ccc",
},
),
Interpolation(
InterpolatedElement {
range: 13..18,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 14..17,
id: Name("ddd"),
ctx: Load,
@ -69,7 +69,7 @@ expression: suite
Literal(
InterpolatedStringLiteralElement {
range: 18..21,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "eee",
},
),

View file

@ -5,33 +5,33 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..8,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..8,
value: FStringValue {
inner: Single(
FString(
FString {
range: 0..8,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Literal(
InterpolatedStringLiteralElement {
range: 2..4,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "\\",
},
),
Interpolation(
InterpolatedElement {
range: 4..7,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 5..6,
id: Name("x"),
ctx: Load,

View file

@ -5,33 +5,33 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..8,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..8,
value: FStringValue {
inner: Single(
FString(
FString {
range: 0..8,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Literal(
InterpolatedStringLiteralElement {
range: 2..4,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "\n",
},
),
Interpolation(
InterpolatedElement {
range: 4..7,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 5..6,
id: Name("x"),
ctx: Load,

View file

@ -5,33 +5,33 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..9,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..9,
value: FStringValue {
inner: Single(
FString(
FString {
range: 0..9,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Literal(
InterpolatedStringLiteralElement {
range: 3..5,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "\\\n",
},
),
Interpolation(
InterpolatedElement {
range: 5..8,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 6..7,
id: Name("x"),
ctx: Load,

View file

@ -5,26 +5,26 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..10,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..10,
value: FStringValue {
inner: Single(
FString(
FString {
range: 0..10,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..9,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..7,
id: Name("user"),
ctx: Load,

View file

@ -5,33 +5,33 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..38,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..38,
value: FStringValue {
inner: Single(
FString(
FString {
range: 0..38,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Literal(
InterpolatedStringLiteralElement {
range: 2..6,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "mix ",
},
),
Interpolation(
InterpolatedElement {
range: 6..13,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 7..11,
id: Name("user"),
ctx: Load,
@ -50,17 +50,17 @@ expression: suite
Literal(
InterpolatedStringLiteralElement {
range: 13..28,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: " with text and ",
},
),
Interpolation(
InterpolatedElement {
range: 28..37,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 29..35,
id: Name("second"),
ctx: Load,

View file

@ -5,26 +5,26 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..14,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..14,
value: FStringValue {
inner: Single(
FString(
FString {
range: 0..14,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..13,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..7,
id: Name("user"),
ctx: Load,
@ -40,12 +40,12 @@ expression: suite
format_spec: Some(
InterpolatedStringFormatSpec {
range: 9..12,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Literal(
InterpolatedStringLiteralElement {
range: 9..12,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: ">10",
},
),

View file

@ -5,33 +5,33 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..11,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..11,
value: FStringValue {
inner: Single(
FString(
FString {
range: 0..11,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Literal(
InterpolatedStringLiteralElement {
range: 4..5,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "\n",
},
),
Interpolation(
InterpolatedElement {
range: 5..8,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 6..7,
id: Name("x"),
ctx: Load,

View file

@ -5,17 +5,17 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..9,
value: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..9,
value: StringLiteralValue {
inner: Single(
StringLiteral {
range: 0..9,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "\u{88}",
flags: StringLiteralFlags {
quote_style: Double,

View file

@ -5,18 +5,18 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..3,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..3,
value: FStringValue {
inner: Single(
FString(
FString {
range: 0..3,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [],
flags: FStringFlags {
quote_style: Double,

View file

@ -5,17 +5,17 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..3,
value: TString(
ExprTString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..3,
value: TStringValue {
inner: Single(
TString {
range: 0..3,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [],
flags: TStringFlags {
quote_style: Double,

View file

@ -5,11 +5,11 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..17,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..17,
value: FStringValue {
inner: Concatenated(
@ -17,7 +17,7 @@ expression: suite
Literal(
StringLiteral {
range: 0..8,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "Hello ",
flags: StringLiteralFlags {
quote_style: Single,
@ -29,12 +29,12 @@ expression: suite
FString(
FString {
range: 9..17,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Literal(
InterpolatedStringLiteralElement {
range: 11..16,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "world",
},
),

View file

@ -5,11 +5,11 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..17,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..17,
value: FStringValue {
inner: Concatenated(
@ -17,7 +17,7 @@ expression: suite
Literal(
StringLiteral {
range: 0..8,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "Hello ",
flags: StringLiteralFlags {
quote_style: Single,
@ -29,12 +29,12 @@ expression: suite
FString(
FString {
range: 9..17,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Literal(
InterpolatedStringLiteralElement {
range: 11..16,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "world",
},
),

View file

@ -5,11 +5,11 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..22,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..22,
value: FStringValue {
inner: Concatenated(
@ -17,7 +17,7 @@ expression: suite
Literal(
StringLiteral {
range: 0..8,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "Hello ",
flags: StringLiteralFlags {
quote_style: Single,
@ -29,28 +29,28 @@ expression: suite
FString(
FString {
range: 9..22,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Literal(
InterpolatedStringLiteralElement {
range: 11..16,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "world",
},
),
Interpolation(
InterpolatedElement {
range: 16..21,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 17..20,
value: StringLiteralValue {
inner: Single(
StringLiteral {
range: 17..20,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "!",
flags: StringLiteralFlags {
quote_style: Double,

View file

@ -5,11 +5,11 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..31,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..31,
value: FStringValue {
inner: Concatenated(
@ -17,7 +17,7 @@ expression: suite
Literal(
StringLiteral {
range: 0..8,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "Hello ",
flags: StringLiteralFlags {
quote_style: Single,
@ -29,28 +29,28 @@ expression: suite
FString(
FString {
range: 9..22,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Literal(
InterpolatedStringLiteralElement {
range: 11..16,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "world",
},
),
Interpolation(
InterpolatedElement {
range: 16..21,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 17..20,
value: StringLiteralValue {
inner: Single(
StringLiteral {
range: 17..20,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "!",
flags: StringLiteralFlags {
quote_style: Double,
@ -78,7 +78,7 @@ expression: suite
Literal(
StringLiteral {
range: 23..31,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "again!",
flags: StringLiteralFlags {
quote_style: Single,

View file

@ -5,26 +5,26 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..18,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..18,
value: FStringValue {
inner: Single(
FString(
FString {
range: 0..18,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..5,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..4,
id: Name("a"),
ctx: Load,
@ -38,10 +38,10 @@ expression: suite
Interpolation(
InterpolatedElement {
range: 5..10,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 7..8,
id: Name("b"),
ctx: Load,
@ -55,7 +55,7 @@ expression: suite
Literal(
InterpolatedStringLiteralElement {
range: 10..17,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "{foo}",
},
),

View file

@ -5,30 +5,30 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..13,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..13,
value: FStringValue {
inner: Single(
FString(
FString {
range: 0..13,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..12,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Compare(
ExprCompare {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..11,
left: NumberLiteral(
ExprNumberLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..5,
value: Int(
42,
@ -41,7 +41,7 @@ expression: suite
comparators: [
NumberLiteral(
ExprNumberLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 9..11,
value: Int(
42,

View file

@ -5,26 +5,26 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..16,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..16,
value: FStringValue {
inner: Single(
FString(
FString {
range: 0..16,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..15,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..6,
id: Name("foo"),
ctx: Load,
@ -35,15 +35,15 @@ expression: suite
format_spec: Some(
InterpolatedStringFormatSpec {
range: 7..14,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 7..14,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 8..13,
value: StringLiteralValue {
inner: Concatenated(
@ -51,7 +51,7 @@ expression: suite
strings: [
StringLiteral {
range: 8..10,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "",
flags: StringLiteralFlags {
quote_style: Single,
@ -61,7 +61,7 @@ expression: suite
},
StringLiteral {
range: 11..13,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "",
flags: StringLiteralFlags {
quote_style: Single,

View file

@ -5,26 +5,26 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..15,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..15,
value: FStringValue {
inner: Single(
FString(
FString {
range: 0..15,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..14,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..6,
id: Name("foo"),
ctx: Load,
@ -35,15 +35,15 @@ expression: suite
format_spec: Some(
InterpolatedStringFormatSpec {
range: 7..13,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 7..13,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 8..12,
id: Name("spec"),
ctx: Load,

View file

@ -5,26 +5,26 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..13,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..13,
value: FStringValue {
inner: Single(
FString(
FString {
range: 0..13,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..12,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..6,
id: Name("foo"),
ctx: Load,
@ -35,21 +35,21 @@ expression: suite
format_spec: Some(
InterpolatedStringFormatSpec {
range: 7..11,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 7..11,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 8..10,
value: StringLiteralValue {
inner: Single(
StringLiteral {
range: 8..10,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "",
flags: StringLiteralFlags {
quote_style: Single,

View file

@ -5,30 +5,30 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..11,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..11,
value: FStringValue {
inner: Single(
FString(
FString {
range: 0..11,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..10,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Compare(
ExprCompare {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..9,
left: NumberLiteral(
ExprNumberLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..4,
value: Int(
1,
@ -41,7 +41,7 @@ expression: suite
comparators: [
NumberLiteral(
ExprNumberLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 8..9,
value: Int(
2,

View file

@ -5,26 +5,26 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..13,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..13,
value: FStringValue {
inner: Single(
FString(
FString {
range: 0..13,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..12,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..6,
id: Name("foo"),
ctx: Load,
@ -35,12 +35,12 @@ expression: suite
format_spec: Some(
InterpolatedStringFormatSpec {
range: 7..11,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Literal(
InterpolatedStringLiteralElement {
range: 7..11,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "spec",
},
),

View file

@ -5,26 +5,26 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..10,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..10,
value: FStringValue {
inner: Single(
FString(
FString {
range: 0..10,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..9,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..4,
id: Name("x"),
ctx: Load,

View file

@ -5,26 +5,26 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..10,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..10,
value: FStringValue {
inner: Single(
FString(
FString {
range: 0..10,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..9,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..4,
id: Name("x"),
ctx: Load,

View file

@ -5,26 +5,26 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..10,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..10,
value: FStringValue {
inner: Single(
FString(
FString {
range: 0..10,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..9,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Yield(
ExprYield {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..8,
value: None,
},

View file

@ -5,11 +5,11 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..16,
value: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..16,
value: StringLiteralValue {
inner: Concatenated(
@ -17,7 +17,7 @@ expression: suite
strings: [
StringLiteral {
range: 0..8,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "Hello ",
flags: StringLiteralFlags {
quote_style: Single,
@ -27,7 +27,7 @@ expression: suite
},
StringLiteral {
range: 9..16,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "world",
flags: StringLiteralFlags {
quote_style: Single,

View file

@ -5,17 +5,17 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..20,
value: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..20,
value: StringLiteralValue {
inner: Single(
StringLiteral {
range: 0..20,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "Hello, world!",
flags: StringLiteralFlags {
quote_style: Single,

View file

@ -5,25 +5,25 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..18,
value: TString(
ExprTString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..18,
value: TStringValue {
inner: Single(
TString {
range: 0..18,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..5,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..4,
id: Name("a"),
ctx: Load,
@ -37,10 +37,10 @@ expression: suite
Interpolation(
InterpolatedElement {
range: 5..10,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 7..8,
id: Name("b"),
ctx: Load,
@ -54,7 +54,7 @@ expression: suite
Literal(
InterpolatedStringLiteralElement {
range: 10..17,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "{foo}",
},
),

View file

@ -5,29 +5,29 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..13,
value: TString(
ExprTString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..13,
value: TStringValue {
inner: Single(
TString {
range: 0..13,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..12,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Compare(
ExprCompare {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..11,
left: NumberLiteral(
ExprNumberLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..5,
value: Int(
42,
@ -40,7 +40,7 @@ expression: suite
comparators: [
NumberLiteral(
ExprNumberLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 9..11,
value: Int(
42,

View file

@ -5,25 +5,25 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..16,
value: TString(
ExprTString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..16,
value: TStringValue {
inner: Single(
TString {
range: 0..16,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..15,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..6,
id: Name("foo"),
ctx: Load,
@ -34,15 +34,15 @@ expression: suite
format_spec: Some(
InterpolatedStringFormatSpec {
range: 7..14,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 7..14,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 8..13,
value: StringLiteralValue {
inner: Concatenated(
@ -50,7 +50,7 @@ expression: suite
strings: [
StringLiteral {
range: 8..10,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "",
flags: StringLiteralFlags {
quote_style: Single,
@ -60,7 +60,7 @@ expression: suite
},
StringLiteral {
range: 11..13,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "",
flags: StringLiteralFlags {
quote_style: Single,

View file

@ -5,25 +5,25 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..15,
value: TString(
ExprTString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..15,
value: TStringValue {
inner: Single(
TString {
range: 0..15,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..14,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..6,
id: Name("foo"),
ctx: Load,
@ -34,15 +34,15 @@ expression: suite
format_spec: Some(
InterpolatedStringFormatSpec {
range: 7..13,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 7..13,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 8..12,
id: Name("spec"),
ctx: Load,

View file

@ -5,25 +5,25 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..13,
value: TString(
ExprTString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..13,
value: TStringValue {
inner: Single(
TString {
range: 0..13,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..12,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..6,
id: Name("foo"),
ctx: Load,
@ -34,21 +34,21 @@ expression: suite
format_spec: Some(
InterpolatedStringFormatSpec {
range: 7..11,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 7..11,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 8..10,
value: StringLiteralValue {
inner: Single(
StringLiteral {
range: 8..10,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "",
flags: StringLiteralFlags {
quote_style: Single,

View file

@ -5,29 +5,29 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..11,
value: TString(
ExprTString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..11,
value: TStringValue {
inner: Single(
TString {
range: 0..11,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..10,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Compare(
ExprCompare {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..9,
left: NumberLiteral(
ExprNumberLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..4,
value: Int(
1,
@ -40,7 +40,7 @@ expression: suite
comparators: [
NumberLiteral(
ExprNumberLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 8..9,
value: Int(
2,

View file

@ -5,25 +5,25 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..13,
value: TString(
ExprTString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..13,
value: TStringValue {
inner: Single(
TString {
range: 0..13,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..12,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..6,
id: Name("foo"),
ctx: Load,
@ -34,12 +34,12 @@ expression: suite
format_spec: Some(
InterpolatedStringFormatSpec {
range: 7..11,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Literal(
InterpolatedStringLiteralElement {
range: 7..11,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "spec",
},
),

View file

@ -5,25 +5,25 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..10,
value: TString(
ExprTString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..10,
value: TStringValue {
inner: Single(
TString {
range: 0..10,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..9,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..4,
id: Name("x"),
ctx: Load,

View file

@ -5,25 +5,25 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..10,
value: TString(
ExprTString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..10,
value: TStringValue {
inner: Single(
TString {
range: 0..10,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..9,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..4,
id: Name("x"),
ctx: Load,

View file

@ -5,25 +5,25 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..10,
value: TString(
ExprTString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..10,
value: TStringValue {
inner: Single(
TString {
range: 0..10,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..9,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Yield(
ExprYield {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..8,
value: None,
},

View file

@ -5,11 +5,11 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..18,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..18,
value: FStringValue {
inner: Concatenated(
@ -17,7 +17,7 @@ expression: suite
Literal(
StringLiteral {
range: 0..9,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "Hello ",
flags: StringLiteralFlags {
quote_style: Single,
@ -29,12 +29,12 @@ expression: suite
FString(
FString {
range: 10..18,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Literal(
InterpolatedStringLiteralElement {
range: 12..17,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "world",
},
),

View file

@ -5,11 +5,11 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..22,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..22,
value: FStringValue {
inner: Concatenated(
@ -17,7 +17,7 @@ expression: suite
Literal(
StringLiteral {
range: 0..9,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "Hello ",
flags: StringLiteralFlags {
quote_style: Single,
@ -29,12 +29,12 @@ expression: suite
FString(
FString {
range: 10..18,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Literal(
InterpolatedStringLiteralElement {
range: 12..17,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "world",
},
),
@ -49,7 +49,7 @@ expression: suite
Literal(
StringLiteral {
range: 19..22,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "!",
flags: StringLiteralFlags {
quote_style: Single,

View file

@ -5,11 +5,11 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..17,
value: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..17,
value: StringLiteralValue {
inner: Concatenated(
@ -17,7 +17,7 @@ expression: suite
strings: [
StringLiteral {
range: 0..8,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "Hello ",
flags: StringLiteralFlags {
quote_style: Single,
@ -27,7 +27,7 @@ expression: suite
},
StringLiteral {
range: 9..17,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "world",
flags: StringLiteralFlags {
quote_style: Single,

View file

@ -5,11 +5,11 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..17,
value: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..17,
value: StringLiteralValue {
inner: Concatenated(
@ -17,7 +17,7 @@ expression: suite
strings: [
StringLiteral {
range: 0..9,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "Hello ",
flags: StringLiteralFlags {
quote_style: Single,
@ -27,7 +27,7 @@ expression: suite
},
StringLiteral {
range: 10..17,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "world",
flags: StringLiteralFlags {
quote_style: Single,

View file

@ -5,17 +5,17 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..8,
value: BytesLiteral(
ExprBytesLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..8,
value: BytesLiteralValue {
inner: Single(
BytesLiteral {
range: 0..8,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: [
92,
120,

View file

@ -5,17 +5,17 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..6,
value: BytesLiteral(
ExprBytesLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..6,
value: BytesLiteralValue {
inner: Single(
BytesLiteral {
range: 0..6,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: [
92,
92,

View file

@ -5,26 +5,26 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..7,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..7,
value: FStringValue {
inner: Single(
FString(
FString {
range: 0..7,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 3..6,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 4..5,
id: Name("x"),
ctx: Load,

View file

@ -5,25 +5,25 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..7,
value: TString(
ExprTString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..7,
value: TStringValue {
inner: Single(
TString {
range: 0..7,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 3..6,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 4..5,
id: Name("x"),
ctx: Load,

View file

@ -5,17 +5,17 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..738,
value: BytesLiteral(
ExprBytesLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..738,
value: BytesLiteralValue {
inner: Single(
BytesLiteral {
range: 0..738,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: [
0,
1,

View file

@ -5,17 +5,17 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..18,
value: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..18,
value: StringLiteralValue {
inner: Single(
StringLiteral {
range: 0..18,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "text more text",
flags: StringLiteralFlags {
quote_style: Single,

View file

@ -5,17 +5,17 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..18,
value: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..18,
value: StringLiteralValue {
inner: Single(
StringLiteral {
range: 0..18,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "text more text",
flags: StringLiteralFlags {
quote_style: Single,

View file

@ -5,17 +5,17 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..19,
value: StringLiteral(
ExprStringLiteral {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..19,
value: StringLiteralValue {
inner: Single(
StringLiteral {
range: 0..19,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "text more text",
flags: StringLiteralFlags {
quote_style: Single,

View file

@ -5,26 +5,26 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..11,
value: FString(
ExprFString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..11,
value: FStringValue {
inner: Single(
FString(
FString {
range: 0..11,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 5..8,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 6..7,
id: Name("x"),
ctx: Load,

View file

@ -5,25 +5,25 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..11,
value: TString(
ExprTString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..11,
value: TStringValue {
inner: Single(
TString {
range: 0..11,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 5..8,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 6..7,
id: Name("x"),
ctx: Load,

View file

@ -5,32 +5,32 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..22,
value: TString(
ExprTString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..22,
value: TStringValue {
inner: Single(
TString {
range: 0..22,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Literal(
InterpolatedStringLiteralElement {
range: 2..5,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "aaa",
},
),
Interpolation(
InterpolatedElement {
range: 5..10,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 6..9,
id: Name("bbb"),
ctx: Load,
@ -44,17 +44,17 @@ expression: suite
Literal(
InterpolatedStringLiteralElement {
range: 10..13,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "ccc",
},
),
Interpolation(
InterpolatedElement {
range: 13..18,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 14..17,
id: Name("ddd"),
ctx: Load,
@ -68,7 +68,7 @@ expression: suite
Literal(
InterpolatedStringLiteralElement {
range: 18..21,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "eee",
},
),

View file

@ -5,32 +5,32 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..8,
value: TString(
ExprTString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..8,
value: TStringValue {
inner: Single(
TString {
range: 0..8,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Literal(
InterpolatedStringLiteralElement {
range: 2..4,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "\\",
},
),
Interpolation(
InterpolatedElement {
range: 4..7,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 5..6,
id: Name("x"),
ctx: Load,

View file

@ -5,32 +5,32 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..8,
value: TString(
ExprTString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..8,
value: TStringValue {
inner: Single(
TString {
range: 0..8,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Literal(
InterpolatedStringLiteralElement {
range: 2..4,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "\n",
},
),
Interpolation(
InterpolatedElement {
range: 4..7,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 5..6,
id: Name("x"),
ctx: Load,

View file

@ -5,32 +5,32 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..9,
value: TString(
ExprTString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..9,
value: TStringValue {
inner: Single(
TString {
range: 0..9,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Literal(
InterpolatedStringLiteralElement {
range: 3..5,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "\\\n",
},
),
Interpolation(
InterpolatedElement {
range: 5..8,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 6..7,
id: Name("x"),
ctx: Load,

View file

@ -5,25 +5,25 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..10,
value: TString(
ExprTString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..10,
value: TStringValue {
inner: Single(
TString {
range: 0..10,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..9,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..7,
id: Name("user"),
ctx: Load,

View file

@ -5,32 +5,32 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..38,
value: TString(
ExprTString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..38,
value: TStringValue {
inner: Single(
TString {
range: 0..38,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Literal(
InterpolatedStringLiteralElement {
range: 2..6,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "mix ",
},
),
Interpolation(
InterpolatedElement {
range: 6..13,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 7..11,
id: Name("user"),
ctx: Load,
@ -49,17 +49,17 @@ expression: suite
Literal(
InterpolatedStringLiteralElement {
range: 13..28,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: " with text and ",
},
),
Interpolation(
InterpolatedElement {
range: 28..37,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 29..35,
id: Name("second"),
ctx: Load,

View file

@ -5,25 +5,25 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..14,
value: TString(
ExprTString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..14,
value: TStringValue {
inner: Single(
TString {
range: 0..14,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Interpolation(
InterpolatedElement {
range: 2..13,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 3..7,
id: Name("user"),
ctx: Load,
@ -39,12 +39,12 @@ expression: suite
format_spec: Some(
InterpolatedStringFormatSpec {
range: 9..12,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Literal(
InterpolatedStringLiteralElement {
range: 9..12,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: ">10",
},
),

View file

@ -5,32 +5,32 @@ expression: suite
[
Expr(
StmtExpr {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..11,
value: TString(
ExprTString {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 0..11,
value: TStringValue {
inner: Single(
TString {
range: 0..11,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
elements: [
Literal(
InterpolatedStringLiteralElement {
range: 4..5,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
value: "\n",
},
),
Interpolation(
InterpolatedElement {
range: 5..8,
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
expression: Name(
ExprName {
node_index: AtomicNodeIndex(..),
node_index: NodeIndex(None),
range: 6..7,
id: Name("x"),
ctx: Load,

View file

@ -287,7 +287,7 @@ impl StringParser {
return Ok(ast::InterpolatedStringLiteralElement {
value: self.source,
range: self.range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
});
};
@ -365,7 +365,7 @@ impl StringParser {
Ok(ast::InterpolatedStringLiteralElement {
value: value.into_boxed_str(),
range: self.range,
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
})
}
@ -387,7 +387,7 @@ impl StringParser {
value: self.source.into_boxed_bytes(),
range: self.range,
flags: self.flags.into(),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}));
}
@ -397,7 +397,7 @@ impl StringParser {
value: self.source.into_boxed_bytes(),
range: self.range,
flags: self.flags.into(),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}));
};
@ -435,7 +435,7 @@ impl StringParser {
value: value.into_boxed_slice(),
range: self.range,
flags: self.flags.into(),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}))
}
@ -446,7 +446,7 @@ impl StringParser {
value: self.source,
range: self.range,
flags: self.flags.into(),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}));
}
@ -456,7 +456,7 @@ impl StringParser {
value: self.source,
range: self.range,
flags: self.flags.into(),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}));
};
@ -494,7 +494,7 @@ impl StringParser {
value: value.into_boxed_str(),
range: self.range,
flags: self.flags.into(),
node_index: AtomicNodeIndex::dummy(),
node_index: AtomicNodeIndex::NONE,
}))
}