rust

package
v0.4.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 23, 2026 License: MIT Imports: 10 Imported by: 0

Documentation

Overview

Package rust implements a gorisk analyzer for Rust projects. It supports Cargo.lock and Cargo.toml.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BuildIRGraph added in v0.4.2

func BuildIRGraph(g *graph.DependencyGraph) ir.IRGraph

BuildIRGraph builds a function-level IR graph for a Rust dependency graph.

func Detect

func Detect(dir string) capability.CapabilitySet

Detect walks .rs files in dir and returns the combined capability set.

func DetectFunctions added in v0.4.2

func DetectFunctions(dir string, files []string) (map[string]ir.FunctionCaps, []ir.CallEdge, error)

DetectFunctions parses Rust source files and returns per-function capability sets and call edges.

Types

type Adapter

type Adapter struct{}

Adapter implements the analyzer.Analyzer interface for Rust projects.

func (*Adapter) Load

func (a *Adapter) Load(dir string) (*graph.DependencyGraph, error)

Load parses the Rust dependency lockfile in dir, detects capabilities from .rs source files, and returns a *graph.DependencyGraph.

func (*Adapter) Name

func (a *Adapter) Name() string

type RustFunction added in v0.4.2

type RustFunction struct {
	Name      string
	StartLine int
	EndLine   int
	Body      string
}

RustFunction represents a Rust function found in source.

type RustPackage

type RustPackage struct {
	Name         string
	Version      string
	Dir          string
	Dependencies []string
	Direct       bool
}

RustPackage represents a Rust dependency extracted from a lockfile.

func Load

func Load(dir string) (pkgs []RustPackage, retErr error)

Load detects and parses the Rust dependency lockfile in dir. Detection order: Cargo.lock → Cargo.toml Load never panics; it returns a structured error on failure.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL