Skip to main content

GraphOperation

Enum GraphOperation 

Source
pub enum GraphOperation {
Show 14 variants TracePath { from: String, to: String, languages: Option<String>, full_paths: bool, }, CallChainDepth { symbol: String, languages: Option<String>, show_chain: bool, }, DependencyTree { module: String, max_depth: Option<usize>, cycles_only: bool, }, CrossLanguage { from_lang: Option<String>, to_lang: Option<String>, edge_type: Option<String>, min_confidence: f64, }, Nodes { kind: Option<String>, languages: Option<String>, file: Option<String>, name: Option<String>, qualified_name: Option<String>, limit: usize, offset: usize, full_paths: bool, }, Edges { kind: Option<String>, from: Option<String>, to: Option<String>, from_lang: Option<String>, to_lang: Option<String>, file: Option<String>, limit: usize, offset: usize, full_paths: bool, }, Stats { by_file: bool, by_language: bool, }, Status, Cycles { min_length: usize, max_length: Option<usize>, imports_only: bool, languages: Option<String>, }, Complexity { target: Option<String>, sort_complexity: bool, min_complexity: usize, languages: Option<String>, }, DirectCallers { symbol: String, limit: usize, languages: Option<String>, full_paths: bool, }, DirectCallees { symbol: String, limit: usize, languages: Option<String>, full_paths: bool, }, CallHierarchy { symbol: String, depth: usize, direction: String, languages: Option<String>, full_paths: bool, }, IsInCycle { symbol: String, cycle_type: String, show_cycle: bool, },
}
Expand description

Graph-based query operations

Variants§

§

TracePath

Find shortest path between two symbols

Traces the shortest execution path from one symbol to another, following Call, HTTPRequest, and FFICall edges.

Example: sqry graph trace-path main processData

Fields

§from: String

Source symbol name (e.g., “main”, “User.authenticate”).

§to: String

Target symbol name.

§languages: Option<String>

Filter by languages (comma-separated, e.g., “javascript,python”).

§full_paths: bool

Show full file paths in output.

§

CallChainDepth

Calculate maximum call chain depth from a symbol

Computes the longest call chain starting from the given symbol, useful for complexity analysis and recursion detection.

Example: sqry graph call-chain-depth main

Fields

§symbol: String

Symbol name to analyze.

§languages: Option<String>

Filter by languages (comma-separated).

§show_chain: bool

Show the actual call chain, not just the depth.

§

DependencyTree

Show transitive dependencies for a module

Analyzes all imports transitively to build a complete dependency tree, including circular dependency detection.

Example: sqry graph dependency-tree src/main.js

Fields

§module: String

Module path or name.

§max_depth: Option<usize>

Maximum depth to traverse (default: unlimited).

§cycles_only: bool

Show circular dependencies only.

§

CrossLanguage

List all cross-language relationships

Finds edges connecting symbols in different programming languages, such as TypeScript→JavaScript imports, Python→C FFI calls, SQL table access, Dart MethodChannel invocations, and Flutter widget hierarchies.

Supported languages for –from-lang/–to-lang: js, ts, py, cpp, c, csharp (cs), java, go, ruby, php, swift, kotlin, scala, sql, dart, lua, perl, shell (bash), groovy, http

Examples: sqry graph cross-language –from-lang dart –edge-type channel_invoke sqry graph cross-language –from-lang sql –edge-type table_read sqry graph cross-language –edge-type widget_child

Fields

§from_lang: Option<String>

Filter by source language.

§to_lang: Option<String>

Filter by target language.

§edge_type: Option<String>

Edge type filter.

Supported values: call, import, http, ffi, table_read, table_write, triggered_by, channel_invoke, widget_child

§min_confidence: f64

Minimum confidence threshold (0.0-1.0).

§

Nodes

List unified graph nodes

Enumerates nodes from the unified graph snapshot and applies filters. Useful for inspecting graph coverage and metadata details.

Fields

§kind: Option<String>

Filter by node kind(s) (comma-separated: function,method,macro).

§languages: Option<String>

Filter by language(s) (comma-separated: rust,python).

§file: Option<String>

Filter by file path substring (case-insensitive).

§name: Option<String>

Filter by name substring (case-sensitive).

§qualified_name: Option<String>

Filter by qualified name substring (case-sensitive).

§limit: usize

Maximum results (default: 1000, max: 10000; use 0 for default).

§offset: usize

Skip N results.

§full_paths: bool

Show full file paths in output.

§

Edges

List unified graph edges

Enumerates edges from the unified graph snapshot and applies filters. Useful for inspecting relationships and cross-cutting metadata.

Fields

§kind: Option<String>

Filter by edge kind tag(s) (comma-separated: calls,imports).

§from: Option<String>

Filter by source label substring (case-sensitive).

§to: Option<String>

Filter by target label substring (case-sensitive).

§from_lang: Option<String>

Filter by source language.

§to_lang: Option<String>

Filter by target language.

§file: Option<String>

Filter by file path substring (case-insensitive, source file only).

§limit: usize

Maximum results (default: 1000, max: 10000; use 0 for default).

§offset: usize

Skip N results.

§full_paths: bool

Show full file paths in output.

§

Stats

Show graph statistics and summary

Displays overall graph metrics including node counts by language, edge counts by type, and cross-language relationship statistics.

Example: sqry graph stats

Fields

§by_file: bool

Show detailed breakdown by file.

§by_language: bool

Show detailed breakdown by language.

§

Status

Show unified graph snapshot status

Reports on the state of the unified graph snapshot stored in .sqry/graph/ directory. Displays build timestamp, node/edge counts, and snapshot age.

Example: sqry graph status

§

Cycles

Detect circular dependencies in the codebase

Finds all cycles in the call and import graphs, which can indicate potential design issues or circular dependency problems.

Example: sqry graph cycles

Fields

§min_length: usize

Minimum cycle length to report (default: 2).

§max_length: Option<usize>

Maximum cycle length to report (default: unlimited).

§imports_only: bool

Only analyze import edges (ignore calls).

§languages: Option<String>

Filter by languages (comma-separated).

§

Complexity

Calculate code complexity metrics

Analyzes cyclomatic complexity, call graph depth, and other complexity metrics for functions and modules.

Example: sqry graph complexity

Fields

§target: Option<String>

Target symbol or module (default: analyze all).

§sort_complexity: bool

Sort by complexity score.

§min_complexity: usize

Show only items above this complexity threshold.

§languages: Option<String>

Filter by languages (comma-separated).

§

DirectCallers

Find direct callers of a symbol

Lists all symbols that directly call the specified function, method, or other callable. Useful for understanding symbol usage and impact analysis.

Example: sqry graph direct-callers authenticate

Fields

§symbol: String

Symbol name to find callers for.

§limit: usize

Maximum results (default: 100).

§languages: Option<String>

Filter by languages (comma-separated).

§full_paths: bool

Show full file paths in output.

§

DirectCallees

Find direct callees of a symbol

Lists all symbols that are directly called by the specified function or method. Useful for understanding dependencies and refactoring scope.

Example: sqry graph direct-callees processData

Fields

§symbol: String

Symbol name to find callees for.

§limit: usize

Maximum results (default: 100).

§languages: Option<String>

Filter by languages (comma-separated).

§full_paths: bool

Show full file paths in output.

§

CallHierarchy

Show call hierarchy for a symbol

Displays incoming and/or outgoing call relationships in a tree format. Useful for understanding code flow and impact of changes.

Example: sqry graph call-hierarchy main –depth 3

Fields

§symbol: String

Symbol name to show hierarchy for.

§depth: usize

Maximum depth to traverse (default: 3).

§direction: String

Direction: incoming, outgoing, or both (default: both).

§languages: Option<String>

Filter by languages (comma-separated).

§full_paths: bool

Show full file paths in output.

§

IsInCycle

Check if a symbol is in a cycle

Determines whether a specific symbol participates in any circular dependency chains. Can optionally show the cycle path.

Example: sqry graph is-in-cycle UserService –show-cycle

Fields

§symbol: String

Symbol name to check.

§cycle_type: String

Cycle type to check: calls, imports, or all (default: calls).

§show_cycle: bool

Show the full cycle path if found.

Trait Implementations§

Source§

impl Clone for GraphOperation

Source§

fn clone(&self) -> GraphOperation

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 GraphOperation

Source§

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

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

impl FromArgMatches for GraphOperation

Source§

fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>

Instantiate Self from ArgMatches, parsing the arguments as needed. Read more
Source§

fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches, ) -> Result<Self, Error>

Instantiate Self from ArgMatches, parsing the arguments as needed. Read more
Source§

fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches, ) -> Result<(), Error>

Assign values from ArgMatches to self.
Source§

fn update_from_arg_matches_mut<'b>( &mut self, __clap_arg_matches: &mut ArgMatches, ) -> Result<(), Error>

Assign values from ArgMatches to self.
Source§

impl Subcommand for GraphOperation

Source§

fn augment_subcommands<'b>(__clap_app: Command) -> Command

Append to Command so it can instantiate Self via FromArgMatches::from_arg_matches_mut Read more
Source§

fn augment_subcommands_for_update<'b>(__clap_app: Command) -> Command

Append to Command so it can instantiate self via FromArgMatches::update_from_arg_matches_mut Read more
Source§

fn has_subcommand(__clap_name: &str) -> bool

Test whether Self can parse a specific subcommand

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<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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<T> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
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> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
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.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more