...
1 package validator
2
3 import (
4 "github.com/vektah/gqlparser/ast"
5 . "github.com/vektah/gqlparser/validator"
6 )
7
8 func init() {
9 AddRule("UniqueFragmentNames", func(observers *Events, addError AddErrFunc) {
10 seenFragments := map[string]bool{}
11
12 observers.OnFragment(func(walker *Walker, fragment *ast.FragmentDefinition) {
13 if seenFragments[fragment.Name] {
14 addError(
15 Message(`There can be only one fragment named "%s".`, fragment.Name),
16 At(fragment.Position),
17 )
18 }
19 seenFragments[fragment.Name] = true
20 })
21 })
22 }
23
View as plain text