diff options
Diffstat (limited to 'src/construct/label_end.rs')
-rw-r--r-- | src/construct/label_end.rs | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/src/construct/label_end.rs b/src/construct/label_end.rs index ca71245..d48f0c5 100644 --- a/src/construct/label_end.rs +++ b/src/construct/label_end.rs @@ -624,16 +624,13 @@ pub fn reference_full_after(tokenizer: &mut Tokenizer) -> State { /// ^ /// ``` pub fn reference_collapsed(tokenizer: &mut Tokenizer) -> State { - match tokenizer.current { - Some(b'[') => { - tokenizer.enter(Name::Reference); - tokenizer.enter(Name::ReferenceMarker); - tokenizer.consume(); - tokenizer.exit(Name::ReferenceMarker); - State::Next(StateName::LabelEndReferenceCollapsedOpen) - } - _ => State::Nok, - } + // We only attempt a collapsed label if there’s a `[`. + debug_assert_eq!(tokenizer.current, Some(b'['), "expected opening bracket"); + tokenizer.enter(Name::Reference); + tokenizer.enter(Name::ReferenceMarker); + tokenizer.consume(); + tokenizer.exit(Name::ReferenceMarker); + State::Next(StateName::LabelEndReferenceCollapsedOpen) } /// In reference (collapsed), at `]`. |