|
|
#4 |
|
Участник
|
Вот небольшой скрипт для поиска "проблемных" значений перечислений. У меня нашлось 418 значений в 190 перечислениях
X++: // gl00mie, 20070503 --> #AOT static void AOTprintEnumValuesUnlabeled(Args _args) { TreeNodeIterator tnIterator; TreeNode tnEnum; DictEnum dtEnum; boolean bEnumIsOk; str strValueLabel; int i; int cnProcessed = 0; int cnUnlabeled = 0; int cnEnumsNotOk= 0; ; tnIterator = TreeNode::findNode(#BaseEnumsPath).AOTiterator(); while(true) { tnEnum = tnIterator.next(); if(!tnEnum) break; cnProcessed++; dtEnum = new DictEnum(tnEnum.applObjectId()); if(!dtEnum) { error(strfmt(@"Failed to create DictEnum object for '%1\%2' (objectId %3)!", #BaseEnumsPath, tnEnum.AOTname(), tnEnum.applObjectId())); continue; } bEnumIsOk = true; for(i=0; i<dtEnum.values(); i++) { strValueLabel = dtEnum.index2Label(i); if(!strValueLabel) { cnUnlabeled++; bEnumIsOk = false; warning(strfmt(@"%1::%2 (value %3) has no label!", dtEnum.name(), dtEnum.index2Symbol(i), dtEnum.index2Value(i))); } } if(!bEnumIsOk) cnEnumsNotOk++; } info(strfmt(@"%1 base enums processed, %2 unlabeled enum values found in %3 enums", cnProcessed, cnUnlabeled, cnEnumsNotOk)); } // gl00mie, 20070503 <-- Последний раз редактировалось gl00mie; 03.05.2007 в 12:48. Причина: приделал вывод числа "проблемных" перечислений |
|
|
|
| За это сообщение автора поблагодарили: oip (10). | |