MCPcopy Create free account
hub / github.com/GraphLite-AI/GraphLite / validate_query_structure

Function validate_query_structure

graphlite/src/ast/validator.rs:787–821  ·  view source on GitHub ↗

Validate query structure (required clauses, order)

(query: &Query, errors: &mut Vec<ValidationError>)

Source from the content-addressed store, hash-verified

785
786/// Validate query structure (required clauses, order)
787fn validate_query_structure(query: &Query, errors: &mut Vec<ValidationError>) {
788 match query {
789 Query::Basic(basic_query) => {
790 validate_basic_query_structure(basic_query, errors);
791 }
792 Query::SetOperation(set_op) => {
793 validate_query_structure(&set_op.left, errors);
794 validate_query_structure(&set_op.right, errors);
795 }
796 Query::Limited { query, .. } => {
797 validate_query_structure(query, errors);
798 }
799 Query::WithQuery(_) => {
800 // TODO: Implement WithQuery validation
801 }
802 Query::Let(_) => {
803 // TODO: Implement LET validation
804 }
805 Query::For(_) => {
806 // TODO: Implement FOR validation
807 }
808 Query::Filter(_) => {
809 // TODO: Implement FILTER validation
810 }
811 Query::Return(return_query) => {
812 validate_return_query_structure(return_query, errors);
813 }
814 Query::Unwind(_) => {
815 // TODO: Implement UNWIND validation
816 }
817 Query::MutationPipeline(_) => {
818 // TODO: Validate mutation pipeline structure
819 }
820 }
821}
822
823fn validate_basic_query_structure(query: &BasicQuery, errors: &mut Vec<ValidationError>) {
824 // Check for required MATCH clause

Callers 2

validate_queryFunction · 0.85
validate_subqueryFunction · 0.85

Tested by

no test coverage detected