mirage-analyzer 1.4.0

Path-Aware Code Intelligence Engine for Rust
Documentation

Mirage

Crates.io Documentation

Version: 1.3.1

Path-aware code intelligence engine for Rust. Analyzes control-flow graphs from Magellan databases.

Purpose

Mirage reads Magellan code graphs and provides control-flow analysis:

  • Path enumeration through functions
  • Dominance and post-dominance analysis
  • Natural loop detection
  • Dead code detection
  • Call graph cycle detection
  • Inter-procedural reachability
  • Source document listing from graph memory tables

Quick Start

# Install
cargo install mirage-analyzer

# Index your codebase with Magellan first
magellan watch --root ./src --db .magellan/mirage.db

# Analyze CFG
mirage --db .magellan/mirage.db paths --function "main"
mirage --db .magellan/mirage.db cfg --function "process"
mirage --db .magellan/mirage.db cycles
mirage --db .magellan/mirage.db docs --kind wiki

Backends

Mirage supports Magellan's database formats:

Backend File Extension Feature Flag Status
SQLite .db backend-sqlite Default
Geometric .geo backend-geometric Supported

Note: The SQLite backend is now default. Install with:

# Default (SQLite)
cargo install mirage-analyzer

# Geometric backend only
cargo install mirage-analyzer --features backend-geometric --no-default-features

Requirements

  • Magellan 3.3.3+ / Schema v14 (or v11+ for basic CFG, v13+ for source documents)
  • Rust 1.70+ (for MIR parsing)
  • Magellan database (.db) created by magellan watch

Database Location: Default is .magellan/mirage.db (auto-discovered)

Documentation

License

GPL-3.0. See LICENSE.