Skip to content

Commit 655a983

Browse files
committed
Замечания по ревью
1 parent ef1ade3 commit 655a983

File tree

1 file changed

+6
-61
lines changed

1 file changed

+6
-61
lines changed

src/core/Классы/Версия.os

+6-61
Original file line numberDiff line numberDiff line change
@@ -186,39 +186,18 @@
186186
Парсер.Следующий();
187187

188188
Попытка
189-
ПрочитатьОсновную(Парсер);
189+
ПрочитатьЧислоДоРазделителя(Парсер, Основная, "Основная версия");
190190
ПрочитатьРазделитель(Парсер, ".");
191-
ПрочитатьВторостепенную(Парсер);
191+
ПрочитатьЧислоДоРазделителя(Парсер, Второстепенная, "Второстепенная версия");
192192
ПрочитатьРазделитель(Парсер, ".");
193-
ПрочитатьПатч(Парсер);
193+
ПрочитатьЧислоДоРазделителя(Парсер, Патч, "Версия патча");
194194
ПрочитатьХвостовыеМассивы(Парсер);
195195
Исключение
196196
ОшибкаЧтенияВерсии = ИнформацияОбОшибке().Описание;
197197
КонецПопытки;
198198

199199
КонецПроцедуры
200200

201-
Процедура ПрочитатьОчереднойРазделитель(Знач Парсер, Знач Разделитель)
202-
203-
ТекущийТокен = Парсер.Следующий();
204-
Если ТекущийТокен.Тип = Парсер.ТипКонецТекста Тогда
205-
Возврат;
206-
КонецЕсли;
207-
208-
Если ТекущийТокен.Тип = Парсер.ТипРазделитель Тогда
209-
Если Разделитель = ТекущийТокен.Значение Тогда
210-
СледующийТокен = Парсер.Следующий();
211-
Если СледующийТокен.Тип = Парсер.ТипКонецТекста Тогда
212-
ВызватьИсключение СтрШаблон("Неожиданный конец строки версии, нет данных после разделителя <%1>", Разделитель);
213-
КонецЕсли;
214-
Возврат;
215-
КонецЕсли;
216-
КонецЕсли;
217-
218-
ВызватьИсключение СтрШаблон("Ожидается разделитель <%1>, но получен <%2>", Разделитель, ТекущийТокен.Значение);
219-
220-
КонецПроцедуры
221-
222201
Процедура ПрочитатьРазделитель(Знач Парсер, Знач Разделитель)
223202

224203
ТекущийТокен = Парсер.Текущий();
@@ -240,52 +219,18 @@
240219

241220
КонецПроцедуры
242221

243-
Процедура ПрочитатьОсновную(Знач Парсер)
244-
Токен = Парсер.Текущий();
245-
Если Токен.Тип = Парсер.ТипКонецТекста Тогда
246-
Возврат;
247-
КонецЕсли;
248-
249-
Если Токен.Тип = Парсер.ТипЧисло Тогда
250-
Основная = Число(Токен.Значение);
251-
ИначеЕсли Токен.Тип = Парсер.ТипОшибка Тогда
252-
ВызватьИсключение Токен.Значение;
253-
Иначе
254-
ВызватьИсключение СтрШаблон("Основная версия <%1> должна содержать только цифры", Токен.Значение);
255-
КонецЕсли;
256-
257-
Парсер.Следующий();
258-
КонецПроцедуры
259-
260-
Процедура ПрочитатьВторостепенную(Знач Парсер)
261-
Токен = Парсер.Текущий();
262-
Если Токен.Тип = Парсер.ТипКонецТекста Тогда
263-
Возврат;
264-
КонецЕсли;
265-
266-
Если Токен.Тип = Парсер.ТипЧисло Тогда
267-
Второстепенная = Число(Токен.Значение);
268-
ИначеЕсли Токен.Тип = Парсер.ТипОшибка Тогда
269-
ВызватьИсключение Токен.Значение;
270-
Иначе
271-
ВызватьИсключение СтрШаблон("Второстепенная версия <%1> должна содержать только цифры", Токен.Значение);
272-
КонецЕсли;
273-
274-
Парсер.Следующий();
275-
КонецПроцедуры
276-
277-
Процедура ПрочитатьПатч(Знач Парсер)
222+
Процедура ПрочитатьЧислоДоРазделителя(Знач Парсер, Результат, Знач УточнениеИсключения)
278223
Токен = Парсер.Текущий();
279224
Если Токен.Тип = Парсер.ТипКонецТекста Тогда
280225
Возврат;
281226
КонецЕсли;
282227

283228
Если Токен.Тип = Парсер.ТипЧисло Тогда
284-
Патч = Число(Токен.Значение);
229+
Результат = Число(Токен.Значение);
285230
ИначеЕсли Токен.Тип = Парсер.ТипОшибка Тогда
286231
ВызватьИсключение Токен.Значение;
287232
Иначе
288-
ВызватьИсключение СтрШаблон("Версия патча <%1> должна содержать только цифры", Токен.Значение);
233+
ВызватьИсключение СтрШаблон("%1 <%2> должна содержать только цифры", УточнениеИсключения, Токен.Значение);
289234
КонецЕсли;
290235

291236
Парсер.Следующий();

0 commit comments

Comments
 (0)