Parse the expected return values of a run invocation. expected ::= "[" "]" | data-value | "[" data-value-list "]"
(&mut self, sig: &Signature)
| 2594 | /// | data-value |
| 2595 | /// | "[" data-value-list "]" |
| 2596 | fn parse_run_returns(&mut self, sig: &Signature) -> ParseResult<Vec<DataValue>> { |
| 2597 | if sig.returns.len() != 1 { |
| 2598 | self.match_token(Token::LBracket, "expected a left bracket [")?; |
| 2599 | } |
| 2600 | |
| 2601 | let returns = self |
| 2602 | .parse_data_value_list(&sig.returns.iter().map(|a| a.value_type).collect::<Vec<_>>())?; |
| 2603 | |
| 2604 | if sig.returns.len() != 1 { |
| 2605 | self.match_token(Token::RBracket, "expected a right bracket ]")?; |
| 2606 | } |
| 2607 | Ok(returns) |
| 2608 | } |
| 2609 | |
| 2610 | /// Parse a comma-separated list of data values. |
| 2611 | /// |
no test coverage detected