///|
pub(all) struct SourceLocation {
input : String
start : Int
end : Int
} derive(Debug, ToJson, Eq)
///|
pub fn SourceLocation::make(
input : String,
start~ : Int,
end~ : Int,
) -> SourceLocation {
{ input, start, end }
}
///|
fn SourceLocation::range(
start_loc : SourceLocation,
end_loc : SourceLocation,
) -> SourceLocation {
{ input: start_loc.input, start: start_loc.start, end: end_loc.end }
}