Skip to main content

sz_orm_graph/
lib.rs

1//! # SZ-ORM Graph — Neo4j Graph Database Support
2//!
3//! Provides graph database connection, parameterized Cypher queries, typed result mapping, and declarative modeling capabilities.
4//! Does not modify existing sz-orm-core/sz-orm-sqlx APIs.
5//!
6//! ## Main Modules
7//!
8//! - [`connection`] — Bolt protocol connection and connection pool
9//! - [`query`] — Cypher query construction and execution
10//! - [`validator`] — Parameterized validation + SQL passthrough rejection
11//! - [`model`] — Declarative modeling
12//! - [`mapping`] — Typed result mapping
13//! - [`error`] — GraphError error type
14
15pub mod algorithm;
16pub mod community;
17pub mod connection;
18pub mod cypher_parser;
19pub mod engine;
20pub mod error;
21pub mod graph_stats;
22pub mod mapping;
23pub mod model;
24pub mod path_analysis;
25pub mod query;
26pub mod subgraph;
27pub mod validator;
28
29pub use algorithm::{DirectedGraph, NodeId, UndirectedGraph, Weight};
30pub use community::{
31    Community, CommunityDetectionResult, ConnectedComponentDetector, LabelPropagation,
32};
33pub use connection::{GraphConfig, GraphConnection, GraphPool, GraphPoolStatus};
34pub use cypher_parser::{CypherSubsetParser, NodePattern, ParsedQuery, RelPattern, ReturnItem};
35pub use engine::InMemoryGraphEngine;
36pub use error::GraphError;
37pub use graph_stats::{DegreeDistribution, GraphStats, GraphStatsCalculator};
38pub use mapping::{NodeMapper, RelationMapper, ResultMapper};
39pub use model::{
40    GraphNodeModel, GraphPropertyDef, GraphRelationModel, GraphValueType, RelationDirection,
41};
42pub use path_analysis::{PathAnalyzer, ReachabilityMatrix};
43pub use query::{
44    execute_query, CypherQuery, CypherQueryBuilder, GraphNode, GraphPath, GraphRelationship,
45    GraphResult,
46};
47pub use subgraph::{CommonSubgraphFinder, IsomorphismChecker, SubgraphMatcher};
48pub use validator::CypherValidator;