SourceMapper

Trait SourceMapper 

Source
pub trait SourceMapper: Send + Sync {
    // Required methods
    fn lookup_char_pos(&self, pos: BytePos) -> Loc;
    fn span_to_lines(&self, sp: Span) -> Result<FileLines, Box<SpanLinesError>>;
    fn span_to_string(&self, sp: Span) -> String;
    fn span_to_filename(&self, sp: Span) -> Rc<FileName>;
    fn merge_spans(&self, sp_lhs: Span, sp_rhs: Span) -> Option<Span>;
    fn call_span_if_macro(&self, sp: Span) -> Span;
    fn doctest_offset_line(&self, line: usize) -> usize;
    fn span_to_snippet(&self, sp: Span) -> Result<String, Box<SpanSnippetError>>;
}
Available on crate feature __common only.

Required Methods§

Trait Implementations§

Source§

impl SourceMapperExt for dyn SourceMapper

Source§

fn get_code_map(&self) -> &dyn SourceMapper

Source§

fn is_on_same_line(&self, _lo: BytePos, _hi: BytePos) -> bool

Source§

fn should_write_separating_line_terminator( &self, prev: Option<Span>, next: Option<Span>, format: ListFormat, ) -> bool

Source§

fn should_write_leading_line_terminator( &self, parent_node: Span, first_child: Option<Span>, format: ListFormat, ) -> bool

Source§

fn should_write_closing_line_terminator( &self, parent_node: Span, last_child: Option<Span>, format: ListFormat, ) -> bool

Implementors§