pub struct LayerViolationAnalyzer {
pub layers: Vec<(String, u32)>,
}Expand description
Detect imports that violate configured layer boundaries. Layers are defined as path prefixes with a numeric order. Lower layers must not import from higher layers.
Configure via .cha.toml:
[plugins.layer_violation.options]
layers = "domain:0,service:1,controller:2,ui:3"Fields§
§layers: Vec<(String, u32)>Ordered layers: (prefix, level). Lower level = lower layer.
Implementations§
Source§impl LayerViolationAnalyzer
impl LayerViolationAnalyzer
Sourcepub fn from_config_str(s: &str) -> Self
pub fn from_config_str(s: &str) -> Self
Parse layers from config string: “domain:0,service:1,controller:2”
Trait Implementations§
Source§impl Default for LayerViolationAnalyzer
impl Default for LayerViolationAnalyzer
Source§fn default() -> LayerViolationAnalyzer
fn default() -> LayerViolationAnalyzer
Returns the “default value” for a type. Read more
Source§impl Plugin for LayerViolationAnalyzer
impl Plugin for LayerViolationAnalyzer
Source§fn description(&self) -> &str
fn description(&self) -> &str
Short description of what the plugin detects.
Source§fn analyze(&self, ctx: &AnalysisContext<'_>) -> Vec<Finding>
fn analyze(&self, ctx: &AnalysisContext<'_>) -> Vec<Finding>
Run analysis on a single file and return findings.
List of authors.
Auto Trait Implementations§
impl Freeze for LayerViolationAnalyzer
impl RefUnwindSafe for LayerViolationAnalyzer
impl Send for LayerViolationAnalyzer
impl Sync for LayerViolationAnalyzer
impl Unpin for LayerViolationAnalyzer
impl UnsafeUnpin for LayerViolationAnalyzer
impl UnwindSafe for LayerViolationAnalyzer
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> GetSetFdFlags for T
impl<T> GetSetFdFlags for T
Source§fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
Query the “status” flags for the
self file descriptor.Source§fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
Source§fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
Set the “status” flags for the
self file descriptor. Read moreSource§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more