コード例 #1
0
        private T RemoveFields <T>(
            T typeDefinition,
            RewriteFieldsDelegate <T> rewrite)
            where T : ComplexTypeDefinitionNodeBase, ITypeDefinitionNode
        {
            var renamedFields = new List <FieldDefinitionNode>();

            foreach (FieldDefinitionNode field in typeDefinition.Fields)
            {
                if (!Field.FieldName.Equals(field.Name.Value))
                {
                    renamedFields.Add(field);
                }
            }

            return(rewrite(renamedFields));
        }
コード例 #2
0
        private T RenameFields <T>(
            T typeDefinition,
            NameString schemaName,
            RewriteFieldsDelegate <T> rewrite)
            where T : ComplexTypeDefinitionNodeBase, ITypeDefinitionNode
        {
            var renamedFields = new List <FieldDefinitionNode>();

            foreach (FieldDefinitionNode field in typeDefinition.Fields)
            {
                renamedFields.Add(
                    Field.FieldName.Equals(field.Name.Value)
                        ? field.Rename(NewFieldName, schemaName)
                        : field);
            }

            return(rewrite(renamedFields));
        }
コード例 #3
0
        private T SelectField <T>(
            T typeDefinition,
            NameString schemaName,
            RewriteFieldsDelegate <T> rewrite)
            where T : ComplexTypeDefinitionNodeBase, ITypeDefinitionNode
        {
            var renamedFields = new List <FieldDefinitionNode>();

            foreach (FieldDefinitionNode field in typeDefinition.Fields)
            {
                if (Field.FieldName.Equals(field.Name.Value))
                {
                    renamedFields.Add(RewriteArgument(schemaName, field));
                }
                else
                {
                    renamedFields.Add(field);
                }
            }

            return(rewrite(renamedFields));
        }