mirror of
https://github.com/astral-sh/ruff.git
synced 2025-07-19 02:55:20 +00:00
Move Ranged
into ruff_text_size
(#6919)
## Summary The motivation here is that this enables us to implement `Ranged` in crates that don't depend on `ruff_python_ast`. Largely a mechanical refactor with a lot of regex, Clippy help, and manual fixups. ## Test Plan `cargo test`
This commit is contained in:
parent
88c8bece38
commit
fc89976c24
468 changed files with 940 additions and 706 deletions
|
@ -1,6 +1,8 @@
|
|||
use ruff_text_size::{TextRange, TextSize};
|
||||
use std::path::Path;
|
||||
|
||||
pub use expression::*;
|
||||
pub use nodes::*;
|
||||
|
||||
pub mod all;
|
||||
pub mod call_path;
|
||||
pub mod comparable;
|
||||
|
@ -22,36 +24,6 @@ pub mod types;
|
|||
pub mod visitor;
|
||||
pub mod whitespace;
|
||||
|
||||
pub use expression::*;
|
||||
pub use nodes::*;
|
||||
|
||||
pub trait Ranged {
|
||||
fn range(&self) -> TextRange;
|
||||
|
||||
fn start(&self) -> TextSize {
|
||||
self.range().start()
|
||||
}
|
||||
|
||||
fn end(&self) -> TextSize {
|
||||
self.range().end()
|
||||
}
|
||||
}
|
||||
|
||||
impl Ranged for TextRange {
|
||||
fn range(&self) -> TextRange {
|
||||
*self
|
||||
}
|
||||
}
|
||||
|
||||
impl<T> Ranged for &T
|
||||
where
|
||||
T: Ranged,
|
||||
{
|
||||
fn range(&self) -> TextRange {
|
||||
T::range(self)
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Clone, Copy, Debug, Default, PartialEq)]
|
||||
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
|
||||
pub enum PySourceType {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue