MCPcopy Create free account
hub / github.com/Glyphack/enderpy / parse_starred_item

Method parse_starred_item

parser/src/parser/parser.rs:1983–1999  ·  view source on GitHub ↗

https://docs.python.org/3/reference/expressions.html#expression-lists

(&mut self)

Source from the content-addressed store, hash-verified

1981
1982 // https://docs.python.org/3/reference/expressions.html#expression-lists
1983 fn parse_starred_item(&mut self) -> Result<Expression, ParsingError> {
1984 let mut node = self.start_node();
1985 if self.eat(Kind::Mul) {
1986 let starred_value_kind = self.cur_kind();
1987 let expr = self.parse_or_expr()?;
1988 node = self.finish_node(node);
1989 if !is_iterable(&expr) {
1990 // self.unepxted_token(node, starred_value_kind);
1991 panic!();
1992 }
1993 return Ok(Expression::Starred(Box::new(Starred {
1994 node: self.finish_node(node),
1995 value: expr,
1996 })));
1997 }
1998 self.parse_named_expression()
1999 }
2000
2001 // https://docs.python.org/3/reference/expressions.html#conditional-expressions
2002 fn parse_expression(&mut self) -> Result<Expression, ParsingError> {

Callers 2

parse_starred_listMethod · 0.80

Calls 8

is_iterableFunction · 0.85
StarredClass · 0.85
start_nodeMethod · 0.80
eatMethod · 0.80
cur_kindMethod · 0.80
parse_or_exprMethod · 0.80
finish_nodeMethod · 0.80

Tested by

no test coverage detected