Код:
getNearestSharedAncestor (
Код:
getDefinitionByName (getQualifiedSuperclassName (HeirClass))
но
Код:
.shift();
Код:
tree[heir]
Код:
new Vector.<String>;
- тут не хватает скобок
Код:
throw (CLASS_DEBUG_NAME + "-> getNearestSharedAncestor: полученные наследники не принадлежат общему классу " + getQualifiedClassName (TopClass));
- throw строки вместо ошибки
Код:
TopClass: Class) : String
- разная стилистика :
Код:
var tree: Dictionary = new Dictionary();
if (!heirs.length) return null;
- наверное имеет смысл создавать словарь только если if не отработал
Добавлено через 1 минуту
Цитата:
for each (heir in heirs) if (tree[heir][0] != item2test) toCut = true;
if (!toCut) result = item2test;
|
Уже после первого присвоения toCut = true; следующий if не выполнится, соотвественно не имеет смысла гонять цикл после этого присвоения
Добавлено через 4 минуты
Код:
if (toCut) for each (heir in heirs) tree[heir].shift();
var item2test: String = tree[heirs[0]][0];
var toCut: Boolean = false;
сначала проверяем переменную toCut и только потом декларируем ее