pub struct Source { /* private fields */ }
Expand description
A thread-safe reference to a source file. Multiple objects of this type can refer to the same source.
Implementations§
source§impl Source
impl Source
sourcepub fn inline(file_name: &Path, contents: &str) -> Source
pub fn inline(file_name: &Path, contents: &str) -> Source
Creates a source from a (virtual) name and in-memory contents.
Note: For differing values of contents
, the value of file_name
must differ as well.
pub fn from_latin1_file(file_name: &Path) -> Result<Source>
pub fn contents(&self) -> RwLockReadGuard<'_, Contents>
pub fn file_name(&self) -> &Path
pub fn pos(&self, start: Position, end: Position) -> SrcPos
pub fn change(&self, range: Option<&Range>, content: &str)
Trait Implementations§
source§impl Ord for Source
impl Ord for Source
source§impl PartialEq for Source
impl PartialEq for Source
source§impl PartialOrd for Source
impl PartialOrd for Source
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moreimpl Eq for Source
Auto Trait Implementations§
impl Freeze for Source
impl !RefUnwindSafe for Source
impl Send for Source
impl Sync for Source
impl Unpin for Source
impl !UnwindSafe for Source
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more