Skip to content

Commit ef67f8e

Browse files
quit picking at this! i can't stop
1 parent 2e6083f commit ef67f8e

File tree

3 files changed

+15
-5
lines changed

3 files changed

+15
-5
lines changed

crates/djls-source/src/position.rs

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ impl Span {
4141

4242
#[must_use]
4343
pub fn with_length_usize(self, length: usize) -> Self {
44-
Self::from_parts(self.start as usize, length)
44+
Self::from_parts(self.start_usize(), length)
4545
}
4646

4747
/// Construct a span from integer bounds expressed as byte offsets.
@@ -62,6 +62,16 @@ impl Span {
6262
(self.start, self.length)
6363
}
6464

65+
#[must_use]
66+
pub fn start_usize(self) -> usize {
67+
self.start as usize
68+
}
69+
70+
#[must_use]
71+
pub fn length_usize(self) -> usize {
72+
self.length as usize
73+
}
74+
6575
#[must_use]
6676
pub fn start_offset(&self) -> ByteOffset {
6777
ByteOffset(self.start)

crates/djls-templates/src/parser.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ impl<'db> Parser<'db> {
130130
let error_text = content.text(self.db).clone();
131131
let full_span = token.full_span().unwrap_or(*span);
132132
Err(ParseError::MalformedConstruct {
133-
position: full_span.start as usize,
133+
position: full_span.start_usize(),
134134
content: error_text,
135135
})
136136
}

crates/djls-templates/src/tokens.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ impl<'db> Token<'db> {
8686
| Token::Error { content, .. }
8787
| Token::Text { content, .. }
8888
| Token::Variable { content, .. } => content.text(db).clone(),
89-
Token::Whitespace { span, .. } => " ".repeat(span.length as usize),
89+
Token::Whitespace { span, .. } => " ".repeat(span.length_usize()),
9090
Token::Newline { span, .. } => {
9191
if span.length == 2 {
9292
"\r\n".to_string()
@@ -120,7 +120,7 @@ impl<'db> Token<'db> {
120120
TagDelimiter::Comment.closer()
121121
),
122122
Token::Text { content, .. } | Token::Error { content, .. } => content.text(db).clone(),
123-
Token::Whitespace { span, .. } => " ".repeat(span.length as usize),
123+
Token::Whitespace { span, .. } => " ".repeat(span.length_usize()),
124124
Token::Newline { span, .. } => {
125125
if span.length == 2 {
126126
"\r\n".to_string()
@@ -155,7 +155,7 @@ impl<'db> Token<'db> {
155155
| Token::Error { content, .. }
156156
| Token::Text { content, .. }
157157
| Token::Variable { content, .. } => content.text(db).len(),
158-
Token::Whitespace { span, .. } | Token::Newline { span, .. } => span.length as usize,
158+
Token::Whitespace { span, .. } | Token::Newline { span, .. } => span.length_usize(),
159159
Token::Eof => 0,
160160
};
161161
u32::try_from(len).expect("Token length should fit in u32")

0 commit comments

Comments
 (0)