impl Doc {
pub fn new(valid_idents: Vec<String>) -> Self {
- Doc { valid_idents: valid_idents }
+ Self { valid_idents: valid_idents }
}
}
}
impl<'a> Parser<'a> {
- fn new(parser: pulldown_cmark::Parser<'a>) -> Parser<'a> {
+ fn new(parser: pulldown_cmark::Parser<'a>) -> Self {
Self { parser: parser }
}
}
return (
doc.to_owned(),
vec![
- (
- doc.len(),
- Span {
- lo: span.lo + BytePos(prefix.len() as u32),
- ..span
- }
- ),
+ (doc.len(), span.with_lo(span.lo() + BytePos(prefix.len() as u32))),
],
);
}
debug_assert_eq!(offset as u32 as usize, offset);
contains_initial_stars |= line.trim_left().starts_with('*');
// +1 for the newline
- sizes.push((
- line.len() + 1,
- Span {
- lo: span.lo + BytePos(offset as u32),
- ..span
- },
- ));
+ sizes.push((line.len() + 1, span.with_lo(span.lo() + BytePos(offset as u32))));
}
if !contains_initial_stars {
return (doc.to_string(), sizes);
let (begin, span) = spans[index];
// Adjust for the begining of the current `Event`
- let span = Span {
- lo: span.lo + BytePos::from_usize(offset - begin),
- ..span
- };
+ let span = span.with_lo(span.lo() + BytePos::from_usize(offset - begin));
check_text(cx, valid_idents, &text, span);
}
// Adjust for the current word
let offset = word.as_ptr() as usize - text.as_ptr() as usize;
- let span = Span {
- lo: span.lo + BytePos::from_usize(offset),
- hi: span.lo + BytePos::from_usize(offset + word.len()),
- ..span
- };
+ let span = Span::new(
+ span.lo() + BytePos::from_usize(offset),
+ span.lo() + BytePos::from_usize(offset + word.len()),
+ span.ctxt(),
+ );
check_word(cx, word, span);
}