├── .gitattributes ├── .gitignore ├── .vscode ├── launch.json ├── settings.json └── tasks.json ├── GitVersion.yml ├── GraphZen.sln ├── GraphZen.sln.DotSettings ├── GraphZen.v3.ncrunchsolution ├── LICENSE ├── LICENSE-Community ├── NuGet.Config ├── README.md ├── api-website ├── _exported_templates │ └── default │ │ ├── ManagedReference.common.js │ │ ├── ManagedReference.extension.js │ │ ├── ManagedReference.html.primary.js │ │ ├── ManagedReference.html.primary.tmpl │ │ ├── RestApi.common.js │ │ ├── RestApi.extension.js │ │ ├── RestApi.html.primary.js │ │ ├── RestApi.html.primary.tmpl │ │ ├── UniversalReference.common.js │ │ ├── UniversalReference.extension.js │ │ ├── UniversalReference.html.primary.js │ │ ├── UniversalReference.html.primary.tmpl │ │ ├── common.js │ │ ├── conceptual.extension.js │ │ ├── conceptual.html.primary.js │ │ ├── conceptual.html.primary.tmpl │ │ ├── favicon.ico │ │ ├── fonts │ │ ├── glyphicons-halflings-regular.eot │ │ ├── glyphicons-halflings-regular.svg │ │ ├── glyphicons-halflings-regular.ttf │ │ ├── glyphicons-halflings-regular.woff │ │ └── glyphicons-halflings-regular.woff2 │ │ ├── layout │ │ └── _master.tmpl │ │ ├── logo.svg │ │ ├── partials │ │ ├── _affix.liquid │ │ ├── _breadcrumb.liquid │ │ ├── _footer.liquid │ │ ├── _head.liquid │ │ ├── _logo.liquid │ │ ├── _navbar.liquid │ │ ├── _scripts.liquid │ │ ├── _toc.liquid │ │ ├── affix.tmpl.partial │ │ ├── breadcrumb.tmpl.partial │ │ ├── class.header.tmpl.partial │ │ ├── class.tmpl.partial │ │ ├── classSubtitle.tmpl.partial │ │ ├── customMREFContent.tmpl.partial │ │ ├── dd-li.tmpl.partial │ │ ├── enum.tmpl.partial │ │ ├── footer.tmpl.partial │ │ ├── head.tmpl.partial │ │ ├── li.tmpl.partial │ │ ├── logo.tmpl.partial │ │ ├── namespace.tmpl.partial │ │ ├── namespaceSubtitle.tmpl.partial │ │ ├── navbar.tmpl.partial │ │ ├── rest.child.tmpl.partial │ │ ├── rest.tmpl.partial │ │ ├── scripts.tmpl.partial │ │ ├── searchResults.tmpl.partial │ │ ├── title.tmpl.partial │ │ ├── toc.tmpl.partial │ │ └── uref │ │ │ ├── class.header.tmpl.partial │ │ │ ├── class.tmpl.partial │ │ │ ├── enum.tmpl.partial │ │ │ └── parameters.tmpl.partial │ │ ├── search-stopwords.json │ │ ├── styles │ │ ├── docfx.css │ │ ├── docfx.js │ │ ├── docfx.vendor.css │ │ ├── docfx.vendor.js │ │ ├── lunr.js │ │ ├── lunr.min.js │ │ ├── main.css │ │ ├── main.js │ │ └── search-worker.js │ │ ├── toc.extension.js │ │ ├── toc.html.js │ │ ├── toc.html.tmpl │ │ └── token.json ├── _redirects ├── assets │ ├── docfx-custom.js │ ├── docfx.css │ ├── main-custom.css │ └── main-custom.js ├── custom-template │ ├── layout │ │ └── _master.tmpl │ └── partials │ │ ├── breadcrumb.tmpl.partial │ │ ├── footer.tmpl.partial │ │ ├── head.tmpl.partial │ │ ├── navbar.tmpl.partial │ │ ├── scripts.tmpl.partial │ │ └── styles.tmpl.partial ├── docfx-filter-config.yml ├── docfx.json ├── index.md ├── serve.json └── toc.yml ├── azure-pipelines.yml ├── build-scripts ├── parameters.cake └── paths.cake ├── build-tasks.cake ├── build.ps1 ├── examples └── SimpleBlog │ ├── FakeBlogData.cs │ ├── Models │ ├── Comment.cs │ ├── Mutation.cs │ ├── Post.cs │ └── Query.cs │ ├── Program.cs │ ├── Properties │ └── launchSettings.json │ ├── SimpleBlog.csproj │ ├── Startup.cs │ ├── appsettings.Development.json │ ├── appsettings.json │ └── wwwroot │ └── favicon.ico ├── gen.ps1 ├── global.json ├── src ├── Directory.Build.props ├── GraphZen.Abstractions │ ├── AssemblyAttributes.cs │ ├── GraphQLCanBeNullAttribute.cs │ ├── GraphQLDeprecatedAttribute.cs │ ├── GraphQLIgnoreAttribute.cs │ ├── GraphQLListItemCanBeNullAttribute.cs │ ├── GraphQLListItemNonNullAttribute.cs │ ├── GraphQLNameAttribute.cs │ ├── GraphQLNonNullAttribute.cs │ ├── GraphQLObjectAttribute.cs │ ├── GraphQLTypeAttribute.cs │ ├── GraphQLUnionAttribute.cs │ ├── GraphZen.Abstractions.csproj │ ├── IGraphQLDirective.cs │ ├── Infrastructure │ │ └── Check.cs │ └── LanguageModel │ │ └── DirectiveLocation.cs ├── GraphZen.AspNetCore.Playground │ ├── GraphZen.AspNetCore.Playground.csproj │ ├── Playground │ │ ├── CursorShape.cs │ │ ├── EditorTheme.cs │ │ ├── Internal │ │ │ ├── Files │ │ │ │ └── playground.html │ │ │ └── PlaygroundHtmlWriter.cs │ │ ├── PlaygroundOptions.cs │ │ ├── PlaygroundSettings.cs │ │ └── RequestCredentials.cs │ └── PlaygroundEndpointBuilderExtensions.cs ├── GraphZen.AspNetCore.Server │ ├── GraphZen.AspNetCore.Server.csproj │ ├── GraphZenApplicationBuilderExtensions.cs │ ├── GraphZenServiceCollectionExtensions.cs │ ├── Internal │ │ └── GraphQLServerRequest.cs │ └── PlaygroundApplicationBuilderExtensions.cs ├── GraphZen.AspNetCore │ └── GraphZen.AspNetCore.csproj ├── GraphZen.Client │ ├── GraphQLClient.cs │ ├── GraphQLError.cs │ ├── GraphQLRequest.cs │ ├── GraphQLResponse.cs │ ├── GraphZen.Client.csproj │ ├── IGraphQLClient.cs │ ├── Infrastructure │ │ └── GraphQLRequestExtensions.cs │ └── Internal │ │ └── GraphQLJsonSerializer.cs ├── GraphZen.DevCli │ ├── CodeGen │ │ ├── CodeGenHelpers.cs │ │ ├── CodeGenStringBuilderExtensions.cs │ │ └── CodeGenTasks.cs │ ├── GraphZen.DevCli.csproj │ └── Program.cs ├── GraphZen.Infrastructure │ ├── AssemblyAttributes.cs │ ├── GraphZen.Infrastructure.csproj │ ├── GraphZen.Infrastructure.csproj.DotSettings │ └── Infrastructure │ │ ├── AccessorExtensions.cs │ │ ├── DynamicDictionary.cs │ │ ├── Extensions │ │ ├── Newtonsoft │ │ │ └── JObjectExtensions.cs │ │ └── System │ │ │ ├── ConcurrentBagExtensions.cs │ │ │ ├── DictionaryExtensions.cs │ │ │ ├── EnumerableExtensions.cs │ │ │ ├── ExpressionExtensions.cs │ │ │ ├── StackExtensions.cs │ │ │ ├── StringExtensions.cs │ │ │ └── TaskExtensions.cs │ │ ├── IInfrastructure.cs │ │ ├── IInspectable.cs │ │ ├── InternalNumerics.cs │ │ ├── Json.cs │ │ ├── ResponsePath.cs │ │ ├── SpecScalarTypeNames.cs │ │ ├── StringUtils.cs │ │ └── ValueInspector.cs ├── GraphZen.LanguageModel │ ├── AssemblyAttributes.cs │ ├── DocumentValidator.cs │ ├── GraphQLException.cs │ ├── GraphQLServerError.cs │ ├── GraphZen.LanguageModel.csproj │ ├── GraphZen.LanguageModel.csproj.DotSettings │ ├── IDocumentValidator.cs │ └── LanguageModel │ │ ├── AssemblyAttributes.cs │ │ ├── Break.cs │ │ ├── ContinueAction.cs │ │ ├── GraphQLSyntaxVisitor.Generated.cs │ │ ├── GraphQLSyntaxVisitor.Generated.tt │ │ ├── GraphQLSyntaxVisitor.cs │ │ ├── GraphQLSyntaxWalker.cs │ │ ├── IParser.cs │ │ ├── IPrinter.cs │ │ ├── Internal │ │ ├── Grammar │ │ │ ├── DescriptionGrammar.cs │ │ │ ├── DirectiveDefinitionsGrammar.cs │ │ │ ├── DirectiveGrammar.cs │ │ │ ├── DirectiveLocationHelper.cs │ │ │ ├── DocumentGrammar.cs │ │ │ ├── EnumTypeDefinitionGrammar.cs │ │ │ ├── EnumTypeExtensionGrammar.cs │ │ │ ├── FieldGrammar.cs │ │ │ ├── FragmentGrammar.cs │ │ │ ├── Grammar.cs │ │ │ ├── InputObjectTypeExtensionGrammar.cs │ │ │ ├── InputObjectTypeGrammar.cs │ │ │ ├── InputTypeGrammar.cs │ │ │ ├── InputValuesGrammar.cs │ │ │ ├── InterfaceTypeDefinitionGrammar.cs │ │ │ ├── InterfaceTypeExtensionGrammar.cs │ │ │ ├── LexicalTokens.cs │ │ │ ├── ObjectTypeDefinitionGrammar.cs │ │ │ ├── ObjectTypeExtensionGrammar.cs │ │ │ ├── OperationDefinitionGrammar.cs │ │ │ ├── ScalarTypeExtensionGrammar.cs │ │ │ ├── ScalarTypeGrammar.cs │ │ │ ├── SchemaExtensionGrammar.cs │ │ │ ├── SchemaGrammar.cs │ │ │ ├── SelectionSetGrammar.cs │ │ │ ├── TypeExtensionGrammar.cs │ │ │ ├── TypeSystemDefinitionGrammar.cs │ │ │ ├── TypeSystemExtensionGrammar.cs │ │ │ ├── UnionTypeDefinitionGrammar.cs │ │ │ ├── UnionTypeExtensionGrammar.cs │ │ │ └── VariablesGrammar.cs │ │ ├── LanguageHelpers.cs │ │ ├── LanguageModelClrTypeExtensions.cs │ │ ├── NodeExtensions.cs │ │ ├── Parser.cs │ │ ├── Printer.cs │ │ ├── SpecScalarSyntaxNodes.cs │ │ ├── SuperPowerTokenizer.cs │ │ ├── SuperpowerParser.cs │ │ ├── TextSpanExtensions.cs │ │ └── TokenKind.cs │ │ ├── ParallelSyntaxWalker.cs │ │ ├── Skip.cs │ │ ├── Source.cs │ │ ├── SourceLocation.cs │ │ ├── Syntax │ │ ├── ArgumentSyntax.cs │ │ ├── ArgumentSyntaxExtensions.cs │ │ ├── BooleanValueSyntax.cs │ │ ├── BooleanValueSyntaxExtensions.cs │ │ ├── DefinitionSyntax.cs │ │ ├── DirectiveDefinitionSyntax.cs │ │ ├── DirectiveDefinitionSyntaxExtensions.cs │ │ ├── DirectiveSyntax.cs │ │ ├── DirectiveSyntaxExtensions.cs │ │ ├── DocumentSyntax.cs │ │ ├── DocumentSyntaxExtensions.cs │ │ ├── EnumTypeDefinitionSyntax.cs │ │ ├── EnumTypeDefinitionSyntaxExtensions.cs │ │ ├── EnumTypeExtensionSyntax.cs │ │ ├── EnumTypeExtensionSyntaxExtensions.cs │ │ ├── EnumValueDefinitionSyntax.cs │ │ ├── EnumValueDefinitionSyntaxExtensions.cs │ │ ├── EnumValueSyntax.cs │ │ ├── EnumValueSyntaxExtensions.cs │ │ ├── ExecutableDefinitionSyntax.cs │ │ ├── FieldDefinitionSyntax.cs │ │ ├── FieldDefinitionSyntaxExtensions.cs │ │ ├── FieldSyntax.cs │ │ ├── FieldSyntaxExtensions.cs │ │ ├── FloatValueSyntax.cs │ │ ├── FloatValueSyntaxExtensions.cs │ │ ├── FragmentDefinitionSyntax.cs │ │ ├── FragmentDefinitionSyntaxExtensions.cs │ │ ├── FragmentSpreadSyntax.cs │ │ ├── FragmentSpreadSyntaxExtensions.cs │ │ ├── IArgumentsNode.cs │ │ ├── IDescribedSyntax.cs │ │ ├── IDirectivesSyntax.cs │ │ ├── IFieldsNode.cs │ │ ├── IFragmentTypeConditionSyntax.cs │ │ ├── INamedSyntax.cs │ │ ├── ISyntaxNodeLocation.cs │ │ ├── InlineFragmentSyntax.cs │ │ ├── InlineFragmentSyntaxExtensions.cs │ │ ├── InputObjectTypeDefinitionSyntax.cs │ │ ├── InputObjectTypeDefinitionSyntaxExtensions.cs │ │ ├── InputObjectTypeExtensionSyntax.cs │ │ ├── InputObjectTypeExtensionSyntaxExtensions.cs │ │ ├── InputValueDefinitionSyntax.cs │ │ ├── InputValueDefinitionSyntaxExtensions.cs │ │ ├── IntValueSyntax.cs │ │ ├── IntValueSyntaxExtensions.cs │ │ ├── InterfaceTypeDefinitionSyntax.cs │ │ ├── InterfaceTypeDefinitionSyntaxExensions.cs │ │ ├── InterfaceTypeDefinitionSyntaxExtensions.cs │ │ ├── InterfaceTypeExtensionSyntax.cs │ │ ├── InterfaceTypeExtensionSyntaxExtensions.cs │ │ ├── ListTypeSyntax.cs │ │ ├── ListTypeSyntaxExtensions.cs │ │ ├── ListValueSyntax.cs │ │ ├── ListValueSyntaxExtensions.cs │ │ ├── NameSyntax.cs │ │ ├── NameSyntaxExtensions.cs │ │ ├── NamedSyntaxExtensions.cs │ │ ├── NamedTypeSyntax.cs │ │ ├── NamedTypeSyntaxExtensions.cs │ │ ├── NonNullTypeSyntax.cs │ │ ├── NonNullTypeSyntaxExtensions.cs │ │ ├── NullValueSyntax.cs │ │ ├── NullValueSyntaxExtensions.cs │ │ ├── NullableTypeSyntax.cs │ │ ├── ObjectFieldSyntax.cs │ │ ├── ObjectFieldSyntaxExtensions.cs │ │ ├── ObjectTypeDefinitionSyntax.cs │ │ ├── ObjectTypeDefinitionSyntaxExtensions.cs │ │ ├── ObjectTypeExtensionSyntax.cs │ │ ├── ObjectTypeExtensionSyntaxExtensions.cs │ │ ├── ObjectValueSyntax.cs │ │ ├── ObjectValueSyntaxExtensions.cs │ │ ├── OperationDefinitionSyntax.cs │ │ ├── OperationDefinitionSyntaxExtensions.cs │ │ ├── OperationType.cs │ │ ├── OperationTypeDefinitionSyntax.cs │ │ ├── OperationTypeDefinitionSyntaxExtensions.cs │ │ ├── PunctuatorSyntax.cs │ │ ├── PunctuatorSyntaxExtensions.cs │ │ ├── ScalarTypeDefinitionSyntax.cs │ │ ├── ScalarTypeDefinitionSyntaxExtensions.cs │ │ ├── ScalarTypeExtensionSyntax.cs │ │ ├── ScalarTypeExtensionSyntaxExtensions.cs │ │ ├── SchemaDefinitionSyntax.cs │ │ ├── SchemaDefinitionSyntaxExtensions.cs │ │ ├── SchemaExtensionSyntax.cs │ │ ├── SchemaExtensionSyntaxExtensions.cs │ │ ├── SelectionSetSyntax.cs │ │ ├── SelectionSetSyntaxExtensions.cs │ │ ├── SelectionSyntax.cs │ │ ├── StringValueSyntax.cs │ │ ├── StringValueSyntaxExtensions.cs │ │ ├── SyntaxFactory.cs │ │ ├── SyntaxLocation.cs │ │ ├── SyntaxNode.Generated.cs │ │ ├── SyntaxNode.Generated.tt │ │ ├── SyntaxNode.cs │ │ ├── SyntaxNodeExtensions.cs │ │ ├── TypeDefinitionSyntax.cs │ │ ├── TypeExtensionSyntax.cs │ │ ├── TypeSyntax.cs │ │ ├── TypeSystemDefinitionSyntax.cs │ │ ├── TypeSystemExtensionSyntax.cs │ │ ├── UnionTypeDefinitionSyntax.cs │ │ ├── UnionTypeDefinitonSyntaxExtensions.cs │ │ ├── UnionTypeExtensionSyntax.cs │ │ ├── UnionTypeExtensionSyntaxExtensions.cs │ │ ├── ValueSyntax.cs │ │ ├── VariableDefinitionSyntax.cs │ │ ├── VariableDefinitionSyntaxExtensions.cs │ │ ├── VariableSyntax.cs │ │ └── VariableSyntaxExtensions.cs │ │ ├── Validation │ │ ├── DocumentValidationContext.cs │ │ ├── DocumentValidationRuleVisitor.cs │ │ ├── DocumentValidationRules.cs │ │ ├── ParallelValidationVisitor.cs │ │ ├── Rules │ │ │ ├── EnumTypesMustBeWellDefined.cs │ │ │ ├── FieldArgsMustBeProperlynamed.cs │ │ │ ├── FieldArgumentsMustHaveInputTypes.cs │ │ │ ├── InputObjectFieldsMustHaveInputTypes.cs │ │ │ ├── InputObjectsMustHaveFields.cs │ │ │ ├── InterfaceExtensionsShouldBeValid.cs │ │ │ ├── InterfaceFieldsMustHaveOutputTypes.cs │ │ │ ├── LoneSchemaDefinition.cs │ │ │ ├── ObjectFieldsMustHaveOutputTypes.cs │ │ │ ├── ObjectsCanOnlyImplementUniqueInterfaces.cs │ │ │ ├── ObjectsMustAdhereToInterfaceTheyImplement.cs │ │ │ ├── ObjectsMustHaveFields.cs │ │ │ ├── SchemaMustHaveRootObjectTypes.cs │ │ │ └── UnionTypesMustBeValid.cs │ │ ├── ValidationContext.cs │ │ ├── ValidationRule.cs │ │ └── ValidationRuleVisitor.cs │ │ ├── VisitAction.cs │ │ └── VistitorContext.cs ├── GraphZen.QueryEngine │ ├── AssemblyAttributes.cs │ ├── GraphZen.QueryEngine.csproj │ ├── QueryEngine │ │ ├── Execute.cs │ │ ├── ExecutionContext.cs │ │ ├── ExecutionFunctions.cs │ │ ├── ExecutionOptions.cs │ │ ├── ExecutionResult.cs │ │ ├── Executor.cs │ │ ├── IExecutionContext.cs │ │ ├── IExecutor.cs │ │ ├── Validation │ │ │ ├── IQueryValidator.cs │ │ │ ├── QueryValidationContext.cs │ │ │ ├── QueryValidationRuleVisitor.cs │ │ │ ├── QueryValidationRules.cs │ │ │ ├── QueryValidator.cs │ │ │ └── Rules │ │ │ │ ├── ExecutableDefinitions.cs │ │ │ │ ├── FieldsOnCorrectType.cs │ │ │ │ ├── FragmentsOnCompositeTypes.cs │ │ │ │ ├── InputDocumentNonConflictingVariableInference.cs │ │ │ │ ├── KnownArgumentNames.cs │ │ │ │ ├── KnownDirectives.cs │ │ │ │ ├── KnownFragmentNames.cs │ │ │ │ ├── KnownTypeNames.cs │ │ │ │ ├── LoneAnonymousOperation.cs │ │ │ │ ├── NoFragmentCycles.cs │ │ │ │ ├── NoUndefinedVariables.cs │ │ │ │ ├── NoUnusedFragments.cs │ │ │ │ ├── NoUnusedVariables.cs │ │ │ │ ├── OverlappingFieldsCanBeMerged.cs │ │ │ │ ├── PossibleFragmentSpreads.cs │ │ │ │ ├── ProvidedRequiredArguments.cs │ │ │ │ ├── ScalarLeafs.cs │ │ │ │ ├── SingleFieldSubscriptions.cs │ │ │ │ ├── UniqueArgumentNames.cs │ │ │ │ ├── UniqueDirectivesPerLocation.cs │ │ │ │ ├── UniqueFragmentNames.cs │ │ │ │ ├── UniqueInputFieldNames.cs │ │ │ │ ├── UniqueOperationNames.cs │ │ │ │ ├── UniqueVariableNames.cs │ │ │ │ ├── ValuesOfCorrectType.cs │ │ │ │ ├── VariablesAreInputTypes.cs │ │ │ │ └── VariablesInAllowedPosition.cs │ │ └── Values.cs │ └── Utilities │ │ ├── Helpers.cs │ │ ├── IntrospecttionQuery.cs │ │ └── TypeInfo.cs ├── GraphZen.TypeSystem │ ├── AssemblyAttributes.cs │ ├── GraphQLContext.cs │ ├── GraphQLContextOptions.cs │ ├── GraphQLContextOptionsBuilder.cs │ ├── GraphZen.TypeSystem.csproj │ ├── GraphZen.TypeSystem.csproj.DotSettings │ ├── Infrastructure │ │ ├── CoreOptionsExtension.cs │ │ ├── IGraphQLContextOptions.cs │ │ ├── IGraphQLContextOptionsBuilderInfrastructure.cs │ │ └── IGraphQLContextOptionsExtension.cs │ ├── Internal │ │ ├── InvalidTypeReferenceException.cs │ │ └── Maybe │ │ │ ├── Maybe.cs │ │ │ ├── MaybeJsonConverter.cs │ │ │ ├── None.cs │ │ │ └── Some.cs │ └── TypeSystem │ │ ├── AnnotatableMember.cs │ │ ├── AnnotatableMemberDefinition.cs │ │ ├── Argument.cs │ │ ├── ArgumentDefinition.cs │ │ ├── DefaultIDirectiveAnnotationSyntaxConverter.cs │ │ ├── DeprecatedBuilderExtensions.cs │ │ ├── Directive.cs │ │ ├── DirectiveAnnotation.cs │ │ ├── DirectiveBuilder.cs │ │ ├── DirectiveDefinition.cs │ │ ├── EnumType.cs │ │ ├── EnumTypeBuilder.cs │ │ ├── EnumTypeDefinition.cs │ │ ├── EnumValue.cs │ │ ├── EnumValueBuilder.cs │ │ ├── EnumValueDefinition.cs │ │ ├── Field.cs │ │ ├── FieldBuilder.cs │ │ ├── FieldDefinition.cs │ │ ├── FieldsDefinition.cs │ │ ├── GraphQLTypeExtensions.cs │ │ ├── GraphQLTypes.cs │ │ ├── IAnnotableBuilder.cs │ │ ├── IArgumentsDefinitionBuilder.cs │ │ ├── IDirectiveBuilder.cs │ │ ├── IEnumTypeBuilder.cs │ │ ├── IEnumValueBuilder.cs │ │ ├── IFieldBuilder.cs │ │ ├── IFieldsDefinitionBuilder.cs │ │ ├── IInputObjectTypeBuilder.cs │ │ ├── IInterfaceTypeBuilder.cs │ │ ├── IObjectTypeBuilder.cs │ │ ├── IScalarTypeBuilder.cs │ │ ├── ISchemaBuilder.cs │ │ ├── ISyntaxConverter.cs │ │ ├── IUnionTypeBuilder.cs │ │ ├── InputField.cs │ │ ├── InputFieldDefinition.cs │ │ ├── InputObjectType.cs │ │ ├── InputObjectTypeBuilder.cs │ │ ├── InputObjectTypeDefinition.cs │ │ ├── InputValue.cs │ │ ├── InputValueBuilder.cs │ │ ├── InputValueDefinition.cs │ │ ├── InterfaceType.cs │ │ ├── InterfaceTypeBuilder.cs │ │ ├── InterfaceTypeDefinition.cs │ │ ├── Internal │ │ ├── AnnotatableMemberDefinitionBuilder.cs │ │ ├── AstFromValue.cs │ │ ├── ClrTypeExtensions.cs │ │ ├── ConfigurationSource.cs │ │ ├── ConfigurationSourceExtensions.cs │ │ ├── InternalBuilderExtensions.cs │ │ ├── InternalDirectiveBuilder.cs │ │ ├── InternalEnumTypeBuilder.cs │ │ ├── InternalEnumValueBuilder.cs │ │ ├── InternalFieldBuilder.cs │ │ ├── InternalFieldsBuilder.cs │ │ ├── InternalInputObjectTypeBuilder.cs │ │ ├── InternalInputValueBuilder.cs │ │ ├── InternalInterfaceTypeBuilder.cs │ │ ├── InternalObjectTypeBuilder.cs │ │ ├── InternalObjectTypeExtensions.cs │ │ ├── InternalScalarTypeBuilder.cs │ │ ├── InternalSchemaBuilder.cs │ │ ├── InternalUnionTypeBuilder.cs │ │ ├── MemberDefinitionBuilder.cs │ │ ├── MemberInfoExtensions.cs │ │ ├── ParseResult.cs │ │ ├── PropertyInfoExtensions.cs │ │ ├── ResolveInfo.cs │ │ ├── ResponsePathHelpers.cs │ │ └── SDLSchemaConfigurator.cs │ │ ├── Introspection.cs │ │ ├── IsTypeOf.cs │ │ ├── LeafLiteralParser.cs │ │ ├── LeafSerializer.cs │ │ ├── LeafValueParser.cs │ │ ├── ListType.cs │ │ ├── Member.cs │ │ ├── MemberDefinition.cs │ │ ├── NamedType.cs │ │ ├── NamedTypeDefinition.cs │ │ ├── NonNullType.cs │ │ ├── ObjectType.cs │ │ ├── ObjectTypeBuilder.cs │ │ ├── ObjectTypeDefinition.cs │ │ ├── Resolver.cs │ │ ├── ScalarType.cs │ │ ├── ScalarTypeBuilder.cs │ │ ├── ScalarTypeDefinition.cs │ │ ├── Schema.cs │ │ ├── SchemaBuilder.cs │ │ ├── SchemaBuilderExtensions.cs │ │ ├── SchemaDefinition.cs │ │ ├── SchemaDefinitionExtensions.cs │ │ ├── SchemaExtensions.cs │ │ ├── SchemaPrinter.cs │ │ ├── SpecDirectives.cs │ │ ├── SpecScalars.cs │ │ ├── SyntaxConverter.cs │ │ ├── SyntaxHelpers.cs │ │ ├── Taxonomy │ │ ├── IAbstractType.cs │ │ ├── IAbstractTypeDefinition.cs │ │ ├── IAnnotatableDefinition.cs │ │ ├── IArgument.cs │ │ ├── IArgumentDefinition.cs │ │ ├── IArguments.cs │ │ ├── IArgumentsDefinition.cs │ │ ├── IClrInfo.cs │ │ ├── IClrType.cs │ │ ├── ICompositeType.cs │ │ ├── ICompositeTypeDefinition.cs │ │ ├── IDeprecation.cs │ │ ├── IDescription.cs │ │ ├── IDirective.cs │ │ ├── IDirectiveAnnotation.cs │ │ ├── IDirectiveAnnotations.cs │ │ ├── IDirectiveDefinition.cs │ │ ├── IDirectiveLocations.cs │ │ ├── IDirectiveLocationsDefinition.cs │ │ ├── IDirectives.cs │ │ ├── IDirectivesDefinition.cs │ │ ├── IEnumType.cs │ │ ├── IEnumTypeDefinition.cs │ │ ├── IEnumTypes.cs │ │ ├── IEnumTypesDefinition.cs │ │ ├── IEnumValue.cs │ │ ├── IEnumValueDefinition.cs │ │ ├── IEnumValues.cs │ │ ├── IEnumValuesDefinition.cs │ │ ├── IField.cs │ │ ├── IFieldDefinition.cs │ │ ├── IFields.cs │ │ ├── IFieldsDefinition.cs │ │ ├── IGraphQLType.cs │ │ ├── IGraphQLTypeReference.cs │ │ ├── IInputDefinition.cs │ │ ├── IInputField.cs │ │ ├── IInputFieldDefinition.cs │ │ ├── IInputFields.cs │ │ ├── IInputFieldsDefinition.cs │ │ ├── IInputObjectType.cs │ │ ├── IInputObjectTypeDefinition.cs │ │ ├── IInputObjectTypes.cs │ │ ├── IInputObjectTypesDefinition.cs │ │ ├── IInputValue.cs │ │ ├── IInputValueDefinition.cs │ │ ├── IInterfaceType.cs │ │ ├── IInterfaceTypeDefinition.cs │ │ ├── IInterfaceTypes.cs │ │ ├── IInterfaceTypesDefinition.cs │ │ ├── IInterfaces.cs │ │ ├── IInterfacesDefinition.cs │ │ ├── ILeafType.cs │ │ ├── ILeafTypeDefinition.cs │ │ ├── IListType.cs │ │ ├── ILiteralParser.cs │ │ ├── ILiteralParserDefinition.cs │ │ ├── IMember.cs │ │ ├── IMemberDefinition.cs │ │ ├── IMemberTypes.cs │ │ ├── IMemberTypesDefinition.cs │ │ ├── IMutableAbstractTypeDefinition.cs │ │ ├── IMutableAnnotatableDefinition.cs │ │ ├── IMutableArgumentDefinition.cs │ │ ├── IMutableArgumentsDefinition.cs │ │ ├── IMutableClrType.cs │ │ ├── IMutableDefinition.cs │ │ ├── IMutableDeprecation.cs │ │ ├── IMutableDescription.cs │ │ ├── IMutableDirectiveDefinition.cs │ │ ├── IMutableDirectiveLocationsDefinition.cs │ │ ├── IMutableDirectivesDefinition.cs │ │ ├── IMutableEnumTypeDefinition.cs │ │ ├── IMutableEnumTypesDefinition.cs │ │ ├── IMutableEnumValueDefinition.cs │ │ ├── IMutableEnumValuesDefinition.cs │ │ ├── IMutableFieldDefinition.cs │ │ ├── IMutableFieldsDefinition.cs │ │ ├── IMutableInputFieldDefinition.cs │ │ ├── IMutableInputFieldsDefinition.cs │ │ ├── IMutableInputObjectTypeDefinition.cs │ │ ├── IMutableInputObjectTypesDefinition.cs │ │ ├── IMutableInputValueDefinition.cs │ │ ├── IMutableInterfaceTypeDefinition.cs │ │ ├── IMutableInterfaceTypesDefinition.cs │ │ ├── IMutableInterfacesDefinition.cs │ │ ├── IMutableLiteralParserDefinition.cs │ │ ├── IMutableMemberTypesDefinition.cs │ │ ├── IMutableMutationTypeDefinition.cs │ │ ├── IMutableNamed.cs │ │ ├── IMutableNamedTypeDefinition.cs │ │ ├── IMutableObjectTypeDefinition.cs │ │ ├── IMutableObjectTypesDefinition.cs │ │ ├── IMutableQueryTypeDefinition.cs │ │ ├── IMutableScalarTypeDefinition.cs │ │ ├── IMutableScalarTypesDefinition.cs │ │ ├── IMutableSchemaDefinition.cs │ │ ├── IMutableSerializerDefinition.cs │ │ ├── IMutableSubscriptionTypeDefinition.cs │ │ ├── IMutableUnionTypeDefinition.cs │ │ ├── IMutableUnionTypesDefinition.cs │ │ ├── IMutableValueParserDefinition.cs │ │ ├── IMutationType.cs │ │ ├── IMutationTypeDefinition.cs │ │ ├── INamed.cs │ │ ├── INamedType.cs │ │ ├── INamedTypeDefinition.cs │ │ ├── INamedTypeReference.cs │ │ ├── INonNullType.cs │ │ ├── INullableType.cs │ │ ├── IObjectType.cs │ │ ├── IObjectTypeDefinition.cs │ │ ├── IObjectTypes.cs │ │ ├── IObjectTypesDefinition.cs │ │ ├── IOutputDefinition.cs │ │ ├── IQueryType.cs │ │ ├── IQueryTypeDefinition.cs │ │ ├── IScalarType.cs │ │ ├── IScalarTypeDefinition.cs │ │ ├── IScalarTypes.cs │ │ ├── IScalarTypesDefinition.cs │ │ ├── ISchema.cs │ │ ├── ISchemaDefinition.cs │ │ ├── ISerializer.cs │ │ ├── ISerializerDefinition.cs │ │ ├── ISubscriptionType.cs │ │ ├── ISubscriptionTypeDefinition.cs │ │ ├── ISyntaxConvertable.cs │ │ ├── IUnionType.cs │ │ ├── IUnionTypeDefinition.cs │ │ ├── IUnionTypes.cs │ │ ├── IUnionTypesDefinition.cs │ │ ├── IValueParser.cs │ │ ├── IValueParserDefinition.cs │ │ ├── IWrappingNullableType.cs │ │ └── IWrappingType.cs │ │ ├── TypeComparators.cs │ │ ├── TypeIdentity.cs │ │ ├── TypeKind.cs │ │ ├── TypeKindHelpers.cs │ │ ├── TypeReference.cs │ │ ├── TypeResolver.cs │ │ ├── UnionType.cs │ │ ├── UnionTypeBuilder.cs │ │ └── UnionTypeDefinition.cs ├── GraphZen │ ├── GraphZen.csproj │ └── GraphZen.csproj.DotSettings ├── Linked │ └── TypeSystem │ │ └── TypeSystemAccessors.Generated.cs └── Shared │ ├── DictionaryContainerCodeGenerator.cs │ ├── DictionaryExtensions.cs │ ├── JetBrainsAnnotations.cs │ └── KeyValuePairExtensions.cs ├── test ├── Directory.Build.props ├── GraphZen.Abstractions.Tests │ ├── GraphZen.Abstractions.Tests.csproj │ └── UnitTest1.cs ├── GraphZen.AspNetCore.Playground.IntegrationTests │ ├── GraphZen.AspNetCore.Playground.IntegrationTests.csproj │ ├── GraphZen.AspNetCore.Playground.IntegrationTests.v3.ncrunchproject │ └── PlaygroundEndpointBuilderExtensionIntegrationTests.cs ├── GraphZen.AspNetCore.Playground.Tests │ ├── GraphZen.AspNetCore.Playground.Tests.csproj │ └── PlaygroundHtmlWriterTests.cs ├── GraphZen.AspNetCore.Server.FunctionalTests │ └── GraphZen.AspNetCore.Server.FunctionalTests.csproj ├── GraphZen.AspNetCore.Server.IntegrationTests │ ├── GraphZen.AspNetCore.Server.IntegrationTests.csproj │ └── GraphZen.AspNetCore.Server.IntegrationTests.v3.ncrunchproject ├── GraphZen.AspNetCore.Server.Tests │ ├── ApplicationBuilderExtensionsTests.cs │ ├── GraphZen.AspNetCore.Server.Tests.csproj │ └── ServiceCollectionExtensionTests.cs ├── GraphZen.Client.FunctionalTests │ └── GraphZen.Client.FunctionalTests.csproj ├── GraphZen.Client.IntegrationTests │ ├── GraphQLRequestIntegrationTests.cs │ ├── GraphZen.Client.IntegrationTests.csproj │ └── GraphZen.Client.IntegrationTests.v3.ncrunchproject ├── GraphZen.Client.Tests │ ├── GraphQLRequestToHttpRequestTests.cs │ ├── GraphZen.Client.Tests.csproj │ └── Internal │ │ └── GraphQLSerializerTests.cs ├── GraphZen.Infrastructure.Testing.Tests │ ├── Extensions │ │ ├── FluentAssertions │ │ │ ├── ReferenceTypeJsonEquivalencyAssertionsTests.cs │ │ │ └── StringAssertionExtensionsTests.cs │ │ ├── Newtonsoft │ │ │ └── JTokenSortingExtensionsTests.cs │ │ ├── Superpower │ │ │ └── SuperpowerTestExtensionsTests.cs │ │ └── System │ │ │ ├── EnumerableTestExtensionsTests.cs │ │ │ ├── JsonDifferTests.cs │ │ │ ├── ResultComparisonOptionsTests.cs │ │ │ ├── StringDifferTests.cs │ │ │ └── StringTestExtensionTests.cs │ ├── GraphZen.Infrastructure.Testing.Tests.csproj │ └── GraphZen.Infrastructure.Testing.Tests.csproj.DotSettings ├── GraphZen.Infrastructure.Testing │ ├── .editorconfig │ ├── Extensions │ │ ├── FluentAssertions │ │ │ ├── ReferenceTypeJsonEquivalencyAssertionsExtensions.cs │ │ │ └── StringAssertionExtensions.cs │ │ ├── Newtonsoft │ │ │ └── JTokenSortingExtensions.cs │ │ ├── Superpower │ │ │ └── SuperpowerTestExtensions.cs │ │ └── System │ │ │ ├── EnumerableTestExtensions.cs │ │ │ ├── StringDiffExtensions.cs │ │ │ ├── StringDiffOptions.cs │ │ │ └── StringDisplayExtensions.cs │ ├── GraphZen.Infrastructure.Testing.csproj │ ├── GraphZen.Infrastructure.Testing.csproj.DotSettings │ ├── JsonDiffOptions.cs │ ├── JsonDiffer.cs │ ├── NamedCollection.cs │ ├── TestDataExtensions.cs │ ├── TestDataFixtureRunner.cs │ └── TestHelpers.cs ├── GraphZen.LanguageModel.FunctionalTests │ └── GraphZen.LanguageModel.FunctionalTests.csproj ├── GraphZen.LanguageModel.IntegrationTests │ └── GraphZen.LanguageModel.IntegrationTests.csproj ├── GraphZen.LanguageModel.Tests │ ├── GraphZen.LanguageModel.Tests.csproj │ └── Internal │ │ └── Grammar │ │ └── DirectiveLocationExtensionTests.cs ├── GraphZen.QueryEngine.FunctionalTests │ └── GraphZen.QueryEngine.FunctionalTests.csproj ├── GraphZen.QueryEngine.Tests │ └── GraphZen.QueryEngine.Tests.csproj ├── GraphZen.Tests │ ├── Error │ │ └── GraphQLErrorTests.cs │ ├── FixIndentTests.cs │ ├── GraphZen.Tests.csproj │ ├── GraphZen.Tests.csproj.DotSettings │ ├── Infrastructure │ │ ├── Extensions │ │ │ ├── ClrTypeExtensionTests.cs │ │ │ └── StringExtensionTests.cs │ │ └── StringUtilsTests │ │ │ ├── QuotedOrListTests.cs │ │ │ └── SuggestionListTests.cs │ ├── Internal │ │ └── GetGraphQLFieldNameTests.cs │ ├── LanguageModel │ │ ├── BlockStringPrinterTests.cs │ │ ├── BlockStringValueTests.cs │ │ ├── Internal │ │ │ ├── GraphQLNameTests.cs │ │ │ └── Parser │ │ │ │ ├── ArgumentsParserTests.cs │ │ │ │ ├── DirectiveDefinitionParsingTests.cs │ │ │ │ ├── DirectiveParserTests.cs │ │ │ │ ├── DocumentParserTests.cs │ │ │ │ ├── EnumTypeDefinitionParsingTests.cs │ │ │ │ ├── EnumTypeExtensionParserTests.cs │ │ │ │ ├── FieldParserTests.cs │ │ │ │ ├── FragmentDefinitionParsingTests.cs │ │ │ │ ├── FragmentParserTests.cs │ │ │ │ ├── InputObjectTypeDefinitionParsingTests.cs │ │ │ │ ├── InputObjectTypeExtensionParsingTests.cs │ │ │ │ ├── InputTypeParserTests.cs │ │ │ │ ├── InputValueParserTests.cs │ │ │ │ ├── InterfaceTypeDefinitionParsingTests.cs │ │ │ │ ├── InterfaceTypeExtensionParsingTests.cs │ │ │ │ ├── KitchenSinkTests.cs │ │ │ │ ├── ObjectTypeDefinitionParsingTests.cs │ │ │ │ ├── ObjectTypeExtensionParsingTests.cs │ │ │ │ ├── OperationDefinitionParsingTests.cs │ │ │ │ ├── QueryDocumentParserTests.cs │ │ │ │ ├── ScalarTypeDefinitionParsingTests.cs │ │ │ │ ├── ScalarTypeExtensionParsingTests.cs │ │ │ │ ├── SchemaDefinitionParsingTests.cs │ │ │ │ ├── SchemaTypeExtensionParsingTests.cs │ │ │ │ ├── SelectionSetParserTests.cs │ │ │ │ ├── UnionTypeDefnitionParsingTests.cs │ │ │ │ ├── UnionTypeExtensionParsingTests.cs │ │ │ │ └── VariableParserTests.cs │ │ ├── ParserTestBase.cs │ │ ├── ParserTests.cs │ │ ├── PunctuatorsSpec.cs │ │ ├── VisitorTests.cs │ │ ├── kitchen-sink-temp.graphql │ │ ├── kitchen-sink.graphql │ │ └── schema-kitchen-sink.graphql │ ├── QueryEngine │ │ ├── AbstractTests.cs │ │ ├── DirectivesTests.cs │ │ ├── ExecutorHarness.cs │ │ ├── ExecutorTests.cs │ │ ├── MutationsTests.cs │ │ ├── UnionInterfaceTests.cs │ │ └── Variables │ │ │ ├── ArgumentDefaultValuesTests.cs │ │ │ ├── CustomEnumValuesTests.cs │ │ │ ├── ListsAndNullabilityTests.cs │ │ │ ├── NonNullableScalarsTests.cs │ │ │ ├── NullableScalarsTests.cs │ │ │ ├── UsingInlineStructs.cs │ │ │ ├── UsingVariables.cs │ │ │ ├── VariablesTests.cs │ │ │ └── VariablesTestsGraphQLContext.cs │ ├── QueryEngineTestHelpers.cs │ ├── StarWars │ │ ├── StarWarsCodeSchemaComparisonTests.cs │ │ ├── StarWarsIntrospectionTest.cs │ │ ├── StarWarsQueryTest.cs │ │ └── StarWarsSchemaAndData.cs │ ├── TypeSystem │ │ └── IntrospectionTests │ │ │ ├── IntrospectionTests.cs │ │ │ └── introspection-expected-result.json │ ├── Utilities │ │ ├── AstFromValueTests.cs │ │ └── SDLSchemaConfiguratorTests.cs │ └── Validation │ │ └── Rules │ │ ├── EnumTypesMustBeWellDefinedTests.cs │ │ ├── ExecutableDefinitionsTests.cs │ │ ├── ExpectedError.cs │ │ ├── FieldArgsMustBeProperlynamedTests.cs │ │ ├── FieldArgumentsMustHaveInputTypesTests.cs │ │ ├── FieldsOnCorrectTypeTests.cs │ │ ├── FragmentsOnCompositeTypesTests.cs │ │ ├── InputDocumentNonConflictingVariableInferenceTests.cs │ │ ├── InputObjectFieldsMustHaveInputTypesTests.cs │ │ ├── InputObjectsMustHaveFieldsTests.cs │ │ ├── InterfaceExtensionsShouldBeValidTests.cs │ │ ├── InterfaceFieldsMustHaveOutputTypesTests.cs │ │ ├── KnownArgumentNamesTests.cs │ │ ├── KnownDirectivesTests.cs │ │ ├── KnownFragmentNamesTests.cs │ │ ├── KnownTypeNamesTests.cs │ │ ├── LoneAnonymousOperationTests.cs │ │ ├── LoneSchemaDefinitionTests.cs │ │ ├── NoFragmentCyclesTests.cs │ │ ├── NoUndefinedVariablesTests.cs │ │ ├── NoUnusedFragmentsTests.cs │ │ ├── NoUnusedVariablesTests.cs │ │ ├── ObjectFieldsMustHaveOutputTypesTests.cs │ │ ├── ObjectsCanOnlyImplementUniqueInterfacesTests.cs │ │ ├── ObjectsMustAdhereToInterfaceTheyImplementTests.cs │ │ ├── ObjectsMustHaveFieldsTests.cs │ │ ├── OverlappingFieldsCanBeMergedTests.cs │ │ ├── PossibleFragmentSpreadsTests.cs │ │ ├── ProvidedRequiredArgumentsTests.cs │ │ ├── SDLValidationHelpers.cs │ │ ├── ScalarLeafsTests.cs │ │ ├── SchemaMustHaveRootObjectTypesTests.cs │ │ ├── SingleFieldSubscriptionsTests.cs │ │ ├── UnionTypesMustBeValidTests.cs │ │ ├── UniqueArgumentNamesTests.cs │ │ ├── UniqueDirectivesPerLocationTests.cs │ │ ├── UniqueFragmentNamesTests.cs │ │ ├── UniqueInputFieldNamesTests.cs │ │ ├── UniqueOperationNamesTests.cs │ │ ├── UniqueVariableNamesTests.cs │ │ ├── ValidationRuleHarness.cs │ │ ├── ValuesOfCorrectTypeTests.cs │ │ ├── VariablesAreInputTypesTests.cs │ │ └── VariablesInAllowedPositionTests.cs ├── GraphZen.TypeSystem.FunctionalTests │ ├── Directives │ │ └── DirectiveCreationTests.cs │ ├── GraphZen.TypeSystem.FunctionalTests.csproj │ └── Objects │ │ ├── DirectiveAnnotations │ │ └── ObjectDirectiveAnnotationFunctionalTests.cs │ │ ├── Fields │ │ └── ObjectFieldBuilderTypeFunctionalTests.cs │ │ └── ObjectTypeCreationTests.cs └── GraphZen.TypeSystem.Tests │ ├── ClrTypeUtils.cs │ ├── Configuration │ ├── CollectionConventionConfigurationTests.cs │ ├── CollectionExplicitConfigurationTests.cs │ ├── ConfigurationFixtures.cs │ ├── Infrastructure │ │ ├── CollectionConventionContext.cs │ │ ├── ConfigurationFixture.cs │ │ ├── ConfigurationFixturesTests.cs │ │ ├── DirectiveAnnotationsConfigurationFixture.cs │ │ ├── ICollectionConfigurationFixture.cs │ │ ├── ICollectionConventionConfigurationFixture.cs │ │ ├── ICollectionExplicitConfigurationFixture.cs │ │ ├── IConfigurationFixture.cs │ │ ├── ILeafConfigurationFixture.cs │ │ ├── ILeafConventionConfigurationFixture.cs │ │ ├── ILeafExplicitConfigurationFixture.cs │ │ ├── LeafConventionContext.cs │ │ └── NamedCollectionConfigurationFixture.cs │ ├── LeafConventionConfigurationTests.cs │ ├── LeafElementConfigurationFixture.cs │ ├── LeafExplicitConfigurationTests.cs │ └── Schema │ │ ├── Directives │ │ ├── Schema_Directives.cs │ │ ├── Schema_Directives_Explicit.cs │ │ └── Schema_Directives_ViaObjectClrPropertyAttribute.cs │ │ ├── Enums │ │ ├── ClrType │ │ │ └── EnumClrTypeConfigurationTests.cs │ │ ├── Description │ │ │ ├── Enum_Description.cs │ │ │ ├── Enum_Explicit_Description.cs │ │ │ └── Enum_ViaClrEnum_Description.cs │ │ ├── EnumValues │ │ │ ├── Description │ │ │ │ ├── EnumValue_Description.cs │ │ │ │ ├── EnumValue_Explicit_Description.cs │ │ │ │ └── EnumValue_ViaClrEnumValue_Description.cs │ │ │ ├── Enum_Values.cs │ │ │ ├── Enum_Values_Explicit.cs │ │ │ └── Enum_Values_ViaClrEnumValues.cs │ │ ├── Schema_Enums.cs │ │ ├── Schema_Enums_Explicit.cs │ │ └── Schema_Enums_ViaClrEnums.cs │ │ ├── InputObjects │ │ ├── ClrType │ │ │ └── InputObjectClrTypeConfigurationTests.cs │ │ ├── Description │ │ │ ├── InputObject_Description.cs │ │ │ ├── InputObject_Explicit_Description.cs │ │ │ └── InputObject_ViaClrClass_Description.cs │ │ ├── Fields │ │ │ ├── Description │ │ │ │ ├── InputObject_Field_Description.cs │ │ │ │ ├── InputObject_Field_Explicit_Description.cs │ │ │ │ └── InputObject_Field_ViaClrProperty_Description.cs │ │ │ ├── InputObject_Fields.cs │ │ │ ├── InputObject_Fields_Explicit.cs │ │ │ └── InputObject_Fields_ViaClrProperties.cs │ │ ├── Schema_InputObjects.cs │ │ ├── Schema_InputObjects_Explicit.cs │ │ └── Schema_InputObjects_ViaClrClasses.cs │ │ ├── Interfaces │ │ ├── ClrType │ │ │ └── InterfaceClrTypeConfigurationTests.cs │ │ ├── Description │ │ │ ├── Interface_Description.cs │ │ │ ├── Interface_Explicit_Description.cs │ │ │ └── Interface_ViaClrClass_Description.cs │ │ ├── Fields │ │ │ ├── Arguments │ │ │ │ ├── Description │ │ │ │ │ ├── Interface_Field_Argument_Description.cs │ │ │ │ │ ├── Interface_Field_Argument_Explicit_Description.cs │ │ │ │ │ └── Interface_Field_Argument_ViaClrMethod_Description.cs │ │ │ │ ├── Interface_Field_Arguments.cs │ │ │ │ ├── Interface_Field_Arguments_Explicit.cs │ │ │ │ └── Interface_Field_Arguments_ViaClrMethodParameters.cs │ │ │ ├── Description │ │ │ │ ├── Interface_Field_Description.cs │ │ │ │ ├── Interface_Field_Explicit_Description.cs │ │ │ │ └── Interface_Field_ViaClrProperty_Description.cs │ │ │ ├── Interface_Fields.cs │ │ │ ├── Interface_Fields_Explicit.cs │ │ │ ├── Interface_Fields_ViaClrMethods.cs │ │ │ └── Interface_Fields_ViaClrProperties.cs │ │ ├── Schema_Interfaces.cs │ │ ├── Schema_Interfaces_Explicit.cs │ │ └── Schema_Interfaces_ViaClrInterfaces.cs │ │ ├── Objects │ │ ├── ClrType │ │ │ └── ObjectClrTypeConfigurationTests.cs │ │ ├── Description │ │ │ ├── Object_Description.cs │ │ │ ├── Object_Explicit_Description.cs │ │ │ └── Object_ViaClrClass_Description.cs │ │ ├── Fields │ │ │ ├── Arguments │ │ │ │ ├── Description │ │ │ │ │ ├── Object_Field_Argument_Description.cs │ │ │ │ │ ├── Object_Field_Argument_Explicit_Description.cs │ │ │ │ │ └── Object_Field_Argument_ViaClrMethod_Description.cs │ │ │ │ ├── Object_Field_Arguments.cs │ │ │ │ ├── Object_Field_Arguments_Explicit.cs │ │ │ │ └── Object_Field_Arguments_ViaClrMethodParameters.cs │ │ │ ├── Description │ │ │ │ ├── Object_Field_Description.cs │ │ │ │ ├── Object_Field_Explicit_Description.cs │ │ │ │ ├── Object_Field_ViaClrMethod_Description.cs │ │ │ │ └── Object_Field_ViaClrProperty_Description.cs │ │ │ ├── Object_Fields.cs │ │ │ ├── Object_Fields_Explicit.cs │ │ │ ├── Object_Fields_ViaClrMethods.cs │ │ │ └── Object_Fields_ViaClrProperties.cs │ │ ├── Interfaces │ │ │ ├── Object_Interfaces.cs │ │ │ ├── Object_Interfaces_Explicit.cs │ │ │ └── Object_Interfaces_ViaClrInterfaces.cs │ │ ├── Schema_Objects.cs │ │ ├── Schema_Objects_Explicit.cs │ │ └── Schema_Objects_ViaClrClasses.cs │ │ ├── Scalars │ │ ├── ClrType │ │ │ └── ScalarClrTypeConfigurationTests.cs │ │ ├── Description │ │ │ ├── Scalar_Description.cs │ │ │ ├── Scalar_Explicit_Description.cs │ │ │ └── Scalar_ViaClrClass_Description.cs │ │ ├── Schema_Scalars.cs │ │ └── Schema_Scalars_Explicit.cs │ │ └── Unions │ │ ├── ClrType │ │ └── UnionClrTypeConfigurationTests.cs │ │ ├── Description │ │ ├── Union_Description.cs │ │ ├── Union_Explicit_Description.cs │ │ ├── Union_ViaClrClass_Description.cs │ │ └── Union_ViaClrMarkerInterface_Description.cs │ │ ├── Schema_Unions.cs │ │ ├── Schema_Unions_Explicit.cs │ │ ├── Schema_Unions_ViaClassWithMarkerInterface.cs │ │ ├── Schema_Unions_ViaClrBaseClass.cs │ │ ├── Schema_Unions_ViaClrChildClass.cs │ │ └── Schema_Unions_ViaMarkerInterface.cs │ ├── CoreOptionsExtensionTests.cs │ ├── Definitions │ ├── BlogContext.cs │ ├── BlogExampleSchemaTests.cs │ ├── BlogMutationContext.cs │ ├── BlogSubscriptionContext.cs │ └── Builders │ │ ├── EnumTypeBuilderIdentityTests.cs │ │ ├── EnumTypeBuilderTests.cs │ │ ├── InputObjectTypeBuilderIdenitityTests.cs │ │ ├── InputTypeBuilderIdentityTests.cs │ │ ├── InterfaceTypeBuilderIdentityTests.cs │ │ ├── ObjectTypeBuilderIdentityTests.cs │ │ ├── ScalarTypeBuilderIdentityTests.cs │ │ ├── SchemaBuilderTests.cs │ │ ├── TypeBuilderIdentityTests.cs │ │ ├── TypeNodeClrTests.cs │ │ ├── TypeReferenceTests.cs │ │ └── UnionTypeBuilderIdenitityTests.cs │ ├── Discovery │ ├── TypeDiscoveryTests.cs │ ├── UnionTypeBaseClassConfigurationTests.cs │ ├── UnionTypeConventionDiscoveryTests.cs │ └── UnionTypeDataAnnotationDiscoveryTests.cs │ ├── GraphQLContextOptionsBuilderTests.cs │ ├── GraphQLContextOptionsTests.cs │ ├── GraphZen.TypeSystem.Tests.csproj │ ├── GraphZen.TypeSystem.Tests.csproj.DotSettings │ ├── GraphZen.TypeSystem.Tests.v3.ncrunchproject │ ├── PropertyInfoTests.cs │ ├── SchemaToSyntaxTests.cs │ ├── StringLiteral.cs │ ├── TaxonomyTests.cs │ └── TypePredicateTests.cs └── tools └── packages.config /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "search.exclude": { 3 | "api-website-artifacts": true 4 | }, 5 | "files.exclude": { 6 | "**/.classpath": true, 7 | "**/.project": true, 8 | "**/.settings": true, 9 | "**/.factorypath": true 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /.vscode/tasks.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "2.0.0", 3 | "tasks": [ 4 | { 5 | "label": "build", 6 | "command": "dotnet", 7 | "type": "process", 8 | "args": [ 9 | "build", 10 | "${workspaceFolder}/src/GraphZen.Tests/GraphZen.Tests.csproj" 11 | ], 12 | "problemMatcher": "$msCompile" 13 | } 14 | ] 15 | } -------------------------------------------------------------------------------- /GitVersion.yml: -------------------------------------------------------------------------------- 1 | branches: 2 | develop: 3 | tag: develop 4 | master: 5 | tag: pre 6 | ignore: 7 | sha: [] 8 | -------------------------------------------------------------------------------- /GraphZen.v3.ncrunchsolution: -------------------------------------------------------------------------------- 1 |  2 | 3 | True 4 | Optimised 5 | True 6 | 7 | -------------------------------------------------------------------------------- /NuGet.Config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /api-website/_exported_templates/default/ManagedReference.extension.js: -------------------------------------------------------------------------------- 1 | // Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information. 2 | 3 | /** 4 | * This method will be called at the start of exports.transform in ManagedReference.html.primary.js 5 | */ 6 | exports.preTransform = function (model) { 7 | return model; 8 | } 9 | 10 | /** 11 | * This method will be called at the end of exports.transform in ManagedReference.html.primary.js 12 | */ 13 | exports.postTransform = function (model) { 14 | return model; 15 | } -------------------------------------------------------------------------------- /api-website/_exported_templates/default/ManagedReference.html.primary.tmpl: -------------------------------------------------------------------------------- 1 | {{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} 2 | {{!master(layout/_master.tmpl)}} 3 | 4 | {{#isNamespace}} 5 | {{>partials/namespace}} 6 | {{/isNamespace}} 7 | {{#isClass}} 8 | {{>partials/class}} 9 | {{/isClass}} 10 | {{#isEnum}} 11 | {{>partials/enum}} 12 | {{/isEnum}} 13 | {{>partials/customMREFContent}} -------------------------------------------------------------------------------- /api-website/_exported_templates/default/RestApi.extension.js: -------------------------------------------------------------------------------- 1 | // Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information. 2 | 3 | /** 4 | * This method will be called at the start of exports.transform in RestApi.html.primary.js 5 | */ 6 | exports.preTransform = function (model) { 7 | return model; 8 | } 9 | 10 | /** 11 | * This method will be called at the end of exports.transform in RestApi.html.primary.js 12 | */ 13 | exports.postTransform = function (model) { 14 | return model; 15 | } -------------------------------------------------------------------------------- /api-website/_exported_templates/default/RestApi.html.primary.tmpl: -------------------------------------------------------------------------------- 1 | {{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} 2 | {{!master(layout/_master.tmpl)}} 3 | {{>partials/rest}} -------------------------------------------------------------------------------- /api-website/_exported_templates/default/UniversalReference.extension.js: -------------------------------------------------------------------------------- 1 | // Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information. 2 | 3 | /** 4 | * This method will be called at the start of exports.transform in UniversalReference.html.primary.js 5 | */ 6 | exports.preTransform = function (model) { 7 | return model; 8 | } 9 | 10 | /** 11 | * This method will be called at the end of exports.transform in UniversalReference.html.primary.js 12 | */ 13 | exports.postTransform = function (model) { 14 | return model; 15 | } -------------------------------------------------------------------------------- /api-website/_exported_templates/default/UniversalReference.html.primary.tmpl: -------------------------------------------------------------------------------- 1 | {{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} 2 | {{!master(layout/_master.tmpl)}} 3 | 4 | {{#isNamespace}} 5 | {{>partials/namespace}} 6 | {{/isNamespace}} 7 | {{#isClass}} 8 | {{>partials/uref/class}} 9 | {{/isClass}} 10 | {{#isEnum}} 11 | {{>partials/enum}} 12 | {{/isEnum}} 13 | -------------------------------------------------------------------------------- /api-website/_exported_templates/default/conceptual.extension.js: -------------------------------------------------------------------------------- 1 | // Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information. 2 | 3 | /** 4 | * This method will be called at the start of exports.transform in conceptual.html.primary.js 5 | */ 6 | exports.preTransform = function (model) { 7 | return model; 8 | } 9 | 10 | /** 11 | * This method will be called at the end of exports.transform in conceptual.html.primary.js 12 | */ 13 | exports.postTransform = function (model) { 14 | return model; 15 | } -------------------------------------------------------------------------------- /api-website/_exported_templates/default/conceptual.html.primary.tmpl: -------------------------------------------------------------------------------- 1 | {{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} 2 | {{!master(layout/_master.tmpl)}} 3 | {{{rawTitle}}} 4 | {{{conceptual}}} -------------------------------------------------------------------------------- /api-website/_exported_templates/default/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GraphZen/graphzen-dotnet/fdb9b5a7c326b53b13a35d87e086b8122a7833f4/api-website/_exported_templates/default/favicon.ico -------------------------------------------------------------------------------- /api-website/_exported_templates/default/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GraphZen/graphzen-dotnet/fdb9b5a7c326b53b13a35d87e086b8122a7833f4/api-website/_exported_templates/default/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /api-website/_exported_templates/default/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GraphZen/graphzen-dotnet/fdb9b5a7c326b53b13a35d87e086b8122a7833f4/api-website/_exported_templates/default/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /api-website/_exported_templates/default/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GraphZen/graphzen-dotnet/fdb9b5a7c326b53b13a35d87e086b8122a7833f4/api-website/_exported_templates/default/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /api-website/_exported_templates/default/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GraphZen/graphzen-dotnet/fdb9b5a7c326b53b13a35d87e086b8122a7833f4/api-website/_exported_templates/default/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /api-website/_exported_templates/default/partials/_breadcrumb.liquid: -------------------------------------------------------------------------------- 1 | {% comment -%}Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.{% endcomment -%} 2 | 9 | -------------------------------------------------------------------------------- /api-website/_exported_templates/default/partials/_footer.liquid: -------------------------------------------------------------------------------- 1 | {% comment -%}Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.{% endcomment -%} 2 | 17 | -------------------------------------------------------------------------------- /api-website/_exported_templates/default/partials/_logo.liquid: -------------------------------------------------------------------------------- 1 | {% comment -%}Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.{% endcomment -%} 2 | 3 | {%- if _appLogoPath -%} 4 | 5 | {%- else -%} 6 | 7 | {%- endif -%} 8 | 9 | -------------------------------------------------------------------------------- /api-website/_exported_templates/default/partials/_scripts.liquid: -------------------------------------------------------------------------------- 1 | {% comment -%}Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.{% endcomment -%} 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /api-website/_exported_templates/default/partials/_toc.liquid: -------------------------------------------------------------------------------- 1 | {% comment -%}Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.{% endcomment -%} 2 | 8 | -------------------------------------------------------------------------------- /api-website/_exported_templates/default/partials/breadcrumb.tmpl.partial: -------------------------------------------------------------------------------- 1 | {{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} 2 | 3 | 10 | -------------------------------------------------------------------------------- /api-website/_exported_templates/default/partials/customMREFContent.tmpl.partial: -------------------------------------------------------------------------------- 1 | {{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} 2 | {{!Add your own custom template for the content for ManagedReference here}} -------------------------------------------------------------------------------- /api-website/_exported_templates/default/partials/dd-li.tmpl.partial: -------------------------------------------------------------------------------- 1 | {{#items}} 2 |
  • {{name}}
  • 3 | {{/items}} 4 | -------------------------------------------------------------------------------- /api-website/_exported_templates/default/partials/footer.tmpl.partial: -------------------------------------------------------------------------------- 1 | {{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} 2 | 3 | 15 | -------------------------------------------------------------------------------- /api-website/_exported_templates/default/partials/logo.tmpl.partial: -------------------------------------------------------------------------------- 1 | {{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /api-website/_exported_templates/default/partials/namespaceSubtitle.tmpl.partial: -------------------------------------------------------------------------------- 1 | {{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} 2 | {{#inClass}} 3 | {{__global.classesInSubtitle}} 4 | {{/inClass}} 5 | {{#inStruct}} 6 | {{__global.structsInSubtitle}} 7 | {{/inStruct}} 8 | {{#inInterface}} 9 | {{__global.interfacesInSubtitle}} 10 | {{/inInterface}} 11 | {{#inEnum}} 12 | {{__global.enumsInSubtitle}} 13 | {{/inEnum}} 14 | {{#inDelegate}} 15 | {{__global.delegatesInSubtitle}} 16 | {{/inDelegate}} -------------------------------------------------------------------------------- /api-website/_exported_templates/default/partials/scripts.tmpl.partial: -------------------------------------------------------------------------------- 1 | {{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /api-website/_exported_templates/default/partials/searchResults.tmpl.partial: -------------------------------------------------------------------------------- 1 | {{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} 2 | 3 |
    4 |
    5 |
    6 |

    7 |
    8 | 9 |
    10 | -------------------------------------------------------------------------------- /api-website/_exported_templates/default/partials/toc.tmpl.partial: -------------------------------------------------------------------------------- 1 | {{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} 2 | 3 | 9 | -------------------------------------------------------------------------------- /api-website/_exported_templates/default/styles/main.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GraphZen/graphzen-dotnet/fdb9b5a7c326b53b13a35d87e086b8122a7833f4/api-website/_exported_templates/default/styles/main.css -------------------------------------------------------------------------------- /api-website/_exported_templates/default/styles/main.js: -------------------------------------------------------------------------------- 1 | // Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information. 2 | -------------------------------------------------------------------------------- /api-website/_exported_templates/default/toc.extension.js: -------------------------------------------------------------------------------- 1 | // Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information. 2 | 3 | /** 4 | * This method will be called at the start of exports.transform in toc.html.js 5 | */ 6 | exports.preTransform = function (model) { 7 | return model; 8 | } 9 | 10 | /** 11 | * This method will be called at the end of exports.transform in toc.html.js 12 | */ 13 | exports.postTransform = function (model) { 14 | return model; 15 | } -------------------------------------------------------------------------------- /api-website/_redirects: -------------------------------------------------------------------------------- 1 | https://graphzen-api.netlify.com/* https://api.graphzen.com/:splat 301! 2 | / /api/GraphZen.html -------------------------------------------------------------------------------- /api-website/assets/main-custom.js: -------------------------------------------------------------------------------- 1 | /* Hello world */ 2 | -------------------------------------------------------------------------------- /api-website/custom-template/partials/breadcrumb.tmpl.partial: -------------------------------------------------------------------------------- 1 | {{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} 2 | 3 | 10 | -------------------------------------------------------------------------------- /api-website/custom-template/partials/footer.tmpl.partial: -------------------------------------------------------------------------------- 1 | 13 | -------------------------------------------------------------------------------- /api-website/custom-template/partials/styles.tmpl.partial: -------------------------------------------------------------------------------- 1 | 2 | 6 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /api-website/docfx-filter-config.yml: -------------------------------------------------------------------------------- 1 | apiRules: 2 | - exclude: 3 | uidRegex: Internal 4 | type: Type 5 | - exclude: 6 | uidRegex: Infrastructure 7 | type: Type 8 | - exclude: 9 | uidRegex: Logging 10 | type: Type 11 | - exclude: 12 | uidRegex: ^System\.Object 13 | type: Member 14 | - exclude: 15 | uidRegex: ^System\.Attribute 16 | type: Member 17 | -------------------------------------------------------------------------------- /api-website/index.md: -------------------------------------------------------------------------------- 1 | Welcome to api docs 2 | -------------------------------------------------------------------------------- /api-website/serve.json: -------------------------------------------------------------------------------- 1 | { 2 | "redirects": [{ "source": "/", "destination": "/api/GraphZen.html" }] 3 | } 4 | -------------------------------------------------------------------------------- /api-website/toc.yml: -------------------------------------------------------------------------------- 1 | - name: API Reference 2 | href: obj/api/ 3 | - name: Documentation 4 | href: https://docs.graphzen.com 5 | -------------------------------------------------------------------------------- /examples/SimpleBlog/Models/Comment.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace SimpleBlog.Models 9 | { 10 | public class Comment 11 | { 12 | public int Id { get; set; } 13 | public int PostId { get; set; } 14 | public string Author { get; set; } 15 | public string Content { get; set; } 16 | } 17 | } -------------------------------------------------------------------------------- /examples/SimpleBlog/Models/Post.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.ComponentModel; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace SimpleBlog.Models 10 | { 11 | public class Post 12 | { 13 | public int Id { get; set; } 14 | 15 | [Description("some click-baity title")] 16 | public string Title { get; set; } 17 | 18 | public string Author { get; set; } 19 | public string Content { get; set; } 20 | } 21 | } -------------------------------------------------------------------------------- /examples/SimpleBlog/SimpleBlog.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | netcoreapp3.0 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /examples/SimpleBlog/appsettings.Development.json: -------------------------------------------------------------------------------- 1 | { 2 | "Logging": { 3 | "LogLevel": { 4 | "Default": "Debug", 5 | "System": "Information", 6 | "Microsoft": "Information" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /examples/SimpleBlog/appsettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "Logging": { 3 | "LogLevel": { 4 | "Default": "Warning" 5 | } 6 | }, 7 | "AllowedHosts": "*" 8 | } -------------------------------------------------------------------------------- /examples/SimpleBlog/wwwroot/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GraphZen/graphzen-dotnet/fdb9b5a7c326b53b13a35d87e086b8122a7833f4/examples/SimpleBlog/wwwroot/favicon.ico -------------------------------------------------------------------------------- /gen.ps1: -------------------------------------------------------------------------------- 1 | .\build.ps1 -target Gen -------------------------------------------------------------------------------- /global.json: -------------------------------------------------------------------------------- 1 | { 2 | "sdk": { 3 | "version": "3.0.100" 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /src/GraphZen.Abstractions/GraphQLCanBeNullAttribute.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen 10 | { 11 | [AttributeUsage(AttributeTargets.Property | AttributeTargets.Method | AttributeTargets.Parameter)] 12 | public class GraphQLCanBeNullAttribute : Attribute 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.Abstractions/GraphQLIgnoreAttribute.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen 10 | { 11 | [AttributeUsage(AttributeTargets.Property | AttributeTargets.Method | AttributeTargets.Class | 12 | AttributeTargets.Interface | AttributeTargets.Parameter | AttributeTargets.Enum | 13 | AttributeTargets.Field)] 14 | public class GraphQLIgnoreAttribute : Attribute 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.Abstractions/GraphQLListItemCanBeNullAttribute.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen 10 | { 11 | [AttributeUsage(AttributeTargets.Property | AttributeTargets.Method | AttributeTargets.Parameter)] 12 | public class GraphQLListItemCanBeNullAttribute : Attribute 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.Abstractions/GraphQLListItemNonNullAttribute.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen 10 | { 11 | [AttributeUsage(AttributeTargets.Property)] 12 | public class GraphQLListItemNonNullAttribute : Attribute 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.Abstractions/GraphQLNonNullAttribute.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen 10 | { 11 | [AttributeUsage(AttributeTargets.Property)] 12 | public class GraphQLNonNullAttribute : Attribute 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.Abstractions/GraphQLObjectAttribute.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen 10 | { 11 | [AttributeUsage(AttributeTargets.Class)] 12 | public class GraphQLObjectAttribute : Attribute 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.Abstractions/GraphQLTypeAttribute.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen 10 | { 11 | public class GraphQLTypeAttribute : Attribute 12 | { 13 | public GraphQLTypeAttribute(Type clrType) 14 | { 15 | ClrType = Check.NotNull(clrType, nameof(clrType)); 16 | } 17 | 18 | public Type ClrType { get; } 19 | } 20 | } -------------------------------------------------------------------------------- /src/GraphZen.Abstractions/GraphQLUnionAttribute.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen 10 | { 11 | [AttributeUsage(AttributeTargets.Interface)] 12 | public class GraphQLUnionAttribute : Attribute 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.Abstractions/GraphZen.Abstractions.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | netstandard2.1;netcoreapp3.0 5 | Lightweight package with minimal dependencies containing data annotations for code-first GraphQL API development 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /src/GraphZen.Abstractions/IGraphQLDirective.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using GraphZen.LanguageModel; 8 | using JetBrains.Annotations; 9 | 10 | namespace GraphZen 11 | { 12 | public interface IGraphQLDirective 13 | { 14 | IEnumerable GetDirectiveLocations(); 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.AspNetCore.Playground/Playground/CursorShape.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.Playground 9 | { 10 | public enum CursorShape 11 | { 12 | Line, 13 | Block, 14 | Underline 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.AspNetCore.Playground/Playground/EditorTheme.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.Playground 9 | { 10 | public enum EditorTheme 11 | { 12 | Dark, 13 | Light 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.AspNetCore.Playground/Playground/PlaygroundOptions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.Playground 9 | { 10 | public class PlaygroundOptions 11 | { 12 | public string? Endpoint { get; set; } 13 | public string? SubscriptionEndpoint { get; set; } 14 | public string? WorkspaceName { get; set; } 15 | public PlaygroundSettings Settings { get; set; } = new PlaygroundSettings(); 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.AspNetCore.Playground/Playground/RequestCredentials.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.Playground 9 | { 10 | public enum RequestCredentials 11 | { 12 | Omit, 13 | Include, 14 | SameOrigin 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.AspNetCore.Server/Internal/GraphQLServerRequest.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.Internal 10 | { 11 | internal class GraphQLServerRequest 12 | { 13 | public string? OperationName { get; set; } 14 | public string? Query { get; set; } 15 | public IDictionary? Variables { get; set; } 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.AspNetCore/GraphZen.AspNetCore.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | netcoreapp3.0 5 | GraphQL server and playground for ASP.NET Core 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /src/GraphZen.Client/GraphQLError.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen 9 | { 10 | public class GraphQLError 11 | { 12 | public GraphQLError(string message) 13 | { 14 | Check.NotNull(message, nameof(message)); 15 | Message = message; 16 | } 17 | 18 | public string Message { get; } 19 | } 20 | } -------------------------------------------------------------------------------- /src/GraphZen.Client/GraphQLRequest.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen 9 | { 10 | public class GraphQLRequest 11 | { 12 | public string? OperationName { get; set; } 13 | public string? Query { get; set; } 14 | public object? Variables { get; set; } 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.Client/GraphZen.Client.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | netcoreapp3.0 5 | GraphQL client for .NET 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /src/GraphZen.Client/IGraphQLClient.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using System.Threading; 6 | using System.Threading.Tasks; 7 | using GraphZen.Infrastructure; 8 | using JetBrains.Annotations; 9 | 10 | namespace GraphZen 11 | { 12 | public interface IGraphQLClient 13 | { 14 | Task SendAsync(GraphQLRequest request, CancellationToken cancellationToken); 15 | Task SendAsync(GraphQLRequest request); 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.DevCli/GraphZen.DevCli.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | Exe 5 | netcoreapp3.0 6 | false 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /src/GraphZen.Infrastructure/Infrastructure/AccessorExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | #nullable enable 10 | 11 | 12 | namespace GraphZen.Infrastructure 13 | { 14 | public static class AccessorExtensions 15 | { 16 | [DebuggerStepThrough] 17 | public static T GetInfrastructure(this IInfrastructure accessor) => 18 | Check.NotNull(accessor, nameof(accessor)).Instance; 19 | } 20 | } -------------------------------------------------------------------------------- /src/GraphZen.Infrastructure/Infrastructure/Extensions/System/StackExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.Infrastructure 10 | { 11 | internal static class StackExtensions 12 | { 13 | public static T PeekOrDefault(this Stack stack) => 14 | Check.NotNull(stack, nameof(stack)).Count > 0 ? stack.Peek() : default; 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.Infrastructure/Infrastructure/IInfrastructure.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable enable 9 | 10 | 11 | namespace GraphZen.Infrastructure 12 | { 13 | public interface IInfrastructure 14 | { 15 | T Instance { get; } 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.Infrastructure/Infrastructure/IInspectable.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable enable 9 | 10 | 11 | namespace GraphZen.Infrastructure 12 | { 13 | public interface IInspectable 14 | { 15 | string GetDisplayValue(); 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/AssemblyAttributes.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using System.Runtime.CompilerServices; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | [assembly: InternalsVisibleTo("GraphZen.Tests")] 10 | [assembly: InternalsVisibleTo("GraphZen.QueryEngine")] 11 | [assembly: InternalsVisibleTo("GraphZen.TypeSystem")] -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/IDocumentValidator.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using GraphZen.LanguageModel; 8 | using JetBrains.Annotations; 9 | 10 | namespace GraphZen 11 | { 12 | public interface IDocumentValidator 13 | { 14 | IEnumerable Validate(DocumentSyntax schemaDocument, 15 | DocumentSyntax? initialSchemaDocument = null); 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/AssemblyAttributes.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using System.Runtime.CompilerServices; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | #nullable disable 10 | 11 | 12 | [assembly: InternalsVisibleTo("GraphZen")] 13 | [assembly: InternalsVisibleTo("GraphZen.Tests")] -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Break.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | public sealed class Break : VisitAction 14 | { 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/ContinueAction.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | public sealed class ContinueAction : VisitAction 14 | { 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/IParser.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | public interface IParser 14 | { 15 | DocumentSyntax ParseDocument(string document); 16 | 17 | 18 | ValueSyntax ParseValue(string value); 19 | 20 | 21 | TypeSyntax ParseType(string type); 22 | } 23 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/IPrinter.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | public interface IPrinter 14 | { 15 | string Print(SyntaxNode node); 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Skip.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | public sealed class Skip : VisitAction 14 | { 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/SourceLocation.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | public struct SourceLocation 14 | { 15 | public SourceLocation(int line, int column) 16 | { 17 | Line = line; 18 | Column = column; 19 | } 20 | 21 | public int Line { get; } 22 | public int Column { get; } 23 | } 24 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/ArgumentSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class ArgumentSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/BooleanValueSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class BooleanValueSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/DirectiveDefinitionSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class DirectiveDefinitionSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/DirectiveSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class DirectiveSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/EnumTypeDefinitionSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class EnumTypeDefinitionSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/EnumTypeExtensionSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class EnumTypeExtensionSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/EnumValueDefinitionSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class EnumValueDefinitionSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/EnumValueSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class EnumValueSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/FieldDefinitionSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class FieldDefinitionSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/FieldSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class FieldSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/FloatValueSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class FloatValueSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/FragmentDefinitionSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class FragmentDefinitionSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/FragmentSpreadSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class FragmentSpreadSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/IArgumentsNode.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.LanguageModel 10 | { 11 | public interface IArgumentsNode 12 | { 13 | IReadOnlyList Arguments { get; } 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/IDescribedSyntax.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | public interface IDescribedSyntax 14 | { 15 | StringValueSyntax Description { get; } 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/IDirectivesSyntax.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | #nullable disable 10 | 11 | 12 | namespace GraphZen.LanguageModel 13 | { 14 | public interface IDirectivesSyntax 15 | { 16 | IReadOnlyList Directives { get; } 17 | } 18 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/IFieldsNode.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | #nullable disable 10 | 11 | 12 | namespace GraphZen.LanguageModel 13 | { 14 | public interface IFieldsNode : INamedSyntax 15 | { 16 | IReadOnlyList Fields { get; } 17 | } 18 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/IFragmentTypeConditionSyntax.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | public interface IFragmentTypeConditionSyntax 14 | { 15 | NamedTypeSyntax TypeCondition { get; } 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/INamedSyntax.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | public interface INamedSyntax 14 | { 15 | NameSyntax Name { get; } 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/ISyntaxNodeLocation.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | public interface ISyntaxNodeLocation 14 | { 15 | SyntaxLocation Location { get; } 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/InlineFragmentSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class InlineFragmentSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/InputObjectTypeDefinitionSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class InputObjectTypeDefinitionSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/InputObjectTypeExtensionSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class InputObjectTypeExtensionSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/IntValueSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class IntValueSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/InterfaceTypeDefinitionSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class InterfaceTypeDefinitionSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/InterfaceTypeExtensionSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class InterfaceTypeExtensionSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/ListTypeSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class ListTypeSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/ListValueSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class ListValueSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/NameSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class NameSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/NamedTypeSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class NamedTypeSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/NonNullTypeSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class NonNullTypeSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/NullValueSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class NullValueSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/ObjectFieldSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class ObjectFieldSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/ObjectTypeExtensionSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class ObjectTypeExtensionSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/ObjectValueSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class ObjectValueSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/OperationDefinitionSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class OperationDefinitionSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/OperationTypeDefinitionSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class OperationTypeDefinitionSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/PunctuatorSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class PunctuatorSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/ScalarTypeDefinitionSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class ScalarTypeDefinitionSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/ScalarTypeExtensionSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class ScalarTypeExtensionSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/SchemaDefinitionSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class SchemaDefinitionSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/SchemaExtensionSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class SchemaExtensionSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/SelectionSetSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class SelectionSetSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/StringValueSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class StringValueSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/UnionTypeDefinitonSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class UnionTypeDefinitionSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/UnionTypeExtensionSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class UnionTypeExtensionSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/VariableDefinitionSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class VariableDefinitionSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Syntax/VariableSyntaxExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | [UsedImplicitly] 14 | public static class VariableSyntaxExtensions 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Validation/DocumentValidationRuleVisitor.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel.Validation 12 | { 13 | public abstract class DocumentValidationRuleVisitor : ValidationRuleVisitor 14 | { 15 | protected DocumentValidationRuleVisitor(DocumentValidationContext context) : base(context) 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Validation/Rules/FieldArgsMustBeProperlynamed.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel.Validation.Rules 12 | { 13 | public class FieldArgsMustBeProperlyNamed : DocumentValidationRuleVisitor 14 | { 15 | public FieldArgsMustBeProperlyNamed(DocumentValidationContext context) : base(context) 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Validation/Rules/LoneSchemaDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel.Validation.Rules 12 | { 13 | public class LoneSchemaDefinition : DocumentValidationRuleVisitor 14 | { 15 | public LoneSchemaDefinition(DocumentValidationContext context) : base(context) 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/Validation/ValidationRule.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel.Validation 12 | { 13 | public delegate ValidationRuleVisitor ValidationRule(ValidationContext context); 14 | } -------------------------------------------------------------------------------- /src/GraphZen.LanguageModel/LanguageModel/VistitorContext.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.LanguageModel 12 | { 13 | public class VistitorContext 14 | { 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/AssemblyAttributes.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using System.Runtime.CompilerServices; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | #nullable disable 10 | 11 | 12 | [assembly: InternalsVisibleTo("GraphZen.Tests")] -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/GraphZen.QueryEngine.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | netstandard2.1;netcoreapp3.0 5 | GraphQL query executine engine. This package is not intended for stand-alone use. Install the GraphZen.AspNetCore.Server package for hosting GraphQL API servers. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/QueryEngine/Execute.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.QueryEngine 12 | { 13 | internal static class Execute 14 | { 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/QueryEngine/ExecutionOptions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.QueryEngine 12 | { 13 | public class ExecutionOptions 14 | { 15 | public bool ThrowOnError { get; set; } = false; 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/QueryEngine/IExecutionContext.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.QueryEngine 12 | { 13 | public interface IExecutionContext 14 | { 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/QueryEngine/Validation/IQueryValidator.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using GraphZen.LanguageModel; 8 | using GraphZen.TypeSystem; 9 | using JetBrains.Annotations; 10 | 11 | #nullable disable 12 | 13 | 14 | namespace GraphZen.QueryEngine.Validation 15 | { 16 | public interface IQueryValidator 17 | { 18 | IReadOnlyCollection Validate(Schema schema, DocumentSyntax query); 19 | } 20 | } -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/QueryEngine/Validation/Rules/KnownArgumentNames.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.QueryEngine.Validation.Rules 12 | { 13 | public class KnownArgumentNames : QueryValidationRuleVisitor 14 | { 15 | public KnownArgumentNames(QueryValidationContext context) : base(context) 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/QueryEngine/Validation/Rules/NoFragmentCycles.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.QueryEngine.Validation.Rules 12 | { 13 | public class NoFragmentCycles : QueryValidationRuleVisitor 14 | { 15 | public NoFragmentCycles(QueryValidationContext context) : base(context) 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/QueryEngine/Validation/Rules/NoUndefinedVariables.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.QueryEngine.Validation.Rules 12 | { 13 | public class NoUndefinedVariables : QueryValidationRuleVisitor 14 | { 15 | public NoUndefinedVariables(QueryValidationContext context) : base(context) 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/QueryEngine/Validation/Rules/NoUnusedFragments.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.QueryEngine.Validation.Rules 12 | { 13 | public class NoUnusedFragments : QueryValidationRuleVisitor 14 | { 15 | public NoUnusedFragments(QueryValidationContext context) : base(context) 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/QueryEngine/Validation/Rules/NoUnusedVariables.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.QueryEngine.Validation.Rules 12 | { 13 | public class NoUnusedVariables : QueryValidationRuleVisitor 14 | { 15 | public NoUnusedVariables(QueryValidationContext context) : base(context) 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/QueryEngine/Validation/Rules/OverlappingFieldsCanBeMerged.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.QueryEngine.Validation.Rules 12 | { 13 | public class OverlappingFieldsCanBeMerged : QueryValidationRuleVisitor 14 | { 15 | public OverlappingFieldsCanBeMerged(QueryValidationContext context) : base(context) 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/QueryEngine/Validation/Rules/PossibleFragmentSpreads.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.QueryEngine.Validation.Rules 12 | { 13 | public class PossibleFragmentSpreads : QueryValidationRuleVisitor 14 | { 15 | public PossibleFragmentSpreads(QueryValidationContext context) : base(context) 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/QueryEngine/Validation/Rules/ProvidedRequiredArguments.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.QueryEngine.Validation.Rules 12 | { 13 | public class ProvidedRequiredArguments : QueryValidationRuleVisitor 14 | { 15 | public ProvidedRequiredArguments(QueryValidationContext context) : base(context) 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/QueryEngine/Validation/Rules/ScalarLeafs.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.QueryEngine.Validation.Rules 12 | { 13 | public class ScalarLeafs : QueryValidationRuleVisitor 14 | { 15 | public ScalarLeafs(QueryValidationContext context) : base(context) 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/QueryEngine/Validation/Rules/SingleFieldSubscriptions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.QueryEngine.Validation.Rules 12 | { 13 | public class SingleFieldSubscriptions : QueryValidationRuleVisitor 14 | { 15 | public SingleFieldSubscriptions(QueryValidationContext context) : base(context) 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/QueryEngine/Validation/Rules/UniqueArgumentNames.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.QueryEngine.Validation.Rules 12 | { 13 | public class UniqueArgumentNames : QueryValidationRuleVisitor 14 | { 15 | public UniqueArgumentNames(QueryValidationContext context) : base(context) 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/QueryEngine/Validation/Rules/UniqueDirectivesPerLocation.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.QueryEngine.Validation.Rules 12 | { 13 | public class UniqueDirectivesPerLocation : QueryValidationRuleVisitor 14 | { 15 | public UniqueDirectivesPerLocation(QueryValidationContext context) : base(context) 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/QueryEngine/Validation/Rules/UniqueFragmentNames.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.QueryEngine.Validation.Rules 12 | { 13 | public class UniqueFragmentNames : QueryValidationRuleVisitor 14 | { 15 | public UniqueFragmentNames(QueryValidationContext context) : base(context) 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/QueryEngine/Validation/Rules/UniqueInputFieldNames.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.QueryEngine.Validation.Rules 12 | { 13 | public class UniqueInputFieldNames : QueryValidationRuleVisitor 14 | { 15 | public UniqueInputFieldNames(QueryValidationContext context) : base(context) 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/QueryEngine/Validation/Rules/UniqueVariableNames.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.QueryEngine.Validation.Rules 12 | { 13 | public class UniqueVariableNames : QueryValidationRuleVisitor 14 | { 15 | public UniqueVariableNames(QueryValidationContext context) : base(context) 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/QueryEngine/Validation/Rules/ValuesOfCorrectType.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.QueryEngine.Validation.Rules 12 | { 13 | public class ValuesOfCorrectType : QueryValidationRuleVisitor 14 | { 15 | public ValuesOfCorrectType(QueryValidationContext context) : base(context) 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/QueryEngine/Validation/Rules/VariablesAreInputTypes.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.QueryEngine.Validation.Rules 12 | { 13 | public class VariablesAreInputTypes : QueryValidationRuleVisitor 14 | { 15 | public VariablesAreInputTypes(QueryValidationContext context) : base(context) 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.QueryEngine/QueryEngine/Validation/Rules/VariablesInAllowedPosition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.QueryEngine.Validation.Rules 12 | { 13 | public class VariablesInAllowedPosition : QueryValidationRuleVisitor 14 | { 15 | public VariablesInAllowedPosition(QueryValidationContext context) : base(context) 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/AssemblyAttributes.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using System.Runtime.CompilerServices; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | [assembly: InternalsVisibleTo("GraphZen.Tests")] 10 | [assembly: InternalsVisibleTo("GraphZen.TypeSystem.Tests")] 11 | [assembly: InternalsVisibleTo("GraphZen.QueryEngine")] -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/GraphZen.TypeSystem.csproj.DotSettings: -------------------------------------------------------------------------------- 1 |  2 | True -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/Infrastructure/IGraphQLContextOptions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.Infrastructure 10 | { 11 | public interface IGraphQLContextOptions 12 | { 13 | IEnumerable Extensions { get; } 14 | 15 | TExtension? FindExtension() 16 | where TExtension : class, IGraphQLContextOptionsExtension; 17 | } 18 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/Infrastructure/IGraphQLContextOptionsBuilderInfrastructure.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.Infrastructure 9 | { 10 | public interface IGraphQLContextOptionsBuilderInfrastructure 11 | { 12 | void AddOrUpdateExtension([NotNull] TExtension extension) 13 | where TExtension : class, IGraphQLContextOptionsExtension; 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/Infrastructure/IGraphQLContextOptionsExtension.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | using Microsoft.Extensions.DependencyInjection; 8 | 9 | namespace GraphZen.Infrastructure 10 | { 11 | public interface IGraphQLContextOptionsExtension 12 | { 13 | void ApplyServices([NotNull] IServiceCollection services); 14 | void Validate([NotNull] IGraphQLContextOptions options); 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/Internal/InvalidTypeReferenceException.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.Internal 10 | { 11 | public class InvalidTypeReferenceException : Exception 12 | { 13 | public InvalidTypeReferenceException(string message, Exception innerException) : base(message, innerException) 14 | { 15 | } 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/Internal/Maybe/Some.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.Internal 10 | { 11 | internal class Some : Maybe 12 | { 13 | protected Some(IReadOnlyList? values, IReadOnlyList? errors) : base(values, 14 | errors) 15 | { 16 | } 17 | 18 | 19 | public T Value => ValueOrFailure(); 20 | } 21 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/IAnnotableBuilder.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem 9 | { 10 | public interface IAnnotableBuilder 11 | { 12 | TBuilder DirectiveAnnotation(string name, object? value = null); 13 | TBuilder IgnoreDirectiveAnnotation(string name); 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/ISyntaxConverter.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.LanguageModel; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem 10 | { 11 | public interface ISyntaxConverter 12 | { 13 | bool CanRead { get; } 14 | bool CanWrite { get; } 15 | object FromSyntax(SyntaxNode node); 16 | SyntaxNode ToSyntax(object value); 17 | } 18 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Internal/ConfigurationSource.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Internal 9 | { 10 | public enum ConfigurationSource 11 | { 12 | Explicit, 13 | DataAnnotation, 14 | Convention 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Internal/ResponsePathHelpers.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Internal 10 | { 11 | public static class ResponsePathHelpers 12 | { 13 | [DebuggerStepThrough] 14 | public static ResponsePath AddPath(this ResponsePath path, object key) => new ResponsePath(path, key); 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/IsTypeOf.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Internal; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem 10 | { 11 | public delegate bool IsTypeOf(TObject value, TContext context, ResolveInfo info) 12 | where TContext : GraphQLContext; 13 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/LeafLiteralParser.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.Internal; 7 | using GraphZen.LanguageModel; 8 | using JetBrains.Annotations; 9 | 10 | namespace GraphZen.TypeSystem 11 | { 12 | public delegate Maybe LeafLiteralParser(TValueNode valueNode) 13 | where TValueNode : ValueSyntax; 14 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/LeafSerializer.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.Internal; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem 10 | { 11 | public delegate Maybe LeafSerializer(TScalar value); 12 | 13 | public delegate Maybe LeafSerializer(object value); 14 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/LeafValueParser.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.Internal; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem 10 | { 11 | public delegate Maybe LeafValueParser(object value); 12 | 13 | public delegate Maybe LeafValueParser(object value); 14 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Member.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.LanguageModel; 7 | using GraphZen.TypeSystem.Taxonomy; 8 | using JetBrains.Annotations; 9 | 10 | namespace GraphZen.TypeSystem 11 | { 12 | [GraphQLIgnore] 13 | public abstract class Member : ISyntaxConvertable 14 | { 15 | [GraphQLCanBeNull] public abstract string? Description { get; } 16 | 17 | [GraphQLIgnore] 18 | public abstract SyntaxNode ToSyntaxNode(); 19 | } 20 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Resolver.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Internal; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem 10 | { 11 | public delegate TResult Resolver(TSource source, dynamic args, 12 | GraphQLContext context, 13 | ResolveInfo resolveInfo); 14 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/SchemaPrinter.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.LanguageModel; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem 10 | { 11 | public static class SchemaPrinter 12 | { 13 | public static string Print(this Schema schema) => 14 | Check.NotNull(schema, nameof(schema)) 15 | .ToDocumentSyntax() 16 | .WithoutBuiltInDefinitions() 17 | .ToSyntaxString(); 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IAbstractType.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IAbstractType : IAbstractTypeDefinition, INamedType 12 | { 13 | } 14 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IAbstractTypeDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IAbstractTypeDefinition : INamedTypeDefinition 12 | { 13 | TypeResolver? ResolveType { get; } 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IAnnotatableDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IAnnotatableDefinition : IDirectiveAnnotationsDefinition, IMemberDefinition 12 | { 13 | } 14 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IArgument.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IArgument : IArgumentDefinition, IInputValue 12 | { 13 | new IArguments DeclaringMember { get; } 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IArgumentDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using System.Reflection; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IArgumentDefinition : IInputValueDefinition 13 | { 14 | new IArgumentsDefinition DeclaringMember { get; } 15 | 16 | new ParameterInfo? ClrInfo { get; } 17 | } 18 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IArguments.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IArguments : IArgumentsDefinition 13 | { 14 | IReadOnlyDictionary Arguments { get; } 15 | 16 | 17 | new IEnumerable GetArguments(); 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IArgumentsDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IArgumentsDefinition : IMemberDefinition 13 | { 14 | IEnumerable GetArguments(); 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IClrInfo.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IClrInfo 12 | { 13 | object? ClrInfo { get; } 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IClrType.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IClrType 13 | { 14 | Type? ClrType { get; } 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/ICompositeType.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface ICompositeType : ICompositeTypeDefinition, INamedType 12 | { 13 | } 14 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/ICompositeTypeDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface ICompositeTypeDefinition : INamedTypeDefinition 12 | { 13 | } 14 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IDeprecation.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IDeprecation 12 | { 13 | bool IsDeprecated { get; } 14 | 15 | 16 | string? DeprecationReason { get; } 17 | } 18 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IDescription.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IDescription 12 | { 13 | string? Description { get; } 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IDirective.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IDirective : IDirectiveDefinition, IArguments, ISyntaxConvertable, IDirectiveLocations 12 | { 13 | } 14 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IDirectiveAnnotation.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IDirectiveAnnotation 12 | { 13 | string Name { get; } 14 | 15 | object? Value { get; } 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IDirectiveDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IDirectiveDefinition : 12 | INamed, 13 | IDescription, 14 | IClrType, 15 | IArgumentsDefinition, 16 | IDirectiveLocationsDefinition 17 | { 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IDirectiveLocations.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IDirectiveLocations : IDirectiveLocationsDefinition 12 | { 13 | } 14 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IDirectiveLocationsDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using GraphZen.LanguageModel; 8 | using JetBrains.Annotations; 9 | 10 | namespace GraphZen.TypeSystem.Taxonomy 11 | { 12 | [GraphQLIgnore] 13 | public interface IDirectiveLocationsDefinition 14 | { 15 | IReadOnlyCollection Locations { get; } 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IDirectives.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IDirectives : IDirectivesDefinition 13 | { 14 | [GraphQLIgnore] 15 | new IEnumerable GetDirectives(); 16 | 17 | [GraphQLIgnore] IReadOnlyList Directives { get; } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IDirectivesDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IDirectivesDefinition 13 | { 14 | [GraphQLIgnore] 15 | IEnumerable GetDirectives(); 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IEnumType.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IEnumType : IEnumTypeDefinition, 12 | ILeafType, IEnumValues 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IEnumTypeDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IEnumTypeDefinition : 12 | IEnumValuesDefinition, 13 | ILeafTypeDefinition, 14 | IInputDefinition, 15 | IOutputDefinition 16 | { 17 | } 18 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IEnumTypes.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IEnumTypes : IEnumTypesDefinition 13 | { 14 | [GraphQLIgnore] 15 | new IEnumerable GetEnums(); 16 | 17 | [GraphQLIgnore] IReadOnlyList Enums { get; } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IEnumTypesDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IEnumTypesDefinition 13 | { 14 | [GraphQLIgnore] 15 | IEnumerable GetEnums(); 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IEnumValue.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IEnumValue : IEnumValueDefinition, ISyntaxConvertable 12 | { 13 | new EnumType DeclaringType { get; } 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IEnumValuesDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IEnumValuesDefinition 13 | { 14 | IEnumerable GetValues(); 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IField.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IField : IFieldDefinition, IArguments, ISyntaxConvertable 12 | { 13 | new IGraphQLType FieldType { get; } 14 | 15 | 16 | new IFields DeclaringType { get; } 17 | } 18 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IFields.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IFields : IFieldsDefinition, INamedType 13 | { 14 | IReadOnlyDictionary Fields { get; } 15 | 16 | 17 | [GraphQLCanBeNull] 18 | new IEnumerable GetFields(); 19 | } 20 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IFieldsDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IFieldsDefinition 13 | { 14 | IEnumerable GetFields(); 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IGraphQLType.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLName("__Type")] 11 | public interface IGraphQLType : IGraphQLTypeReference, ISyntaxConvertable 12 | { 13 | TypeKind Kind { get; } 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IGraphQLTypeReference.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IGraphQLTypeReference 12 | { 13 | } 14 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IInputDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IInputDefinition 12 | { 13 | } 14 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IInputField.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IInputField : IInputFieldDefinition, IInputValue 12 | { 13 | new InputObjectType DeclaringMember { get; } 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IInputFieldDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using System.Reflection; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IInputFieldDefinition : IInputValueDefinition 13 | { 14 | new PropertyInfo? ClrInfo { get; } 15 | 16 | new IInputObjectTypeDefinition DeclaringMember { get; } 17 | } 18 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IInputFields.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | public interface IInputFields : IInputFieldsDefinition 12 | { 13 | IReadOnlyDictionary Fields { get; } 14 | 15 | 16 | new IEnumerable GetFields(); 17 | } 18 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IInputFieldsDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | public interface IInputFieldsDefinition 12 | { 13 | IEnumerable GetFields(); 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IInputObjectType.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IInputObjectType : IInputObjectTypeDefinition, INamedType, IInputFields 12 | { 13 | } 14 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IInputObjectTypeDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IInputObjectTypeDefinition : IInputFieldsDefinition, 12 | INamedTypeDefinition, IInputDefinition 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IInputObjectTypesDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IInputObjectTypesDefinition 13 | { 14 | [GraphQLIgnore] 15 | IEnumerable GetInputObjects(); 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IInputValue.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IInputValue : IInputValueDefinition, ISyntaxConvertable 12 | { 13 | new IGraphQLType InputType { get; } 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IInterfaceType.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IInterfaceType : IInterfaceTypeDefinition, 12 | ICompositeType, 13 | IAbstractType, 14 | IFields 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IInterfaceTypeDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IInterfaceTypeDefinition : 12 | IFieldsDefinition, 13 | ICompositeTypeDefinition, 14 | IAbstractTypeDefinition, IOutputDefinition 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IInterfaceTypesDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IInterfaceTypesDefinition 13 | { 14 | [GraphQLIgnore] 15 | IEnumerable GetInterfaces(); 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IInterfacesDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | public interface IInterfacesDefinition 12 | { 13 | IEnumerable GetInterfaces(); 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/ILeafTypeDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface ILeafTypeDefinition : INamedTypeDefinition 12 | { 13 | } 14 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IListType.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IListType : IWrappingType, INullableType 12 | { 13 | } 14 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/ILiteralParser.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | public interface ILiteralParser : ILiteralParserDefinition 11 | { 12 | } 13 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/ILiteralParserDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.LanguageModel; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | public interface ILiteralParserDefinition 12 | { 13 | LeafLiteralParser? LiteralParser { get; } 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMember.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | public interface IMember : IMemberDefinition 11 | { 12 | } 13 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMemberDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IMemberDefinition 12 | { 13 | } 14 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMemberTypesDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IMemberTypesDefinition 13 | { 14 | IEnumerable GetMemberTypes(); 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutableAbstractTypeDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IMutableAbstractTypeDefinition : IAbstractTypeDefinition 12 | { 13 | new TypeResolver? ResolveType { get; set; } 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutableAnnotatableDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IMutableAnnotatableDefinition : 12 | IAnnotatableDefinition, 13 | IMutableDefinition, 14 | IMutableDirectiveAnnotationsDefinition 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutableArgumentDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IMutableArgumentDefinition : IArgumentDefinition, IMutableInputValueDefinition 12 | { 13 | new IMutableArgumentsDefinition DeclaringMember { get; } 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutableClrType.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using GraphZen.TypeSystem.Internal; 8 | using JetBrains.Annotations; 9 | 10 | namespace GraphZen.TypeSystem.Taxonomy 11 | { 12 | public interface IMutableClrType : IClrType 13 | { 14 | bool SetClrType(Type clrType, ConfigurationSource configurationSource); 15 | ConfigurationSource? GetClrTypeConfigurationSource(); 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutableDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Internal; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IMutableDefinition : IMemberDefinition 13 | { 14 | ConfigurationSource GetConfigurationSource(); 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutableDeprecation.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Internal; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IMutableDeprecation : IDeprecation 13 | { 14 | bool MarkAsDeprecated(string reason, ConfigurationSource configurationSource); 15 | bool RemoveDeprecation(ConfigurationSource configurationSource); 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutableDescription.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Internal; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IMutableDescription : IDescription 13 | { 14 | bool SetDescription(string description, ConfigurationSource configurationSource); 15 | ConfigurationSource GetDescriptionConfigurationSource(); 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutableEnumTypeDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IMutableEnumTypeDefinition : 12 | IEnumTypeDefinition, 13 | IMutableNamedTypeDefinition, 14 | IMutableEnumValuesDefinition 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutableEnumTypesDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IMutableEnumTypesDefinition : IEnumTypesDefinition 13 | { 14 | [GraphQLIgnore] 15 | new IEnumerable GetEnums(); 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutableInputFieldDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IMutableInputFieldDefinition : IInputFieldDefinition, IMutableInputValueDefinition 12 | { 13 | new InputObjectTypeDefinition DeclaringMember { get; } 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutableInputObjectTypeDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IMutableInputObjectTypeDefinition : IInputObjectTypeDefinition, IMutableNamedTypeDefinition, 12 | IMutableInputFieldsDefinition 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutableInputObjectTypesDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IMutableInputObjectTypesDefinition : IInputObjectTypesDefinition 13 | { 14 | [GraphQLIgnore] 15 | new IEnumerable GetInputObjects(); 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutableInterfaceTypeDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IMutableInterfaceTypeDefinition : IInterfaceTypeDefinition, IMutableNamedTypeDefinition, 12 | IMutableFieldsDefinition, 13 | IMutableAbstractTypeDefinition 14 | { 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutableInterfaceTypesDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IMutableInterfaceTypesDefinition : IInterfaceTypesDefinition 13 | { 14 | [GraphQLIgnore] 15 | new IEnumerable GetInterfaces(); 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutableNamed.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Internal; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IMutableNamed : INamed, IMutableDefinition 13 | { 14 | bool SetName(string name, ConfigurationSource configurationSource); 15 | ConfigurationSource GetNameConfigurationSource(); 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutableNamedTypeDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IMutableNamedTypeDefinition : 12 | INamedTypeDefinition, 13 | IMutableAnnotatableDefinition, 14 | IMutableClrType, 15 | IMutableNamed, 16 | IMutableDescription 17 | { 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutableObjectTypeDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IMutableObjectTypeDefinition : IObjectTypeDefinition, IMutableNamedTypeDefinition, 12 | IMutableFieldsDefinition, IMutableInterfacesDefinition 13 | { 14 | new IsTypeOf? IsTypeOf { get; } 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutableObjectTypesDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IMutableObjectTypesDefinition : IObjectTypesDefinition 13 | { 14 | [GraphQLIgnore] 15 | new IEnumerable GetObjects(); 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutableScalarTypesDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IMutableScalarTypesDefinition : IScalarTypesDefinition 13 | { 14 | [GraphQLIgnore] 15 | new IEnumerable GetScalars(); 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutableUnionTypeDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IMutableUnionTypeDefinition : 12 | IUnionTypeDefinition, IMutableNamedTypeDefinition, IMutableAbstractTypeDefinition, 13 | IMutableMemberTypesDefinition 14 | { 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutableUnionTypesDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IMutableUnionTypesDefinition : IUnionTypesDefinition 13 | { 14 | [GraphQLIgnore] 15 | new IEnumerable GetUnions(); 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutationType.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IMutationType : IMutationTypeDefinition 12 | { 13 | new ObjectType? MutationType { get; } 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IMutationTypeDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IMutationTypeDefinition 12 | { 13 | IObjectTypeDefinition? MutationType { get; } 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/INamed.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface INamed 12 | { 13 | string Name { get; } 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/INamedType.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | // ReSharper disable once PossibleInterfaceMemberAmbiguity 12 | public interface INamedType : INamedTypeDefinition, INullableType 13 | { 14 | new string Name { get; } 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/INamedTypeDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface INamedTypeDefinition : 12 | IMemberDefinition, 13 | IDescription, 14 | INamedTypeReference, 15 | IDirectiveAnnotations, 16 | IClrType 17 | { 18 | TypeKind Kind { get; } 19 | } 20 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/INamedTypeReference.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface INamedTypeReference : 12 | IGraphQLTypeReference, 13 | INamed 14 | { 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/INonNullType.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface INonNullType : IWrappingNullableType 12 | { 13 | } 14 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/INullableType.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface INullableType : IGraphQLType 12 | { 13 | } 14 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IObjectType.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IObjectType : IObjectTypeDefinition, IInterfaces, 12 | ICompositeType, 13 | IFields 14 | { 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IObjectTypeDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IObjectTypeDefinition : 12 | IFieldsDefinition, 13 | IInterfacesDefinition, 14 | ICompositeTypeDefinition, IOutputDefinition 15 | { 16 | IsTypeOf? IsTypeOf { get; } 17 | } 18 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IObjectTypes.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IObjectTypes : IObjectTypesDefinition 13 | { 14 | [GraphQLIgnore] 15 | new IEnumerable GetObjects(); 16 | 17 | 18 | [GraphQLIgnore] IReadOnlyList Objects { get; } 19 | } 20 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IObjectTypesDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IObjectTypesDefinition 13 | { 14 | [GraphQLIgnore] 15 | IEnumerable GetObjects(); 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IOutputDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IOutputDefinition 12 | { 13 | } 14 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IQueryType.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IQueryType : IQueryTypeDefinition 12 | { 13 | new ObjectType QueryType { get; } 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IQueryTypeDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IQueryTypeDefinition 12 | { 13 | IObjectTypeDefinition? QueryType { get; } 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IScalarType.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IScalarType : 12 | ILeafType, 13 | IScalarTypeDefinition, 14 | ISerializer, 15 | IValueParser, 16 | ILiteralParser 17 | { 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IScalarTypeDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IScalarTypeDefinition : 12 | ILeafTypeDefinition, 13 | ISerializerDefinition, 14 | ILiteralParserDefinition, 15 | IValueParserDefinition, 16 | IInputDefinition, 17 | IOutputDefinition 18 | { 19 | } 20 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IScalarTypes.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IScalarTypes : IScalarTypesDefinition 13 | { 14 | [GraphQLIgnore] 15 | new IEnumerable GetScalars(); 16 | 17 | [GraphQLIgnore] IReadOnlyList Scalars { get; } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IScalarTypesDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IScalarTypesDefinition 13 | { 14 | [GraphQLIgnore] 15 | IEnumerable GetScalars(); 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/ISchema.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface ISchema : 12 | ISchemaDefinition, 13 | IQueryType, 14 | IMutationType, 15 | ISubscriptionType, 16 | IDirectives, IObjectTypes, IInterfaceTypes, IUnionTypes, 17 | IScalarTypes, IEnumTypes, IInputObjectTypes 18 | { 19 | } 20 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/ISerializer.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | public interface ISerializer : ISerializerDefinition 11 | { 12 | } 13 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/ISerializerDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | public interface ISerializerDefinition 11 | { 12 | LeafSerializer? Serializer { get; } 13 | } 14 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/ISubscriptionType.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface ISubscriptionType : ISubscriptionTypeDefinition 12 | { 13 | new ObjectType? SubscriptionType { get; } 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/ISubscriptionTypeDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface ISubscriptionTypeDefinition 12 | { 13 | IObjectTypeDefinition? SubscriptionType { get; } 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/ISyntaxConvertable.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.LanguageModel; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface ISyntaxConvertable 13 | { 14 | SyntaxNode ToSyntaxNode(); 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IUnionType.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IUnionType : IUnionTypeDefinition, 12 | ICompositeType, 13 | IAbstractType, IMemberTypes 14 | { 15 | } 16 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IUnionTypeDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IUnionTypeDefinition : 12 | ICompositeTypeDefinition, 13 | IAbstractTypeDefinition, 14 | IOutputDefinition, 15 | IMemberTypesDefinition 16 | { 17 | } 18 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IUnionTypes.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IUnionTypes : IUnionTypesDefinition 13 | { 14 | [GraphQLIgnore] 15 | new IEnumerable GetUnions(); 16 | 17 | [GraphQLIgnore] IReadOnlyList Unions { get; } 18 | } 19 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IUnionTypesDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Collections.Generic; 5 | using System.Diagnostics.CodeAnalysis; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Taxonomy 10 | { 11 | [GraphQLIgnore] 12 | public interface IUnionTypesDefinition 13 | { 14 | [GraphQLIgnore] 15 | IEnumerable GetUnions(); 16 | } 17 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IValueParser.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | public interface IValueParser : IValueParserDefinition 11 | { 12 | } 13 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IValueParserDefinition.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | public interface IValueParserDefinition 11 | { 12 | LeafValueParser? ValueParser { get; } 13 | } 14 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IWrappingNullableType.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IWrappingNullableType : IWrappingType 12 | { 13 | new INullableType OfType { get; } 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/Taxonomy/IWrappingType.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Taxonomy 9 | { 10 | [GraphQLIgnore] 11 | public interface IWrappingType : IGraphQLType 12 | { 13 | IGraphQLType OfType { get; } 14 | } 15 | } -------------------------------------------------------------------------------- /src/GraphZen.TypeSystem/TypeSystem/TypeResolver.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Internal; 7 | using GraphZen.TypeSystem.Taxonomy; 8 | using JetBrains.Annotations; 9 | 10 | namespace GraphZen.TypeSystem 11 | { 12 | public delegate string TypeResolver(TSource value, TContext context, 13 | ResolveInfo info) where TContext : GraphQLContext; 14 | 15 | public delegate IGraphQLType TypeResolver(IGraphQLTypeReference typeReference); 16 | } -------------------------------------------------------------------------------- /src/GraphZen/GraphZen.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | netstandard2.1;netcoreapp3.0 5 | GraphZen is a GraphQL SDK for .NET. Install the GraphZen.AspNetCore.Server package for building GraphQL API servers for ASP.NET Core. 6 | false 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /src/GraphZen/GraphZen.csproj.DotSettings: -------------------------------------------------------------------------------- 1 |  2 | -------------------------------------------------------------------------------- /src/Shared/DictionaryContainerCodeGenerator.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using JetBrains.Annotations; 5 | #nullable disable 6 | -------------------------------------------------------------------------------- /src/Shared/DictionaryExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | using JetBrains.Annotations; 4 | #nullable disable 5 | 6 | 7 | using GraphZen.Infrastructure; 8 | 9 | -------------------------------------------------------------------------------- /src/Shared/KeyValuePairExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | using JetBrains.Annotations; 4 | #nullable disable 5 | 6 | 7 | using System.Collections.Generic; 8 | using GraphZen.Infrastructure; 9 | 10 | 11 | namespace GraphZen.Internal 12 | { 13 | public static class KeyValuePairExtensions 14 | { 15 | public static void Deconstruct(this KeyValuePair source, out TKey key, 16 | out TValue value) 17 | { 18 | key = source.Key; 19 | value = source.Value; 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /test/Directory.Build.props: -------------------------------------------------------------------------------- 1 | 2 | 3 | False 4 | enable 5 | 6 | true 7 | latest 8 | 9 | -------------------------------------------------------------------------------- /test/GraphZen.Abstractions.Tests/UnitTest1.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | using Xunit; 8 | 9 | namespace GraphZen 10 | { 11 | public class UnitTest1 12 | { 13 | [Fact] 14 | public void Test1() 15 | { 16 | } 17 | } 18 | } -------------------------------------------------------------------------------- /test/GraphZen.AspNetCore.Playground.IntegrationTests/GraphZen.AspNetCore.Playground.IntegrationTests.v3.ncrunchproject: -------------------------------------------------------------------------------- 1 |  2 | 3 | True 4 | 5 | -------------------------------------------------------------------------------- /test/GraphZen.AspNetCore.Server.IntegrationTests/GraphZen.AspNetCore.Server.IntegrationTests.v3.ncrunchproject: -------------------------------------------------------------------------------- 1 |  2 | 3 | True 4 | 5 | -------------------------------------------------------------------------------- /test/GraphZen.Client.IntegrationTests/GraphZen.Client.IntegrationTests.v3.ncrunchproject: -------------------------------------------------------------------------------- 1 |  2 | 3 | True 4 | 5 | -------------------------------------------------------------------------------- /test/GraphZen.Infrastructure.Testing.Tests/Extensions/Superpower/SuperpowerTestExtensionsTests.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.Infrastructure 9 | { 10 | public class SuperpowerTestExtensionsTests 11 | { 12 | } 13 | } -------------------------------------------------------------------------------- /test/GraphZen.Infrastructure.Testing.Tests/Extensions/System/EnumerableTestExtensionsTests.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.Infrastructure 9 | { 10 | public class EnumerableTestExtensionsTests 11 | { 12 | } 13 | } -------------------------------------------------------------------------------- /test/GraphZen.Infrastructure.Testing.Tests/Extensions/System/JsonDifferTests.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.Infrastructure 9 | { 10 | public class JsonDifferTests 11 | { 12 | } 13 | } -------------------------------------------------------------------------------- /test/GraphZen.Infrastructure.Testing.Tests/Extensions/System/ResultComparisonOptionsTests.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.Infrastructure 9 | { 10 | public class ResultComparisonOptionsTests 11 | { 12 | } 13 | } -------------------------------------------------------------------------------- /test/GraphZen.Infrastructure.Testing.Tests/Extensions/System/StringDifferTests.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.Infrastructure 9 | { 10 | public class StringDifferTests 11 | { 12 | } 13 | } -------------------------------------------------------------------------------- /test/GraphZen.Infrastructure.Testing.Tests/Extensions/System/StringTestExtensionTests.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.Infrastructure 9 | { 10 | public class StringTestExtensionTests 11 | { 12 | } 13 | } -------------------------------------------------------------------------------- /test/GraphZen.Infrastructure.Testing/.editorconfig: -------------------------------------------------------------------------------- 1 | [*.cs] 2 | 3 | # IDE0054: Use compound assignment 4 | dotnet_style_prefer_compound_assignment = false:suggestion 5 | -------------------------------------------------------------------------------- /test/GraphZen.Infrastructure.Testing/Extensions/System/EnumerableTestExtensions.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System; 5 | using System.Collections.Generic; 6 | using System.Diagnostics.CodeAnalysis; 7 | using GraphZen.Infrastructure; 8 | using JetBrains.Annotations; 9 | 10 | namespace GraphZen.Infrastructure 11 | { 12 | public static class EnumerableTestExtensions 13 | { 14 | public static string ToMultiLineString(this IEnumerable values) => 15 | string.Join(Environment.NewLine, values); 16 | } 17 | } -------------------------------------------------------------------------------- /test/GraphZen.Infrastructure.Testing/GraphZen.Infrastructure.Testing.csproj.DotSettings: -------------------------------------------------------------------------------- 1 |  2 | True 3 | True -------------------------------------------------------------------------------- /test/GraphZen.Tests/GraphZen.Tests.csproj.DotSettings: -------------------------------------------------------------------------------- 1 |  2 | True 3 | False -------------------------------------------------------------------------------- /test/GraphZen.Tests/LanguageModel/kitchen-sink-temp.graphql: -------------------------------------------------------------------------------- 1 | fragment frag on Friend { 2 | foo(size: $size, bar: $b, obj: {key: "value", block: """ 3 | 4 | block string uses \""" 5 | 6 | """}) 7 | } -------------------------------------------------------------------------------- /test/GraphZen.Tests/Validation/Rules/LoneSchemaDefinitionTests.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.LanguageModel.Validation; 7 | using JetBrains.Annotations; 8 | 9 | #nullable disable 10 | 11 | 12 | namespace GraphZen.Tests.Validation.Rules 13 | { 14 | [NoReorder] 15 | public class LoneSchemaDefinitionTests : ValidationRuleHarness 16 | { 17 | public override ValidationRule RuleUnderTest { get; } = DocumentValidationRules.LoneSchemaDefinition; 18 | } 19 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/Configuration/Infrastructure/ICollectionExplicitConfigurationFixture.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Tests.Configuration.Infrastructure 9 | { 10 | public interface ICollectionExplicitConfigurationFixture : ICollectionConfigurationFixture 11 | { 12 | } 13 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/Configuration/Infrastructure/ILeafExplicitConfigurationFixture.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Tests.Configuration.Infrastructure 9 | { 10 | public interface ILeafExplicitConfigurationFixture : ILeafConfigurationFixture 11 | { 12 | } 13 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/Configuration/Infrastructure/LeafConventionContext.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | namespace GraphZen.TypeSystem.Tests.Configuration.Infrastructure 11 | { 12 | public class LeafConventionContext 13 | { 14 | public string ParentName { get; set; } 15 | 16 | public object DataAnnotationValue { get; set; } 17 | } 18 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/Configuration/Schema/Directives/Schema_Directives_Explicit.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Tests.Configuration.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Tests.Configuration.Directives 10 | { 11 | // ReSharper disable once InconsistentNaming 12 | public class Schema_Directives_Explicit : Schema_Directives, ICollectionExplicitConfigurationFixture 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/Configuration/Schema/Enums/Description/Enum_Explicit_Description.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Tests.Configuration.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Tests.Configuration.Enums.Description 10 | { 11 | // ReSharper disable once InconsistentNaming 12 | public class Enum_Explicit_Description : Enum_Description, ILeafExplicitConfigurationFixture 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/Configuration/Schema/Enums/EnumValues/Enum_Values_Explicit.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Tests.Configuration.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Tests.Configuration.Enums.EnumValues 10 | { 11 | // ReSharper disable once InconsistentNaming 12 | public class Enum_Values_Explicit : Enum_Values, ICollectionExplicitConfigurationFixture 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/Configuration/Schema/Enums/Schema_Enums_Explicit.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Tests.Configuration.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Tests.Configuration.Enums 10 | { 11 | // ReSharper disable once InconsistentNaming 12 | public class Schema_Enums_Explicit : Schema_Enums, ICollectionExplicitConfigurationFixture 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/Configuration/Schema/InputObjects/Fields/InputObject_Fields_Explicit.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Tests.Configuration.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Tests.Configuration.InputObjects.Fields 10 | { 11 | // ReSharper disable once InconsistentNaming 12 | public class InputObject_Fields_Explicit : InputObject_Fields, ICollectionExplicitConfigurationFixture 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/Configuration/Schema/InputObjects/Schema_InputObjects_Explicit.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Tests.Configuration.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Tests.Configuration.InputObjects 10 | { 11 | // ReSharper disable once InconsistentNaming 12 | public class Schema_InputObjects_Explicit : Schema_InputObjects, ICollectionExplicitConfigurationFixture 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/Configuration/Schema/Interfaces/Fields/Interface_Fields_Explicit.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Tests.Configuration.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Tests.Configuration.Interfaces.Fields 10 | { 11 | // ReSharper disable once InconsistentNaming 12 | public class Interface_Fields_Explicit : Interface_Fields, ICollectionExplicitConfigurationFixture 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/Configuration/Schema/Interfaces/Schema_Interfaces_Explicit.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Tests.Configuration.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Tests.Configuration.Interfaces 10 | { 11 | // ReSharper disable once InconsistentNaming 12 | public class Schema_Interfaces_Explicit : Schema_Interfaces, ICollectionExplicitConfigurationFixture 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/Configuration/Schema/Objects/Description/Object_Explicit_Description.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Tests.Configuration.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Tests.Configuration.Objects.Description 10 | { 11 | // ReSharper disable once InconsistentNaming 12 | public class Object_Explicit_Description : Object_Description, ILeafExplicitConfigurationFixture 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/Configuration/Schema/Objects/Fields/Object_Fields_Explicit.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Tests.Configuration.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Tests.Configuration.Objects.Fields 10 | { 11 | // ReSharper disable once InconsistentNaming 12 | public class Object_Fields_Explicit : Object_Fields, ICollectionExplicitConfigurationFixture 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/Configuration/Schema/Objects/Interfaces/Object_Interfaces_Explicit.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Tests.Configuration.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Tests.Configuration.Objects.Interfaces 10 | { 11 | // ReSharper disable once InconsistentNaming 12 | public class Object_Interfaces_Explicit : Object_Interfaces, ICollectionExplicitConfigurationFixture 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/Configuration/Schema/Objects/Schema_Objects_Explicit.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Tests.Configuration.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Tests.Configuration.Objects 10 | { 11 | // ReSharper disable once InconsistentNaming 12 | public class Schema_Objects_Explicit : Schema_Objects, ICollectionExplicitConfigurationFixture 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/Configuration/Schema/Scalars/Description/Scalar_Explicit_Description.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Tests.Configuration.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Tests.Configuration.Scalars.Description 10 | { 11 | // ReSharper disable once InconsistentNaming 12 | public class Scalar_Explicit_Description : Scalar_Description, ILeafExplicitConfigurationFixture 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/Configuration/Schema/Scalars/Schema_Scalars_Explicit.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Tests.Configuration.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Tests.Configuration.Scalars 10 | { 11 | // ReSharper disable once InconsistentNaming 12 | public class Schema_Scalars_Explicit : Schema_Scalars, ICollectionExplicitConfigurationFixture 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/Configuration/Schema/Unions/Description/Union_Explicit_Description.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Tests.Configuration.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Tests.Configuration.Unions.Description 10 | { 11 | // ReSharper disable once InconsistentNaming 12 | public class Union_Explicit_Description : Union_Description, ILeafExplicitConfigurationFixture 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/Configuration/Schema/Unions/Schema_Unions_Explicit.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using GraphZen.TypeSystem.Tests.Configuration.Infrastructure; 7 | using JetBrains.Annotations; 8 | 9 | namespace GraphZen.TypeSystem.Tests.Configuration.Unions 10 | { 11 | // ReSharper disable once InconsistentNaming 12 | public class Schema_Unions_Explicit : Schema_Unions, ICollectionExplicitConfigurationFixture 13 | { 14 | } 15 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/CoreOptionsExtensionTests.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using FluentAssertions; 6 | using GraphZen.Infrastructure; 7 | using JetBrains.Annotations; 8 | using Xunit; 9 | 10 | namespace GraphZen.TypeSystem.Tests 11 | { 12 | public class CoreOptionsExtensionTests 13 | { 14 | [Fact] 15 | public void it_should_have_default_constructor() 16 | { 17 | new CoreOptionsExtension().Should().NotBeNull(); 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/Definitions/BlogMutationContext.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.TypeSystem.Tests 12 | { 13 | public class BlogMutationContext : BlogContext 14 | { 15 | protected internal override void OnSchemaCreating(SchemaBuilder schema) 16 | { 17 | base.OnSchemaCreating(schema); 18 | schema.MutationType("Mutation"); 19 | } 20 | } 21 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/Definitions/Builders/TypeNodeClrTests.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | #nullable disable 9 | 10 | 11 | namespace GraphZen.TypeSystem.Tests 12 | { 13 | [NoReorder] 14 | public class TypeNodeClrTests 15 | { 16 | public class Foo 17 | { 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/GraphZen.TypeSystem.Tests.v3.ncrunchproject: -------------------------------------------------------------------------------- 1 |  2 | 3 | -------------------------------------------------------------------------------- /test/GraphZen.TypeSystem.Tests/StringLiteral.cs: -------------------------------------------------------------------------------- 1 | // Copyright (c) GraphZen LLC. All rights reserved. 2 | // Licensed under the GraphZen Community License. See the LICENSE file in the project root for license information. 3 | 4 | using System.Diagnostics.CodeAnalysis; 5 | using GraphZen.Infrastructure; 6 | using JetBrains.Annotations; 7 | 8 | namespace GraphZen.TypeSystem.Tests 9 | { 10 | internal struct StringLiteral : IInspectable 11 | { 12 | public StringLiteral(string value) 13 | { 14 | Value = value; 15 | } 16 | 17 | public string Value { get; set; } 18 | 19 | public string GetDisplayValue() => Value; 20 | } 21 | } -------------------------------------------------------------------------------- /tools/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | --------------------------------------------------------------------------------