protected virtual EnumerationGraphType ToEnumerationType(GraphQLEnumTypeDefinition enumDef)
        {
            var name       = (string)enumDef.Name.Value;
            var typeConfig = Types.For(name);

            AssertKnownType(typeConfig);

            var type = new EnumerationGraphType
            {
                Name        = name,
                Description = typeConfig.Description ?? enumDef.Description?.Value.ToString() ?? enumDef.Comment?.Text.ToString(),
            }.SetAstType(enumDef);

            OverrideDeprecationReason(type, typeConfig.DeprecationReason);

            if (enumDef.Values?.Count > 0) // just in case
            {
                foreach (var value in enumDef.Values)
                {
                    type.AddValue(ToEnumValue(value, typeConfig.Type));
                }
            }

            return(type);
        }
Exemplo n.º 2
0
        protected virtual EnumerationGraphType ToEnumerationType(GraphQLEnumTypeDefinition enumDef)
        {
            var type = new EnumerationGraphType();

            type.Name = enumDef.Name.Value;
            var values = enumDef.Values.Select(ToEnumValue);

            values.Apply(type.AddValue);
            return(type);
        }
        public virtual GraphQLEnumTypeDefinition BeginVisitEnumTypeDefinition(GraphQLEnumTypeDefinition node)
        {
            if (node.Directives != null)
            {
                this.BeginVisitNodeCollection(node.Directives);
            }

            if (node.Values != null)
            {
                this.BeginVisitNodeCollection(node.Values);
            }

            return(node);
        }
Exemplo n.º 4
0
        private string PrintEnumTypeDefinition(GraphQLEnumTypeDefinition node)
        {
            var name       = PrintName(node.Name);
            var directives = node.Directives?.Select(PrintDirective);
            var values     = node.Values?.Select(PrintEnumValueDefinition);

            return(Join(new[]
            {
                "enum",
                name,
                Join(directives, " "),
                Block(values) ?? "{ }"
            },
                        " "));
        }
Exemplo n.º 5
0
        protected virtual EnumerationGraphType ToEnumerationType(GraphQLEnumTypeDefinition enumDef)
        {
            var typeConfig = Types.For(enumDef.Name.Value);

            var type = new EnumerationGraphType
            {
                Name        = enumDef.Name.Value,
                Description = typeConfig.Description ?? enumDef.Comment?.Text
            };

            var values = enumDef.Values.Select(ToEnumValue);

            values.Apply(type.AddValue);
            return(type);
        }
Exemplo n.º 6
0
        protected virtual EnumerationGraphType ToEnumerationType(GraphQLEnumTypeDefinition enumDef)
        {
            var type = new EnumerationGraphType();

            type.Name = enumDef.Name.Value;

            ApplyDeprecatedDirective(enumDef.Directives, reason =>
            {
                type.DeprecationReason = reason;
            });

            var values = enumDef.Values.Select(ToEnumValue);

            values.Apply(type.AddValue);
            return(type);
        }
Exemplo n.º 7
0
 public EnumType(GraphQLEnumTypeDefinition op)
 {
     this.op = op;
 }