1
0
mirror of https://github.com/1C-Company/v8-code-style.git synced 2025-05-30 15:57:33 +02:00

Merge pull request #1469 from 1C-Company/fix_validation_messages

Исправление ошибок в сообщениях
This commit is contained in:
Vadim Geraskin 2024-10-09 14:58:04 +07:00 committed by GitHub
commit 22c48c20f6
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 32 additions and 23 deletions

View File

@ -16,11 +16,11 @@ AbstractDynamicFeatureAccessTypeCheck_Skip_source_object_types = Если объ
DocCommentFieldTypeCheck_Field__N__has_no_type_definition = Поле "{0}" не имеет определения типа DocCommentFieldTypeCheck_Field__N__has_no_type_definition = Поле "{0}" не имеет определения типа
DocCommentFieldTypeCheck_description = Система строгой типизации кода проверяет что поле документирующего комментария имеет описание типа DocCommentFieldTypeCheck_description = Система строгой типизации кода проверяет, что поле документирующего комментария имеет описание типа
DocCommentFieldTypeCheck_title = Поле документирующего комментария имеет описание типа DocCommentFieldTypeCheck_title = Поле документирующего комментария имеет описание типа
DynamicFeatureAccessMethodNotFoundCheck_description = Система строгой типизации кода проверяет что динамически вызываемый метод существует в объекте DynamicFeatureAccessMethodNotFoundCheck_description = Система строгой типизации кода проверяет, что динамически вызываемый метод существует в объекте
DynamicFeatureAccessMethodNotFoundCheck_title = Метод в объекте не найден DynamicFeatureAccessMethodNotFoundCheck_title = Метод в объекте не найден
@ -28,11 +28,11 @@ DynamicFeatureAccessTypeCheck_Feature_access_M_has_no_return_type = Свойст
DynamicFeatureAccessTypeCheck_Method_M_not_found_in_accessed_object = Метод "{0}" не найден в исходном объекте DynamicFeatureAccessTypeCheck_Method_M_not_found_in_accessed_object = Метод "{0}" не найден в исходном объекте
DynamicFeatureAccessTypeCheck_description = Система строгой типизации кода проверяет что динамическое свойство объекта имеет тип возвращаемого значения DynamicFeatureAccessTypeCheck_description = Система строгой типизации кода проверяет, что динамическое свойство объекта имеет тип возвращаемого значения
DynamicFeatureAccessTypeCheck_title = Свойство объекта имеет тип возвращаемого значения DynamicFeatureAccessTypeCheck_title = Свойство объекта имеет тип возвращаемого значения
FunctionCtorReturnSectionCheck_Declared_property__N__with_type__T__missing_returning_types__M = Декларируемое свойство "{0}" с типом: "{1}" не содержит возвращемые типы "{2}" FunctionCtorReturnSectionCheck_Declared_property__N__with_type__T__missing_returning_types__M = Декларируемое свойство "{0}" с типом: "{1}" не содержит возвращаемые типы "{2}"
FunctionCtorReturnSectionCheck_Declared_property__N__with_type__T__not_returning = Декларируемое свойство "{0}" с типом: "{1}" не возвращается FunctionCtorReturnSectionCheck_Declared_property__N__with_type__T__not_returning = Декларируемое свойство "{0}" с типом: "{1}" не возвращается
@ -42,25 +42,25 @@ FunctionCtorReturnSectionCheck_Return_non_declared_type__T = Возвращае
FunctionCtorReturnSectionCheck_User_extandable_Data_type_list_comma_separated = Список типов данных расширяемых пользователем, через запятую FunctionCtorReturnSectionCheck_User_extandable_Data_type_list_comma_separated = Список типов данных расширяемых пользователем, через запятую
FunctionCtorReturnSectionCheck_description = Система строгой типизации кода проверяет что возвращаемые значения функции эквивалентны секции возвращаемого значения документирующего комментария FunctionCtorReturnSectionCheck_description = Система строгой типизации кода проверяет, что возвращаемые значения функции эквивалентны секции возвращаемого значения документирующего комментария
FunctionCtorReturnSectionCheck_title = Секция возвращаемого значения функции-конструктора данных FunctionCtorReturnSectionCheck_title = Секция возвращаемого значения функции-конструктора данных
FunctionReturnTypeCheck_Function_has_no_return_value_type = Функция не имеет типа возвращаемого значения FunctionReturnTypeCheck_Function_has_no_return_value_type = Функция не имеет типа возвращаемого значения
FunctionReturnTypeCheck_description = Система строгой типизации кода проверяет что каждая функция возвращает типизированное значение FunctionReturnTypeCheck_description = Система строгой типизации кода проверяет, что каждая функция возвращает типизированное значение
FunctionReturnTypeCheck_title = Функция возвращает типизированное значение FunctionReturnTypeCheck_title = Функция возвращает типизированное значение
InvocationParamIntersectionCheck_Allow_dynamic_types_check_for_local_method_call = Разрешить проверку динамических типов для вызова локального метода InvocationParamIntersectionCheck_Allow_dynamic_types_check_for_local_method_call = Разрешить проверку динамических типов для вызова локального метода
InvocationParamIntersectionCheck_description = Система строгой типизации кода проверяет что тип вызываемого выражения пересекается с типом параметра вызываемого метода InvocationParamIntersectionCheck_description = Система строгой типизации кода проверяет, что тип вызываемого выражения пересекается с типом параметра вызываемого метода
InvocationParamIntersectionCheck_title = Вызываемый тип пересекается с типом параметра InvocationParamIntersectionCheck_title = Вызываемый тип пересекается с типом параметра
MethodParamTypeCheck_Method_param_N_has_no_value_type = Параметр метода "{0}" не имеет типа значения MethodParamTypeCheck_Method_param_N_has_no_value_type = Параметр метода "{0}" не имеет типа значения
MethodParamTypeCheck_description = Система строгой типизации кода проверяет что каждый параметр метода имеет тип значения MethodParamTypeCheck_description = Система строгой типизации кода проверяет, что каждый параметр метода имеет тип значения
MethodParamTypeCheck_title = Параметр метода имеет тип MethodParamTypeCheck_title = Параметр метода имеет тип
@ -68,7 +68,7 @@ SimpleStatementTypeCheck_Allow_local_Variable_reset_to_Undefined_type = Разр
SimpleStatementTypeCheck_Value_type_N_changed_to_M = Тип значения "{0}" заменен на "{1}" SimpleStatementTypeCheck_Value_type_N_changed_to_M = Тип значения "{0}" заменен на "{1}"
SimpleStatementTypeCheck_description = Система строгой типизации кода проверяет что утверждение (строка присвоения значения) меняет тип SimpleStatementTypeCheck_description = Система строгой типизации кода проверяет, что утверждение (строка присвоения значения) меняет тип
SimpleStatementTypeCheck_title = Утверждение меняет тип SimpleStatementTypeCheck_title = Утверждение меняет тип
@ -80,7 +80,7 @@ StructureCtorValueTypeCheck_Structure_key__N__K__has_no_default_value_initialize
StructureCtorValueTypeCheck_Structure_key__N__K__value_initialized_with_empty_types = Ключ {0} "{1}" Структуры инициализируется с пустым типом StructureCtorValueTypeCheck_Structure_key__N__K__value_initialized_with_empty_types = Ключ {0} "{1}" Структуры инициализируется с пустым типом
StructureCtorValueTypeCheck_description = Проверяет строковый литерал в конструкторе структуры что каждый ключ имеет типзированное значение StructureCtorValueTypeCheck_description = Проверяет строковый литерал в конструкторе структуры, что каждый ключ имеет типзированное значение
StructureCtorValueTypeCheck_title = Типизация значений в конструкторе структуры StructureCtorValueTypeCheck_title = Типизация значений в конструкторе структуры
@ -106,6 +106,6 @@ TypedValueAddingToUntypedCollectionCheck_title = Добавление типиз
VariableTypeCheck_Variable_M_has_no_value_type = Переменная "{0}" не имеет типа VariableTypeCheck_Variable_M_has_no_value_type = Переменная "{0}" не имеет типа
VariableTypeCheck_description = Система строгой типизации кода проверяет что каждая переменная имеет тип значения VariableTypeCheck_description = Система строгой типизации кода проверяет, что каждая переменная имеет тип значения
VariableTypeCheck_title = Переменная имеет тип значения VariableTypeCheck_title = Переменная имеет тип значения

View File

@ -32,6 +32,7 @@ import com._1c.g5.v8.dt.form.model.FormItem;
import com._1c.g5.v8.dt.form.model.FormItemContainer; import com._1c.g5.v8.dt.form.model.FormItemContainer;
import com._1c.g5.v8.dt.form.model.FormPackage; import com._1c.g5.v8.dt.form.model.FormPackage;
import com._1c.g5.v8.dt.form.service.FormItemInformationService; import com._1c.g5.v8.dt.form.service.FormItemInformationService;
import com._1c.g5.v8.dt.mcore.Event;
import com._1c.g5.v8.dt.metadata.mdclass.ScriptVariant; import com._1c.g5.v8.dt.metadata.mdclass.ScriptVariant;
import com.e1c.g5.v8.dt.check.CheckComplexity; import com.e1c.g5.v8.dt.check.CheckComplexity;
import com.e1c.g5.v8.dt.check.ICheckParameters; import com.e1c.g5.v8.dt.check.ICheckParameters;
@ -48,7 +49,7 @@ import com.google.inject.Inject;
* @author Manaev Konstantin * @author Manaev Konstantin
*/ */
public class FormItemsSingleEventHandlerCheck public class FormItemsSingleEventHandlerCheck
extends BasicCheck extends BasicCheck<EObject>
{ {
private static final String CHECK_ID = "form-items-single-event-handler"; //$NON-NLS-1$ private static final String CHECK_ID = "form-items-single-event-handler"; //$NON-NLS-1$
@ -74,12 +75,12 @@ public class FormItemsSingleEventHandlerCheck
protected void check(Object object, ResultAcceptor resultAceptor, ICheckParameters parameters, protected void check(Object object, ResultAcceptor resultAceptor, ICheckParameters parameters,
IProgressMonitor monitor) IProgressMonitor monitor)
{ {
if (object instanceof Form) if (object instanceof Form form)
{ {
IV8Project project = v8ProjectManager.getProject((EObject)object); IV8Project v8project = v8ProjectManager.getProject((EObject)object);
ScriptVariant variant = project == null ? ScriptVariant.ENGLISH : project.getScriptVariant(); ScriptVariant variant = v8project == null ? ScriptVariant.ENGLISH : v8project.getScriptVariant();
Map<String, String> handlers = new TreeMap<>(String.CASE_INSENSITIVE_ORDER); Map<String, String> handlers = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
checkEObjectEventHandlers((EObject)object, handlers, variant, resultAceptor, monitor); checkEObjectEventHandlers(form, handlers, variant, resultAceptor, monitor);
} }
} }
@ -137,19 +138,27 @@ public class FormItemsSingleEventHandlerCheck
{ {
return; return;
} }
EventHandler event = eventIterator.next(); EventHandler eventHandler = eventIterator.next();
String handlerName = Event event = eventHandler.getEvent();
variant == ScriptVariant.ENGLISH ? event.getEvent().getName() : event.getEvent().getNameRu(); if (event.eIsProxy())
if (handlers.containsKey(event.getName())) {
continue;
}
String handlerName = eventHandler.getName();
String eventName = variant == ScriptVariant.ENGLISH ? event.getName() : event.getNameRu();
if (handlers.containsKey(handlerName))
{ {
resultAceptor.addIssue(MessageFormat.format( resultAceptor.addIssue(MessageFormat.format(
Messages.FormItemsSingleEventHandlerCheck_the_handler_is_already_assigned_to_event, handlerName, Messages.FormItemsSingleEventHandlerCheck_the_handler_is_already_assigned_to_event, handlerName,
handlers.get(event.getName())), event, FormPackage.Literals.EVENT_HANDLER__NAME); handlers.get(handlerName)), eventHandler, FormPackage.Literals.EVENT_HANDLER__NAME);
} }
else else
{ {
handlers.put(event.getName(), MessageFormat handlers.put(handlerName,
.format(Messages.FormItemsSingleEventHandlerCheck_itemName_dot_eventName, itemName, handlerName)); eventName != null ? MessageFormat
.format(Messages.FormItemsSingleEventHandlerCheck_itemName_dot_eventName, itemName, eventName)
: itemName);
} }
} }
} }