public static boolean virtual_isDescendant_checkLoops_7165541881557222950( SNode thisNode, SNode nodeToCompare, Set<SNode> visited) { if (Classifier_Behavior.call_isSame_4855996797771684010( nodeToCompare, SNodeOperations.getNode( "f:java_stub#6354ebe7-c22a-4a0f-ac54-50b52ab9b065#java.lang(JDK/java.lang@java_stub)", "~Object"))) { return true; } if (SetSequence.fromSet(visited).contains(thisNode)) { if (LOG.isEnabledFor(Priority.ERROR)) { LOG.error( "circular hierarchy in class " + INamedConcept_Behavior.call_getFqName_1213877404258(thisNode)); } return false; } if (Classifier_Behavior.call_isSame_4855996797771684010(thisNode, nodeToCompare)) { return true; } if (SLinkOperations.getTarget(thisNode, "superclass", true) == null) { return false; } SetSequence.fromSet(visited).addElement(thisNode); return BehaviorReflection.invokeVirtual( Boolean.TYPE, SLinkOperations.getTarget( SLinkOperations.getTarget(thisNode, "superclass", true), "classifier", false), "virtual_isDescendant_checkLoops_7165541881557222950", new Object[] {nodeToCompare, visited}); }
public static String virtual_getUnitName_5067982036267369911(SNode thisNode) { String fqName = INamedConcept_Behavior.call_getFqName_1213877404258(thisNode); if (SNodeOperations.getAncestor( thisNode, "jetbrains.mps.baseLanguage.structure.Classifier", false, false) == null) { return fqName; } int index = fqName.lastIndexOf("."); if (index <= 0) { return fqName; } int length = jetbrains.mps.util.SNodeOperations.getModelLongName(SNodeOperations.getModel(thisNode)) .length(); return fqName.substring(0, length) + "." + fqName.substring(length + 1).replace(".", "$"); }
public static boolean virtual_checkLoops_3980490811621705349(SNode thisNode, Set<SNode> visited) { if (SetSequence.fromSet(visited).contains(thisNode)) { if (LOG.isEnabledFor(Priority.ERROR)) { LOG.error( "circular hierarchy in class " + INamedConcept_Behavior.call_getFqName_1213877404258(thisNode)); } return false; } if (SLinkOperations.getTarget(thisNode, "superclass", true) == null) { return true; } SetSequence.fromSet(visited).addElement(thisNode); // todo: not only superclass return BehaviorReflection.invokeVirtual( Boolean.TYPE, SLinkOperations.getTarget( SLinkOperations.getTarget(thisNode, "superclass", true), "classifier", false), "virtual_checkLoops_3980490811621705349", new Object[] {visited}); }
public String virtual_getFqName_1213877404258(SNode thisNode) { return INamedConcept_Behavior.virtual_getFqName_1213877404258(thisNode); }