Expand description
gdeye - Static analysis library for GDScript (Godot 4.x)
This library provides comprehensive static analysis capabilities for GDScript, including parsing, symbol extraction, type inference, control flow analysis, and lint rule checking.
§Example
use gdeye::{AnalysisBuilder, Config};
use std::path::Path;
// Create analysis context for a Godot project
let analysis = AnalysisBuilder::new()
.project_root(Path::new("/path/to/godot/project"))
.build()
.expect("Failed to create analysis context");
// Analyze all GDScript files
let result = analysis.analyze_project().expect("Analysis failed");
// Process diagnostics
for file_result in result.files() {
for diagnostic in file_result.diagnostics() {
println!("{}:{}: {}", file_result.path().display(), diagnostic.line, diagnostic.message);
}
}Re-exports§
pub use analysis::analyze_source;pub use analysis::analyze_source_impl;pub use analysis::AnalysisBuilder;pub use analysis::AnalysisPipeline;pub use analysis::FileAnalysis;pub use analysis::ProjectAnalysis;pub use analysis::ProjectContext;pub use analysis::SingleFileAnalysis;pub use config::Config;pub use error::Error;pub use error::Result;pub use parser::ParsedFile;pub use rules::DiagLabel;pub use rules::Diagnostic;pub use rules::Fix;pub use rules::Rule;pub use rules::RuleContext;pub use rules::Severity;pub use rules::TextEdit;pub use symbols::FileSymbols;pub use symbols::FuncDecl;pub use symbols::ParamDecl;pub use symbols::SignalDecl;pub use symbols::VarDecl;pub use cache::AnalysisCache;pub use cache::CacheStats;pub use cache::CachedFile;pub use cache::CachedProjectData;pub use document::Document;pub use document::Position;pub use document::Range;pub use pipeline::process_file;pub use pipeline::process_files_parallel;pub use pipeline::process_source;pub use pipeline::ProcessedFile;pub use project_index::IndexedFile;pub use project_index::ProjectIndex;pub use symbol_index::SymbolAtResult;pub use symbol_index::SymbolDef;pub use symbol_index::SymbolId;pub use symbol_index::SymbolIndex;pub use symbol_index::SymbolKind;pub use symbol_index::SymbolRef;
Modules§
- analysis
- Unified analysis API for gdeye.
- cache
- Analysis cache for incremental compilation.
- call_
graph - Call graph construction and parameter type inference.
- cfg
- classdb
- classdb_
loader - config
- cross_
file_ usage - document
- Document representation with versioning and position mapping.
- error
- Error types for gdeye operations.
- fix
- flow
- fmt
- lsp
- Language Server Protocol implementation for GDScript.
- mcp
- Model Context Protocol (MCP) server for gdeye.
- parser
- pipeline
- Unified file processing pipeline for gdeye.
- project
- project_
index - Unified project index for file symbol storage.
- report
- rules
- scene
- symbol_
index - Symbol index for fast position-based lookups.
- symbols
- types
- util
Constants§
- VERSION
- Library version