pub struct SourceSpan {
    pub text: String,
    pub start: Option<SourceLocation>,
    pub end: Option<SourceLocation>,
    pub url: String,
    pub context: String,
}
Expand description

A chunk of a source file.

Fields

text: String

The text covered by the source span. Compilers must guarantee that this is the text between start.offset and end.offset in the source file referred to by url.

start: Option<SourceLocation>

The location of the first character in this span. Mandatory.

end: Option<SourceLocation>

The location of the first character after this span. Optional.

If this is omitted, it indicates that the span is empty and points immediately before start. In that case, text must be empty.

This must not point to a location before start.

url: String

The URL of the file to which this span refers.

This may be empty, indicating that the span refers to a CompileRequest.StringInput file that doesn’t specify a URL.

context: String

Additional source text surrounding this span.

If this isn’t empty, it must contain text. Furthermore, text must begin at column start.column of a line in context.

This usually contains the full lines the span begins and ends on if the span itself doesn’t cover the full lines.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Returns the “default value” for a type. Read more

Returns the encoded length of the message without a length delimiter.

Clears the message, resetting all fields to their default.

Encodes the message to a buffer. Read more

Encodes the message to a newly allocated buffer.

Encodes the message with a length-delimiter to a buffer. Read more

Encodes the message with a length-delimiter to a newly allocated buffer.

Decodes an instance of the message from a buffer. Read more

Decodes a length-delimited instance of the message from the buffer.

Decodes an instance of the message from a buffer, and merges it into self. Read more

Decodes a length-delimited instance of the message from buffer, and merges it into self. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.