summaryrefslogtreecommitdiff
path: root/crates/typst-library
diff options
context:
space:
mode:
authorLaurenz <laurmaedje@gmail.com>2024-11-11 15:11:44 +0100
committerLaurenz <laurmaedje@gmail.com>2024-11-13 10:21:40 +0100
commit525154a730dfdb224fe2ced3dae0cfb33114fafa (patch)
treec81f490cb6b2091146d787fdc044f7be530d8181 /crates/typst-library
parent5625914872b2824388ce65f3fb184d913f29cbff (diff)
Add support for raw range spans
Diffstat (limited to 'crates/typst-library')
-rw-r--r--crates/typst-library/src/lib.rs6
1 files changed, 3 insertions, 3 deletions
diff --git a/crates/typst-library/src/lib.rs b/crates/typst-library/src/lib.rs
index 4db377e9..bd135cdb 100644
--- a/crates/typst-library/src/lib.rs
+++ b/crates/typst-library/src/lib.rs
@@ -125,13 +125,13 @@ world_impl!(W for &W);
pub trait WorldExt {
/// Get the byte range for a span.
///
- /// Returns `None` if the `Span` does not point into any source file.
+ /// Returns `None` if the `Span` does not point into any file.
fn range(&self, span: Span) -> Option<Range<usize>>;
}
-impl<T: World> WorldExt for T {
+impl<T: World + ?Sized> WorldExt for T {
fn range(&self, span: Span) -> Option<Range<usize>> {
- self.source(span.id()?).ok()?.range(span)
+ span.range().or_else(|| self.source(span.id()?).ok()?.range(span))
}
}