Expand description
Api - External interface for RYO operations.
This module provides the main entry point for RYO operations. It orchestrates Intent → Mutation → Execution flow.
§Architecture
┌─────────────────────────────────────────────────────────────────┐
│ Api (Application Facade) │
│ ├── discover(...) → DiscoverResponse │
│ ├── suggest(...) → SuggestResponse │
│ ├── run(...) → RunResponse │
│ ├── graph_cascade(...) → CascadeResponse │
│ └── status() → StatusResponse │
└─────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ Internal Services (non-public) │
│ ├── DiscoverService │
│ ├── SuggestionEngine │
│ ├── GraphApi │
│ └── SpecService │
└─────────────────────────────────────────────────────────────────┘§Example
ⓘ
use ryo_app::{Api, DiscoverRequest};
// Create API from project path
let api = Api::from_path("/path/to/project")?;
// Discover symbols
let response = api.discover(DiscoverRequest {
pattern: "Config*".to_string(),
kind: None,
sort: None,
limit: Some(10),
})?;
for sym in response.results {
println!("{}: {}", sym.name, sym.path.display());
}Structs§
- Api
- Main API for RYO operations.
- Borrow
Analysis Request - Request for borrow analysis.
- Borrow
Analysis Response - Response from borrow analysis.
- Borrow
Status - Borrow status for a variable.
- Cascade
Request - Request for cascade analysis.
- Cascade
Response - Response from cascade analysis.
- Chain
Analysis Request - Request for chain analysis.
- Chain
Analysis Response - Response from chain analysis.
- Chain
Node Info - A node in the chain with depth information.
- Crate
Overview - A crate with its module tree.
- Design
Choice Info - A design choice option.
- Discover
Request - Request for symbol discovery.
- Discover
Response - Response from symbol discovery (tarpc-compatible, Bincode-safe).
- Discovered
Symbol - A discovered symbol (tarpc-compatible, Bincode-safe).
- Execute
Options - Options for execution.
- Execution
Result - Execution result from API.
- Execution
Status - Complete execution status combining code and detail.
- Flow
Analysis Request - Request for flow analysis.
- Flow
Analysis Response - Response from flow analysis.
- Graph
Summary Request - Request for code graph summary.
- Graph
Summary Response - Response from code graph summary.
- Literal
Match Result - A single literal match result.
- Literal
Search Request - Request for literal search.
- Literal
Search Response - Response from literal search.
- Lock
Acquisition - Lock acquisition info.
- Lock
Analysis Request - Request for lock analysis.
- Lock
Analysis Response - Response from lock analysis.
- Lock
Stats - Lock statistics.
- Lock
Suggestion Info - Lock suggestion.
- Overview
Request - Request for codebase overview.
- Overview
Response - Response from codebase overview.
- Overview
Stats - Symbol kind statistics.
- Overview
Symbol - A symbol with a count metric (ref_count or impl_count).
- Param
Info - Information about a pattern parameter.
- Pattern
Info - Information about a parameterized pattern.
- Ping
Response - Response from ping (health check with version).
- Query
Response - クエリレスポンス
- RunRequest
- Request for code transformation execution.
- RunResponse
- Response from code transformation execution.
- Ryoql
Request - Request for RyoQL query execution.
- Spec
Group Data - Group information.
- Spec
Info Data - Spec information.
- Spec
Lint Data - Lint result data.
- Spec
Lint Issue Data - Lint issue data.
- Spec
Relation Data - Spec relation.
- Spec
Request - Request for spec hierarchy query.
- Spec
Show Data - Full spec hierarchy data.
- Spec
Stats Data - Statistics.
- Status
Detail - Detailed information about the execution status.
- Status
Response - Response from status query.
- Suggest
Apply Request - Request to apply suggestions by ID.
- Suggest
Apply Response - Response from applying suggestions.
- Suggest
Choices Request - Request to get design choices for a suggestion.
- Suggest
Choices Response - Response with design choices for a suggestion.
- Suggest
Compare Request - Request to compare design choices.
- Suggest
Compare Response - Comparison result for choices.
- Suggest
Generate Request - Request to generate code from parameterized patterns.
- Suggest
Generate Response - Response from code generation.
- Suggest
Request - Request for code improvement suggestions.
- Suggest
Response - Response from suggestion engine.
- Suggest
Verify Request - Request to verify a suggestion before applying.
- Suggest
Verify Response - Response from verification.
- Suggestion
- A code improvement suggestion.
- Suggestion
Summary - Summary of suggestions.
- Type
Analysis Request - Request for type analysis.
- Type
Analysis Response - Response from type analysis.
- Type
Field Info - Field information for definition mode.
- Type
Impact Info - Type impact information.
- Type
Param Info - Parameter information for definition mode.
- Type
Usage Info - Type usage information.
- Type
Variant Info - Enum variant information for definition mode.
- VarInfo
- Variable information.
Enums§
- ApiError
- Error type for API operations.
- ApiError
Kind - Structured error type for API responses.
- Chain
Mode - Traversal mode for chain analysis.
- Flow
Analysis Mode - Analysis mode for data flow.
- Hook
Result - Result of a post-execution hook.
- Sort
Order - Sort order for discovery results.
- Spec
Query Kind - Spec query kinds.
- Spec
Response - Response from spec query.
- Status
Code - Status code for execution results, inspired by HTTP status codes.
- Type
Analysis Mode - Analysis mode for type relationships.
- Verify
Level - Verification level.
- View
Mode - 出力モード
Traits§
- Post
Execution Hook - Trait for post-execution hooks.
Type Aliases§
- ApiResult
- Result type for API operations.