summaryrefslogtreecommitdiff
path: root/src/syntax/lexer.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/syntax/lexer.rs')
-rw-r--r--src/syntax/lexer.rs10
1 files changed, 3 insertions, 7 deletions
diff --git a/src/syntax/lexer.rs b/src/syntax/lexer.rs
index 90a10f52..c46fa37b 100644
--- a/src/syntax/lexer.rs
+++ b/src/syntax/lexer.rs
@@ -170,7 +170,6 @@ impl Lexer<'_> {
'`' => self.raw(),
'h' if self.s.eat_if("ttp://") => self.link(),
'h' if self.s.eat_if("ttps://") => self.link(),
- '0'..='9' => self.numbering(start),
'<' if self.s.at(is_id_continue) => self.label(),
'@' => self.ref_marker(),
@@ -200,6 +199,7 @@ impl Lexer<'_> {
'-' if self.space_or_end() => SyntaxKind::ListMarker,
'+' if self.space_or_end() => SyntaxKind::EnumMarker,
'/' if self.space_or_end() => SyntaxKind::TermMarker,
+ '0'..='9' => self.numbering(start),
_ => self.text(),
}
@@ -284,12 +284,8 @@ impl Lexer<'_> {
self.s.eat_while(char::is_ascii_digit);
let read = self.s.from(start);
- if self.s.eat_if('.') {
- if let Ok(number) = read.parse::<usize>() {
- if number == 0 {
- return self.error("must be positive");
- }
-
+ if self.s.eat_if('.') && self.space_or_end() {
+ if read.parse::<usize>().is_ok() {
return SyntaxKind::EnumMarker;
}
}