aboutsummaryrefslogtreecommitdiff
path: root/tools/importer/ACDv2Reader.go
diff options
context:
space:
mode:
Diffstat (limited to 'tools/importer/ACDv2Reader.go')
-rw-r--r--tools/importer/ACDv2Reader.go17
1 files changed, 17 insertions, 0 deletions
diff --git a/tools/importer/ACDv2Reader.go b/tools/importer/ACDv2Reader.go
index 2ddca4d..974da52 100644
--- a/tools/importer/ACDv2Reader.go
+++ b/tools/importer/ACDv2Reader.go
@@ -9,6 +9,8 @@ import (
9 "fagott.pw/grilist/modules/grils" 9 "fagott.pw/grilist/modules/grils"
10) 10)
11 11
12const failMsg = "Offenbar war meine Annahme bzgl. der Traits nicht ganz korrekt"
13
12type ACDv2Reader struct{} 14type ACDv2Reader struct{}
13 15
14type ACDv2NameValue struct { 16type ACDv2NameValue struct {
@@ -58,6 +60,21 @@ func (r *ACDv2Reader) Read(path string) WrappedGril {
58 for _, v := range jObj.Tags { 60 for _, v := range jObj.Tags {
59 g.Gril.Tags = append(g.Gril.Tags, v.Name) 61 g.Gril.Tags = append(g.Gril.Tags, v.Name)
60 } 62 }
63 g.Gril.Traits = make([]grils.Trait, 0)
64 if len(jObj.Traits.Official) != len(jObj.Traits.Indexed) {
65 panic(failMsg)
66 }
67 for i := 0; i < len(jObj.Traits.Official); i++ {
68 if jObj.Traits.Official[i].Name != jObj.Traits.Indexed[i].Name {
69 panic(failMsg)
70 }
71 t := grils.Trait{
72 Name: jObj.Traits.Official[i].Name,
73 Value: jObj.Traits.Indexed[i].Value,
74 OfficialValue: jObj.Traits.Official[i].Value,
75 }
76 g.Gril.Traits = append(g.Gril.Traits, t)
77 }
61 return g 78 return g
62} 79}
63 80