Implement buffer::move_to_enclosing_bracket
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
use crate::{
|
||||
editor::{
|
||||
buffer::{Anchor, Buffer, Point, ToPoint},
|
||||
buffer::{Anchor, Buffer, Point, ToOffset as _, ToPoint as _},
|
||||
display_map::DisplayMap,
|
||||
Bias, DisplayPoint,
|
||||
},
|
||||
@@ -61,7 +61,7 @@ impl Selection {
|
||||
}
|
||||
}
|
||||
|
||||
pub fn range(&self, buffer: &Buffer) -> Range<Point> {
|
||||
pub fn point_range(&self, buffer: &Buffer) -> Range<Point> {
|
||||
let start = self.start.to_point(buffer);
|
||||
let end = self.end.to_point(buffer);
|
||||
if self.reversed {
|
||||
@@ -71,6 +71,16 @@ impl Selection {
|
||||
}
|
||||
}
|
||||
|
||||
pub fn offset_range(&self, buffer: &Buffer) -> Range<usize> {
|
||||
let start = self.start.to_offset(buffer);
|
||||
let end = self.end.to_offset(buffer);
|
||||
if self.reversed {
|
||||
end..start
|
||||
} else {
|
||||
start..end
|
||||
}
|
||||
}
|
||||
|
||||
pub fn display_range(&self, map: &DisplayMap, app: &AppContext) -> Range<DisplayPoint> {
|
||||
let start = self.start.to_display_point(map, app);
|
||||
let end = self.end.to_display_point(map, app);
|
||||
|
||||
Reference in New Issue
Block a user