From 3b6c69ca1e6b8d61a7ce8cda0b45e2d97dd1e4d1 Mon Sep 17 00:00:00 2001 From: Magnus Hallin <mhallin@fastmail.com> Date: Sun, 18 Sep 2016 20:59:38 +0200 Subject: [PATCH] Move executor to its own library --- src/{types/schema.rs => executor.rs} | 0 src/lib.rs | 7 +++++-- src/schema/model.rs | 2 +- src/schema/schema.rs | 2 +- src/tests/schema.rs | 2 +- src/types/base.rs | 2 +- src/types/containers.rs | 2 +- src/types/mod.rs | 3 --- src/types/pointers.rs | 2 +- src/types/scalars.rs | 2 +- src/validation/rules/overlapping_fields_can_be_merged.rs | 2 +- src/validation/test_harness.rs | 2 +- 12 files changed, 14 insertions(+), 14 deletions(-) rename src/{types/schema.rs => executor.rs} (100%) diff --git a/src/types/schema.rs b/src/executor.rs similarity index 100% rename from src/types/schema.rs rename to src/executor.rs diff --git a/src/lib.rs b/src/lib.rs index e2ec9493..e0c4f6f1 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -183,6 +183,7 @@ mod value; mod types; mod schema; pub mod validation; +mod executor; mod integrations; #[cfg(all(test, not(feature="expose-test-schema")))] mod tests; @@ -193,13 +194,15 @@ use std::collections::HashMap; use rustc_serialize::json::{ToJson, Json}; use parser::{parse_document_source, ParseError, Spanning, SourcePosition}; -use types::execute_validated_query; use validation::{RuleError, ValidatorContext, visit_all_rules}; pub use ast::{ToInputValue, FromInputValue, InputValue, Type, Selection}; pub use value::Value; pub use types::base::{Arguments, GraphQLType, TypeKind}; -pub use types::schema::{Executor, Registry, ExecutionResult, ExecutionError, FieldResult}; +pub use executor::{ + Executor, Registry, ExecutionResult, ExecutionError, FieldResult, + execute_validated_query, +}; pub use types::scalars::ID; pub use schema::model::RootNode; diff --git a/src/schema/model.rs b/src/schema/model.rs index 2248161c..cd37df2a 100644 --- a/src/schema/model.rs +++ b/src/schema/model.rs @@ -3,7 +3,7 @@ use std::marker::PhantomData; use std::fmt; use types::base::{GraphQLType}; -use types::schema::Registry; +use executor::Registry; use ast::Type; use schema::meta::{MetaType, ObjectMeta, PlaceholderMeta, UnionMeta, InterfaceMeta, Argument}; diff --git a/src/schema/schema.rs b/src/schema/schema.rs index 2a5e0160..34fca9ca 100644 --- a/src/schema/schema.rs +++ b/src/schema/schema.rs @@ -1,7 +1,7 @@ use rustc_serialize::json::ToJson; use types::base::{GraphQLType, Arguments, TypeKind}; -use types::schema::{Executor, Registry, FieldResult, ExecutionResult}; +use executor::{Executor, Registry, FieldResult, ExecutionResult}; use schema::meta::{MetaType, ObjectMeta, EnumMeta, InputObjectMeta, UnionMeta, InterfaceMeta, Field, Argument, EnumValue}; diff --git a/src/tests/schema.rs b/src/tests/schema.rs index 3793cabd..210c19e2 100644 --- a/src/tests/schema.rs +++ b/src/tests/schema.rs @@ -1,4 +1,4 @@ -use types::schema::FieldResult; +use executor::FieldResult; use tests::model::{Character, Human, Droid, Database, Episode}; graphql_enum!(Episode { diff --git a/src/types/base.rs b/src/types/base.rs index 79e4a948..af40e608 100644 --- a/src/types/base.rs +++ b/src/types/base.rs @@ -4,7 +4,7 @@ use ast::{InputValue, Selection, Directive, FromInputValue}; use value::Value; use schema::meta::{Argument, MetaType}; -use types::schema::{Executor, Registry, ExecutionResult}; +use executor::{Executor, Registry, ExecutionResult}; use parser::Spanning; /// GraphQL type kind diff --git a/src/types/containers.rs b/src/types/containers.rs index 92d56e78..744d06e8 100644 --- a/src/types/containers.rs +++ b/src/types/containers.rs @@ -2,7 +2,7 @@ use ast::{InputValue, ToInputValue, FromInputValue, Selection}; use value::Value; use schema::meta::MetaType; -use types::schema::{Executor, Registry}; +use executor::{Executor, Registry}; use types::base::{GraphQLType}; impl<T, CtxT> GraphQLType<CtxT> for Option<T> where T: GraphQLType<CtxT> { diff --git a/src/types/mod.rs b/src/types/mod.rs index 568a6150..db97e46d 100644 --- a/src/types/mod.rs +++ b/src/types/mod.rs @@ -1,8 +1,5 @@ pub mod base; -pub mod schema; pub mod scalars; pub mod pointers; pub mod containers; pub mod utilities; - -pub use self::schema::execute_validated_query; diff --git a/src/types/pointers.rs b/src/types/pointers.rs index 63f65b70..6882d5ca 100644 --- a/src/types/pointers.rs +++ b/src/types/pointers.rs @@ -2,7 +2,7 @@ use ast::{Selection, InputValue, ToInputValue, FromInputValue}; use value::Value; use schema::meta::MetaType; -use types::schema::{Executor, Registry, ExecutionResult}; +use executor::{Executor, Registry, ExecutionResult}; use types::base::{Arguments, GraphQLType}; impl<T, CtxT> GraphQLType<CtxT> for Box<T> where T: GraphQLType<CtxT> { diff --git a/src/types/scalars.rs b/src/types/scalars.rs index 4f7b2074..ba1a2d6e 100644 --- a/src/types/scalars.rs +++ b/src/types/scalars.rs @@ -3,7 +3,7 @@ use value::Value; use schema::meta::MetaType; -use types::schema::{Executor, Registry}; +use executor::{Executor, Registry}; use types::base::GraphQLType; /// An ID as defined by the GraphQL specification diff --git a/src/validation/rules/overlapping_fields_can_be_merged.rs b/src/validation/rules/overlapping_fields_can_be_merged.rs index 8aca41a0..88000c49 100644 --- a/src/validation/rules/overlapping_fields_can_be_merged.rs +++ b/src/validation/rules/overlapping_fields_can_be_merged.rs @@ -642,7 +642,7 @@ mod tests { use super::ConflictReasonMessage::*; use types::base::GraphQLType; - use types::schema::Registry; + use executor::Registry; use types::scalars::ID; use schema::meta::MetaType; diff --git a/src/validation/test_harness.rs b/src/validation/test_harness.rs index 77a5abd1..96277c17 100644 --- a/src/validation/test_harness.rs +++ b/src/validation/test_harness.rs @@ -1,7 +1,7 @@ use parser::parse_document_source; use ast::{FromInputValue, InputValue}; use types::base::GraphQLType; -use types::schema::Registry; +use executor::Registry; use types::scalars::ID; use schema::model::{DirectiveType, DirectiveLocation, RootNode}; use schema::meta::{EnumValue, MetaType};