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

Method parse_or_pattern

parser/src/parser/parser.rs:827–841  ·  view source on GitHub ↗
(&mut self)

Source from the content-addressed store, hash-verified

825 }
826
827 fn parse_or_pattern(&mut self) -> Result<MatchPattern, ParsingError> {
828 let mut patterns = vec![];
829 patterns.push(self.parse_closed_pattern()?);
830 loop {
831 if !self.eat(Kind::BitOr) {
832 break;
833 }
834 patterns.push(self.parse_closed_pattern()?);
835 }
836 if patterns.len() == 1 {
837 Ok(patterns.remove(0))
838 } else {
839 Ok(MatchPattern::MatchOr(patterns))
840 }
841 }
842
843 fn parse_closed_pattern(&mut self) -> Result<MatchPattern, ParsingError> {
844 match self.cur_kind() {

Callers 1

parse_patternMethod · 0.80

Calls 3

parse_closed_patternMethod · 0.80
eatMethod · 0.80
lenMethod · 0.45

Tested by

no test coverage detected