@@ -29,7 +29,7 @@ use crate::{
29
29
} ;
30
30
use clap:: ArgMatches ;
31
31
use std:: error:: Error ;
32
- use tes3:: esp:: { Dialogue , FixedString , TES3Object , TypeInfo } ;
32
+ use tes3:: esp:: { Dialogue , FixedString , TES3Object } ;
33
33
34
34
pub struct Validator < ' a > {
35
35
handlers : Handlers < ' a > ,
@@ -49,37 +49,15 @@ impl<'a> Validator<'a> {
49
49
let mut current_topic = & dummy;
50
50
for record in records {
51
51
match record {
52
- TES3Object :: Activator ( r) => {
53
- self . handlers
54
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
55
- }
56
- TES3Object :: Alchemy ( r) => {
57
- self . handlers
58
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
59
- }
60
- TES3Object :: Apparatus ( r) => {
61
- self . handlers
62
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
63
- }
64
- TES3Object :: Armor ( r) => {
65
- self . handlers
66
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
67
- }
68
- TES3Object :: Birthsign ( r) => {
69
- self . handlers
70
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
71
- }
72
- TES3Object :: Bodypart ( r) => {
73
- self . handlers
74
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
75
- }
76
- TES3Object :: Book ( r) => {
77
- self . handlers
78
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
79
- }
52
+ TES3Object :: Activator ( _) => self . handlers . on_record ( & self . context , record) ,
53
+ TES3Object :: Alchemy ( _) => self . handlers . on_record ( & self . context , record) ,
54
+ TES3Object :: Apparatus ( _) => self . handlers . on_record ( & self . context , record) ,
55
+ TES3Object :: Armor ( _) => self . handlers . on_record ( & self . context , record) ,
56
+ TES3Object :: Birthsign ( _) => self . handlers . on_record ( & self . context , record) ,
57
+ TES3Object :: Bodypart ( _) => self . handlers . on_record ( & self . context , record) ,
58
+ TES3Object :: Book ( _) => self . handlers . on_record ( & self . context , record) ,
80
59
TES3Object :: Cell ( r) => {
81
- self . handlers
82
- . on_record ( & self . context , record, r. type_name ( ) , & r. name ) ;
60
+ self . handlers . on_record ( & self . context , record) ;
83
61
let refs: Vec < _ > = r. references . values ( ) . collect ( ) ;
84
62
for ( i, reference) in refs. iter ( ) . enumerate ( ) {
85
63
self . handlers . on_cellref (
@@ -92,143 +70,66 @@ impl<'a> Validator<'a> {
92
70
) ;
93
71
}
94
72
}
95
- TES3Object :: Class ( r) => {
96
- self . handlers
97
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
98
- }
99
- TES3Object :: Clothing ( r) => {
100
- self . handlers
101
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
102
- }
73
+ TES3Object :: Class ( _) => self . handlers . on_record ( & self . context , record) ,
74
+ TES3Object :: Clothing ( _) => self . handlers . on_record ( & self . context , record) ,
103
75
TES3Object :: Container ( r) => {
104
- self . handlers
105
- . on_record ( & self . context , record, r. type_name ( ) , & r. id ) ;
76
+ self . handlers . on_record ( & self . context , record) ;
106
77
self . on_inventory ( record, & r. inventory ) ;
107
78
}
108
79
TES3Object :: Creature ( r) => {
109
- self . handlers
110
- . on_record ( & self . context , record, r. type_name ( ) , & r. id ) ;
80
+ self . handlers . on_record ( & self . context , record) ;
111
81
self . on_inventory ( record, & r. inventory ) ;
112
82
}
113
83
TES3Object :: Dialogue ( r) => {
114
- self . handlers
115
- . on_record ( & self . context , record, r. type_name ( ) , & r. id ) ;
84
+ self . handlers . on_record ( & self . context , record) ;
116
85
current_topic = r;
117
86
}
118
- TES3Object :: Door ( r) => {
119
- self . handlers
120
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
121
- }
122
- TES3Object :: Enchanting ( r) => {
123
- self . handlers
124
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
125
- }
126
- TES3Object :: Faction ( r) => {
127
- self . handlers
128
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
129
- }
130
- TES3Object :: GameSetting ( r) => {
131
- self . handlers
132
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
133
- }
134
- TES3Object :: GlobalVariable ( r) => {
135
- self . handlers
136
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
137
- }
87
+ TES3Object :: Door ( _) => self . handlers . on_record ( & self . context , record) ,
88
+ TES3Object :: Enchanting ( _) => self . handlers . on_record ( & self . context , record) ,
89
+ TES3Object :: Faction ( _) => self . handlers . on_record ( & self . context , record) ,
90
+ TES3Object :: GameSetting ( _) => self . handlers . on_record ( & self . context , record) ,
91
+ TES3Object :: GlobalVariable ( _) => self . handlers . on_record ( & self . context , record) ,
138
92
TES3Object :: Header ( _) => { }
139
93
TES3Object :: DialogueInfo ( r) => {
140
- self . handlers
141
- . on_record ( & self . context , record, r. type_name ( ) , & r. id ) ;
94
+ self . handlers . on_record ( & self . context , record) ;
142
95
self . handlers . on_info ( & self . context , r, current_topic) ;
143
96
self . on_script ( record, & r. script_text , current_topic) ;
144
97
}
145
- TES3Object :: Ingredient ( r) => {
146
- self . handlers
147
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
148
- }
98
+ TES3Object :: Ingredient ( _) => self . handlers . on_record ( & self . context , record) ,
149
99
TES3Object :: Landscape ( _) => { }
150
100
TES3Object :: LandscapeTexture ( _) => { }
151
101
TES3Object :: LeveledCreature ( r) => {
152
- self . handlers
153
- . on_record ( & self . context , record, r. type_name ( ) , & r. id ) ;
102
+ self . handlers . on_record ( & self . context , record) ;
154
103
self . on_leveled ( record, & r. creatures ) ;
155
104
}
156
105
TES3Object :: LeveledItem ( r) => {
157
- self . handlers
158
- . on_record ( & self . context , record, r. type_name ( ) , & r. id ) ;
106
+ self . handlers . on_record ( & self . context , record) ;
159
107
self . on_leveled ( record, & r. items ) ;
160
108
}
161
- TES3Object :: Light ( r) => {
162
- self . handlers
163
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
164
- }
165
- TES3Object :: Lockpick ( r) => {
166
- self . handlers
167
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
168
- }
169
- TES3Object :: MagicEffect ( r) => {
170
- self . handlers
171
- . on_record ( & self . context , record, r. type_name ( ) , "" )
172
- }
173
- TES3Object :: MiscItem ( r) => {
174
- self . handlers
175
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
176
- }
109
+ TES3Object :: Light ( _) => self . handlers . on_record ( & self . context , record) ,
110
+ TES3Object :: Lockpick ( _) => self . handlers . on_record ( & self . context , record) ,
111
+ TES3Object :: MagicEffect ( _) => self . handlers . on_record ( & self . context , record) ,
112
+ TES3Object :: MiscItem ( _) => self . handlers . on_record ( & self . context , record) ,
177
113
TES3Object :: Npc ( r) => {
178
- self . handlers
179
- . on_record ( & self . context , record, r. type_name ( ) , & r. id ) ;
114
+ self . handlers . on_record ( & self . context , record) ;
180
115
self . on_inventory ( record, & r. inventory ) ;
181
116
}
182
- TES3Object :: PathGrid ( r) => {
183
- self . handlers
184
- . on_record ( & self . context , record, r. type_name ( ) , "" )
185
- }
186
- TES3Object :: Probe ( r) => {
187
- self . handlers
188
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
189
- }
190
- TES3Object :: Race ( r) => {
191
- self . handlers
192
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
193
- }
194
- TES3Object :: Region ( r) => {
195
- self . handlers
196
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
197
- }
198
- TES3Object :: RepairItem ( r) => {
199
- self . handlers
200
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
201
- }
117
+ TES3Object :: PathGrid ( _) => self . handlers . on_record ( & self . context , record) ,
118
+ TES3Object :: Probe ( _) => self . handlers . on_record ( & self . context , record) ,
119
+ TES3Object :: Race ( _) => self . handlers . on_record ( & self . context , record) ,
120
+ TES3Object :: Region ( _) => self . handlers . on_record ( & self . context , record) ,
121
+ TES3Object :: RepairItem ( _) => self . handlers . on_record ( & self . context , record) ,
202
122
TES3Object :: Script ( r) => {
203
- self . handlers
204
- . on_record ( & self . context , record, r. type_name ( ) , & r. id ) ;
123
+ self . handlers . on_record ( & self . context , record) ;
205
124
self . on_script ( record, & r. text , & dummy) ;
206
125
}
207
126
TES3Object :: Skill ( _) => { }
208
- TES3Object :: Sound ( r) => {
209
- self . handlers
210
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
211
- }
212
- TES3Object :: SoundGen ( r) => {
213
- self . handlers
214
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
215
- }
216
- TES3Object :: Spell ( r) => {
217
- self . handlers
218
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
219
- }
220
- TES3Object :: StartScript ( r) => {
221
- self . handlers
222
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
223
- }
224
- TES3Object :: Static ( r) => {
225
- self . handlers
226
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
227
- }
228
- TES3Object :: Weapon ( r) => {
229
- self . handlers
230
- . on_record ( & self . context , record, r. type_name ( ) , & r. id )
231
- }
127
+ TES3Object :: Sound ( _) => self . handlers . on_record ( & self . context , record) ,
128
+ TES3Object :: SoundGen ( _) => self . handlers . on_record ( & self . context , record) ,
129
+ TES3Object :: Spell ( _) => self . handlers . on_record ( & self . context , record) ,
130
+ TES3Object :: StartScript ( _) => self . handlers . on_record ( & self . context , record) ,
131
+ TES3Object :: Static ( _) => self . handlers . on_record ( & self . context , record) ,
132
+ TES3Object :: Weapon ( _) => self . handlers . on_record ( & self . context , record) ,
232
133
}
233
134
}
234
135
self . handlers . on_end ( & self . context ) ;
0 commit comments