Skip to main content

AnalysisResults

Struct AnalysisResults 

Source
pub struct AnalysisResults {
Show 18 fields pub unused_files: Vec<UnusedFile>, pub unused_exports: Vec<UnusedExport>, pub unused_types: Vec<UnusedExport>, pub unused_dependencies: Vec<UnusedDependency>, pub unused_dev_dependencies: Vec<UnusedDependency>, pub unused_optional_dependencies: Vec<UnusedDependency>, pub unused_enum_members: Vec<UnusedMember>, pub unused_class_members: Vec<UnusedMember>, pub unresolved_imports: Vec<UnresolvedImport>, pub unlisted_dependencies: Vec<UnlistedDependency>, pub duplicate_exports: Vec<DuplicateExport>, pub type_only_dependencies: Vec<TypeOnlyDependency>, pub test_only_dependencies: Vec<TestOnlyDependency>, pub circular_dependencies: Vec<CircularDependency>, pub boundary_violations: Vec<BoundaryViolation>, pub feature_flags: Vec<FeatureFlag>, pub export_usages: Vec<ExportUsage>, pub entry_point_summary: Option<EntryPointSummary>,
}
Expand description

Complete analysis results.

§Examples

use fallow_types::results::{AnalysisResults, UnusedFile};
use std::path::PathBuf;

let mut results = AnalysisResults::default();
assert_eq!(results.total_issues(), 0);
assert!(!results.has_issues());

results.unused_files.push(UnusedFile {
    path: PathBuf::from("src/dead.ts"),
});
assert_eq!(results.total_issues(), 1);
assert!(results.has_issues());

Fields§

§unused_files: Vec<UnusedFile>

Files not reachable from any entry point.

§unused_exports: Vec<UnusedExport>

Exports never imported by other modules.

§unused_types: Vec<UnusedExport>

Type exports never imported by other modules.

§unused_dependencies: Vec<UnusedDependency>

Dependencies listed in package.json but never imported.

§unused_dev_dependencies: Vec<UnusedDependency>

Dev dependencies listed in package.json but never imported.

§unused_optional_dependencies: Vec<UnusedDependency>

Optional dependencies listed in package.json but never imported.

§unused_enum_members: Vec<UnusedMember>

Enum members never accessed.

§unused_class_members: Vec<UnusedMember>

Class members never accessed.

§unresolved_imports: Vec<UnresolvedImport>

Import specifiers that could not be resolved.

§unlisted_dependencies: Vec<UnlistedDependency>

Dependencies used in code but not listed in package.json.

§duplicate_exports: Vec<DuplicateExport>

Exports with the same name across multiple modules.

§type_only_dependencies: Vec<TypeOnlyDependency>

Production dependencies only used via type-only imports (could be devDependencies). Only populated in production mode.

§test_only_dependencies: Vec<TestOnlyDependency>

Production dependencies only imported by test files (could be devDependencies).

§circular_dependencies: Vec<CircularDependency>

Circular dependency chains detected in the module graph.

§boundary_violations: Vec<BoundaryViolation>

Imports that cross architecture boundary rules.

§feature_flags: Vec<FeatureFlag>

Detected feature flag patterns. Advisory output, not included in issue counts. Skipped during default serialization: injected separately in JSON output when enabled.

§export_usages: Vec<ExportUsage>

Usage counts for all exports across the project. Used by the LSP for Code Lens. Not included in issue counts – this is metadata, not an issue type. Skipped during serialization: this is internal LSP data, not part of the JSON output schema.

§entry_point_summary: Option<EntryPointSummary>

Summary of detected entry points, grouped by discovery source. Not included in issue counts – this is informational metadata. Skipped during serialization: rendered separately in JSON output.

Implementations§

Source§

impl AnalysisResults

Source

pub const fn total_issues(&self) -> usize

Total number of issues found.

Sums across all issue categories (unused files, exports, types, dependencies, members, unresolved imports, unlisted deps, duplicates, type-only deps, circular deps, and boundary violations).

§Examples
use fallow_types::results::{AnalysisResults, UnusedFile, UnresolvedImport};
use std::path::PathBuf;

let mut results = AnalysisResults::default();
results.unused_files.push(UnusedFile { path: PathBuf::from("a.ts") });
results.unresolved_imports.push(UnresolvedImport {
    path: PathBuf::from("b.ts"),
    specifier: "./missing".to_string(),
    line: 1,
    col: 0,
    specifier_col: 0,
});
assert_eq!(results.total_issues(), 2);
Source

pub const fn has_issues(&self) -> bool

Whether any issues were found.

Source

pub fn sort(&mut self)

Sort all result arrays for deterministic output ordering.

Parallel collection (rayon, FxHashMap iteration) does not guarantee insertion order, so the same project can produce different orderings across runs. This method canonicalises every result list by sorting on (path, line, col, name) so that JSON/SARIF/human output is stable.

Trait Implementations§

Source§

impl Clone for AnalysisResults

Source§

fn clone(&self) -> AnalysisResults

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for AnalysisResults

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for AnalysisResults

Source§

fn default() -> AnalysisResults

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

impl Serialize for AnalysisResults

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<'a, T> FromIn<'a, T> for T

Source§

fn from_in(t: T, _: &'a Allocator) -> T

Converts to this type from the input type within the given allocator.
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

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

Source§

impl<'a, T, U> IntoIn<'a, U> for T
where U: FromIn<'a, T>,

Source§

fn into_in(self, allocator: &'a Allocator) -> U

Converts this type into the (usually inferred) input type within the given allocator.
Source§

impl<D> OwoColorize for D

Source§

fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>
where C: Color,

Set the foreground color generically Read more
Source§

fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>
where C: Color,

Set the background color generically. Read more
Source§

fn black(&self) -> FgColorDisplay<'_, Black, Self>

Change the foreground color to black
Source§

fn on_black(&self) -> BgColorDisplay<'_, Black, Self>

Change the background color to black
Source§

fn red(&self) -> FgColorDisplay<'_, Red, Self>

Change the foreground color to red
Source§

fn on_red(&self) -> BgColorDisplay<'_, Red, Self>

Change the background color to red
Source§

fn green(&self) -> FgColorDisplay<'_, Green, Self>

Change the foreground color to green
Source§

fn on_green(&self) -> BgColorDisplay<'_, Green, Self>

Change the background color to green
Source§

fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>

Change the foreground color to yellow
Source§

fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>

Change the background color to yellow
Source§

fn blue(&self) -> FgColorDisplay<'_, Blue, Self>

Change the foreground color to blue
Source§

fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>

Change the background color to blue
Source§

fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>

Change the foreground color to magenta
Source§

fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>

Change the background color to magenta
Source§

fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>

Change the foreground color to purple
Source§

fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>

Change the background color to purple
Source§

fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>

Change the foreground color to cyan
Source§

fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>

Change the background color to cyan
Source§

fn white(&self) -> FgColorDisplay<'_, White, Self>

Change the foreground color to white
Source§

fn on_white(&self) -> BgColorDisplay<'_, White, Self>

Change the background color to white
Source§

fn default_color(&self) -> FgColorDisplay<'_, Default, Self>

Change the foreground color to the terminal default
Source§

fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>

Change the background color to the terminal default
Source§

fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>

Change the foreground color to bright black
Source§

fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>

Change the background color to bright black
Source§

fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>

Change the foreground color to bright red
Source§

fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>

Change the background color to bright red
Source§

fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>

Change the foreground color to bright green
Source§

fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>

Change the background color to bright green
Source§

fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>

Change the foreground color to bright yellow
Source§

fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>

Change the background color to bright yellow
Source§

fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>

Change the foreground color to bright blue
Source§

fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>

Change the background color to bright blue
Source§

fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>

Change the foreground color to bright magenta
Source§

fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>

Change the background color to bright magenta
Source§

fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>

Change the foreground color to bright purple
Source§

fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>

Change the background color to bright purple
Source§

fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>

Change the foreground color to bright cyan
Source§

fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>

Change the background color to bright cyan
Source§

fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>

Change the foreground color to bright white
Source§

fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>

Change the background color to bright white
Source§

fn bold(&self) -> BoldDisplay<'_, Self>

Make the text bold
Source§

fn dimmed(&self) -> DimDisplay<'_, Self>

Make the text dim
Source§

fn italic(&self) -> ItalicDisplay<'_, Self>

Make the text italicized
Source§

fn underline(&self) -> UnderlineDisplay<'_, Self>

Make the text underlined
Make the text blink
Make the text blink (but fast!)
Source§

fn reversed(&self) -> ReversedDisplay<'_, Self>

Swap the foreground and background colors
Source§

fn hidden(&self) -> HiddenDisplay<'_, Self>

Hide the text
Source§

fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>

Cross out the text
Source§

fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>
where Color: DynColor,

Set the foreground color at runtime. Only use if you do not know which color will be used at compile-time. If the color is constant, use either OwoColorize::fg or a color-specific method, such as OwoColorize::green, Read more
Source§

fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>
where Color: DynColor,

Set the background color at runtime. Only use if you do not know what color to use at compile-time. If the color is constant, use either OwoColorize::bg or a color-specific method, such as OwoColorize::on_yellow, Read more
Source§

fn fg_rgb<const R: u8, const G: u8, const B: u8>( &self, ) -> FgColorDisplay<'_, CustomColor<R, G, B>, Self>

Set the foreground color to a specific RGB value.
Source§

fn bg_rgb<const R: u8, const G: u8, const B: u8>( &self, ) -> BgColorDisplay<'_, CustomColor<R, G, B>, Self>

Set the background color to a specific RGB value.
Source§

fn truecolor(&self, r: u8, g: u8, b: u8) -> FgDynColorDisplay<'_, Rgb, Self>

Sets the foreground color to an RGB value.
Source§

fn on_truecolor(&self, r: u8, g: u8, b: u8) -> BgDynColorDisplay<'_, Rgb, Self>

Sets the background color to an RGB value.
Source§

fn style(&self, style: Style) -> Styled<&Self>

Apply a runtime-determined style
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

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

fn clone_into(&self, target: &mut T)

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

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.