private void RegisterDependencies( IInitializationContext context, InterfaceTypeDefinition definition) { var dependencies = new List <ITypeReference>(); context.RegisterDependencyRange( definition.Fields.Select(t => t.Type), TypeDependencyKind.Default); context.RegisterDependencyRange( definition.Fields.SelectMany(t => t.Arguments) .Select(t => t.Type), TypeDependencyKind.Completed); context.RegisterDependencyRange( definition.Directives.Select(t => t.TypeReference), TypeDependencyKind.Completed); context.RegisterDependencyRange( definition.Fields.SelectMany(t => t.Directives) .Select(t => t.TypeReference), TypeDependencyKind.Completed); context.RegisterDependencyRange( definition.Fields.SelectMany(t => t.Arguments) .SelectMany(t => t.Directives) .Select(t => t.TypeReference), TypeDependencyKind.Completed); }
protected override void OnRegisterDependencies( IInitializationContext context, SchemaTypeDefinition definition) { base.OnRegisterDependencies(context, definition); context.RegisterDependencyRange( definition.Directives.Select(t => t.TypeReference), TypeDependencyKind.Completed); context.RegisterDependencyRange( definition.Directives.Select(t => t.Reference)); }
public static void RegisterDependencies( this IInitializationContext context, InputObjectTypeDefinition definition) { if (context == null) { throw new ArgumentNullException(nameof(context)); } if (definition == null) { throw new ArgumentNullException(nameof(definition)); } RegisterDirectiveDependencies(context, definition); foreach (InputFieldDefinition field in definition.Fields) { if (field.Type != null) { context.RegisterDependency(field.Type, TypeDependencyKind.Default); } context.RegisterDependencyRange( field.Directives.Select(t => t.TypeReference), TypeDependencyKind.Completed); } }
public static void RegisterDependencies( this IInitializationContext context, ObjectTypeDefinition definition) { if (context == null) { throw new ArgumentNullException(nameof(context)); } if (definition == null) { throw new ArgumentNullException(nameof(definition)); } context.RegisterDependencyRange( definition.Interfaces, TypeDependencyKind.Default); RegisterDirectiveDependencies(context, definition); RegisterFieldDependencies(context, definition.Fields); foreach (ObjectFieldDefinition field in definition.Fields) { if (field.Member != null) { context.RegisterResolver( field.Name, field.Member, definition.ClrType, field.ResolverType); } } }
protected override void OnRegisterDependencies( IInitializationContext context, UnionTypeDefinition definition) { base.OnRegisterDependencies(context, definition); context.RegisterDependencyRange( definition.Types, TypeDependencyKind.Default); context.RegisterDependencyRange( definition.Directives.Select(t => t.TypeReference), TypeDependencyKind.Completed); SetTypeIdentity(typeof(UnionType <>)); }
private static void RegisterAdditionalDependencies( this IInitializationContext context, DefinitionBase definition) { context.RegisterDependencyRange( definition.Dependencies); }
private static void RegisterDirectiveDependencies <T>( this IInitializationContext context, TypeDefinitionBase <T> definition) where T : class, ISyntaxNode { context.RegisterDependencyRange( definition.Directives.Select(t => t.TypeReference), TypeDependencyKind.Completed); }
private void RegisterDependencies( IInitializationContext context, DirectiveTypeDefinition definition) { var dependencies = new List <ITypeReference>(); context.RegisterDependencyRange( definition.Arguments.Select(t => t.Type), TypeDependencyKind.Completed); }
protected override void OnRegisterDependencies( IInitializationContext context, InputObjectTypeDefinition definition) { base.OnRegisterDependencies(context, definition); context.RegisterDependencyRange( definition.Fields.Select(t => t.Type), TypeDependencyKind.Default); context.RegisterDependencyRange( definition.Directives.Select(t => t.TypeReference), TypeDependencyKind.Completed); context.RegisterDependencyRange( definition.Fields.SelectMany(t => t.Directives) .Select(t => t.TypeReference), TypeDependencyKind.Completed); }
private void RegisterConfigurationDependencies( IInitializationContext context) { foreach (var group in _configrations.SelectMany(t => t.Dependencies) .GroupBy(t => t.Kind)) { context.RegisterDependencyRange( group.Select(t => t.TypeReference), group.Key); } }
private static void RegisterConfigurationDependencies( IInitializationContext context, TDefinition definition) { foreach (var group in definition.GetConfigurations() .SelectMany(t => t.Dependencies) .GroupBy(t => t.Kind)) { context.RegisterDependencyRange( group.Select(t => t.TypeReference), group.Key); } }
protected override void OnRegisterDependencies( IInitializationContext context, TDefinition definition) { base.OnRegisterDependencies(context, definition); ClrType = definition is IHasClrType clr && clr.ClrType != GetType() ? clr.ClrType : typeof(object); context.RegisterDependencyRange( definition.Directives.Select(t => t.Reference)); }
private static void RegisterEnumValueDependencies( this IInitializationContext context, IEnumerable <EnumValueDefinition> enumValues) { foreach (EnumValueDefinition enumValue in enumValues) { RegisterAdditionalDependencies(context, enumValue); context.RegisterDependencyRange( enumValue.Directives.Select(t => t.TypeReference), TypeDependencyKind.Completed); } }
private static void RegisterFieldDependencies( this IInitializationContext context, IEnumerable <ArgumentDefinition> fields) { foreach (ArgumentDefinition field in fields) { if (field.Type != null) { context.RegisterDependency(field.Type, TypeDependencyKind.Completed); } context.RegisterDependencyRange( field.Directives.Select(t => t.TypeReference), TypeDependencyKind.Completed); } }
private static void RegisterFieldDependencies( this IInitializationContext context, IEnumerable <OutputFieldDefinitionBase> fields) { foreach (OutputFieldDefinitionBase field in fields) { if (field.Type != null) { context.RegisterDependency(field.Type, TypeDependencyKind.Default); } context.RegisterDependencyRange( field.Directives.Select(t => t.TypeReference), TypeDependencyKind.Completed); RegisterFieldDependencies(context, fields.SelectMany(t => t.Arguments).ToList()); } }
public static void RegisterDependencies( this IInitializationContext context, InterfaceTypeDefinition definition) { if (context == null) { throw new ArgumentNullException(nameof(context)); } if (definition == null) { throw new ArgumentNullException(nameof(definition)); } context.RegisterDependencyRange( definition.Interfaces, TypeDependencyKind.Default); RegisterAdditionalDependencies(context, definition); RegisterDirectiveDependencies(context, definition); RegisterFieldDependencies(context, definition.Fields); }