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