diff options
author | Nadrieril | 2019-03-22 18:12:13 +0100 |
---|---|---|
committer | Nadrieril | 2019-03-22 18:12:13 +0100 |
commit | 8110651ccf498bcf3f0cd55f3b1730d9972cf254 (patch) | |
tree | 2e0b08153582b23bce178f4ca3b945b01ddd6306 /dhall_core/src/parser.rs | |
parent | 9a8a14ba3863b3bc5e79cd8070d6779451ff8466 (diff) |
Handle quoted labels
Diffstat (limited to '')
-rw-r--r-- | dhall_core/src/parser.rs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/dhall_core/src/parser.rs b/dhall_core/src/parser.rs index 165b393..8908c78 100644 --- a/dhall_core/src/parser.rs +++ b/dhall_core/src/parser.rs @@ -257,7 +257,12 @@ fn can_be_shortcutted(rule: Rule) -> bool { make_parser! { rule!(EOI<()>; raw_pair!(_) => ()); - rule!(label_raw<Label>; captured_str!(s) => Label::from(s.trim().to_owned())); + rule!(simple_label<Label>; captured_str!(s) => Label::from(s.trim().to_owned())); + rule!(quoted_label<Label>; captured_str!(s) => Label::from(s.trim().to_owned())); + rule!(label_raw<Label>; children!( + [simple_label(l)] => l, + [quoted_label(l)] => l, + )); rule!(double_quote_literal<ParsedText>; children!( [double_quote_chunk(chunks..)] => { |