Expand description
Top-level analysis API for .nautilus schema files.
This module exposes a stable public contract that editor tooling (LSP servers, CLI linters, etc.) can call without duplicating parsing or validation logic.
§Quick Start
ⓘ
use nautilus_schema::analysis::analyze;
let result = analyze(source);
for diag in &result.diagnostics {
println!("{:?} — {}", diag.severity, diag.message);
}
if let Some(ir) = &result.ir {
println!("{} models", ir.models.len());
}Re-exports§
pub use completion::completion;pub use completion::completion_with_analysis;pub use completion::CompletionItem;pub use completion::CompletionKind;pub use goto_definition::goto_definition;pub use goto_definition::goto_definition_with_analysis;pub use hover::config_field_hover;pub use hover::hover;pub use hover::hover_with_analysis;pub use hover::HoverInfo;pub use semantic_tokens::semantic_tokens;pub use semantic_tokens::SemanticKind;pub use semantic_tokens::SemanticToken;
Modules§
- completion
- Completion suggestions for
.nautilusschema files. - goto_
definition - Goto-definition support for
.nautilusschema files. - hover
- Hover documentation for
.nautilusschema files. - semantic_
tokens - Semantic token provider for
.nautilusschema files.
Structs§
- Analysis
Result - The result of a full analysis pass over a
.nautilussource string.
Functions§
- analyze
- Analyzes a
.nautilusschema source string end-to-end.