@Override public String defaultPDefinition(PDefinition node, PrettyPrinterEnv question) throws AnalysisException { return node.apply(ppDefinition, question); }
@Override public List<PExp> caseAClassClassDefinition(AClassClassDefinition node) throws AnalysisException { List<PExp> r = new LinkedList<PExp>(); for (PDefinition p : node.getDefinitions()) { r.addAll(p.apply(mainVisitor)); } return r; }
@Override public Boolean caseAImportedDefinition(AImportedDefinition def) throws AnalysisException { return def.getDef().apply(THIS); }
@Override public Boolean caseAInheritedDefinition(AInheritedDefinition def) throws AnalysisException { return def.getSuperdef().apply(THIS); }
@Override public Boolean caseAImportedDefinition(AImportedDefinition node) throws AnalysisException { return node.getDef().apply(THIS); }
@Override public SOperationDefinitionBase caseACallStm(ACallStm node) throws AnalysisException { return node.getRootdef().apply(this); }
public PDefinition getSelfDefinition(PDefinition d) { try { return d.apply(af.getSelfDefinitionFinder()); } catch (AnalysisException e) { return null; } }
public PDefinition deref(PDefinition d) { try { return d.apply(af.getDereferer()); } catch (AnalysisException e) { return null; } }
@Override public LexNameList caseAImportedDefinition(AImportedDefinition node) throws AnalysisException { return node.getDef().apply(THIS); }
public boolean isValueDefinition(PDefinition def) { try { return def.apply(af.getDefintionValueChecker()); } catch (AnalysisException e) { return false; } }
@Override public Boolean caseAInheritedDefinition(AInheritedDefinition def) throws AnalysisException { return def.getSuperdef().apply(THIS); }
@Override public Boolean caseAInheritedDefinition(AInheritedDefinition node) throws AnalysisException { return node.getSuperdef().apply(THIS); }
@Override public Boolean caseAImportedDefinition(AImportedDefinition node) throws AnalysisException { return node.getDef().apply(this); }
@Override public Boolean caseARenamedDefinition(ARenamedDefinition def) throws AnalysisException { return def.getDef().apply(THIS); }
@Override public Boolean caseAImportedDefinition(AImportedDefinition node) throws AnalysisException { return node.getDef().apply(THIS); }
@Override public Boolean caseARenamedDefinition(ARenamedDefinition node) throws AnalysisException { return node.getDef().apply(THIS); }
@Override public Boolean caseAInheritedDefinition(AInheritedDefinition def) throws AnalysisException { return def.getSuperdef().apply(THIS); }
public PDefinition findType(PDefinition d, ILexNameToken sought, String fromModule) { try { return d.apply(af.getDefinitionFinder(), new DefinitionFinder.Newquestion(sought, fromModule)); } catch (AnalysisException e) { return null; } }
@Override public void caseAInheritedDefinition(AInheritedDefinition node) throws AnalysisException { node.setUsed(true); node.getSuperdef().apply(THIS); }
@Override public void caseARenamedDefinition(ARenamedDefinition node) throws AnalysisException { node.setUsed(true); node.getDef().apply(THIS); node.setUsed(true); }