public LexNameList getVariableNamesBaseCase(PPattern pattern) { Set<ILexNameToken> set = new HashSet<ILexNameToken>(); set.addAll(af.createPPatternAssistant().getAllVariableNames(pattern)); LexNameList list = new LexNameList(); list.addAll(set); return list; }
@Override public LexNameList caseAUnionPattern(AUnionPattern pattern) throws AnalysisException { LexNameList list = new LexNameList(); list.addAll(af.createPPatternAssistant().getAllVariableNames(pattern.getLeft())); list.addAll(af.createPPatternAssistant().getAllVariableNames(pattern.getRight())); return list; }
@Override public LexNameList caseAConcatenationPattern(AConcatenationPattern pattern) throws AnalysisException { LexNameList list = new LexNameList(); list.addAll(af.createPPatternAssistant().getAllVariableNames(pattern.getLeft())); list.addAll(af.createPPatternAssistant().getAllVariableNames(pattern.getRight())); return list; }
@Override public LexNameList caseASetPattern(ASetPattern pattern) throws AnalysisException { LexNameList list = new LexNameList(); for (PPattern p : pattern.getPlist()) { list.addAll(af.createPPatternAssistant().getAllVariableNames(p)); } return list; }
@Override public LexNameList caseARecordPattern(ARecordPattern pattern) throws AnalysisException { LexNameList list = new LexNameList(); for (PPattern p : pattern.getPlist()) { list.addAll(af.createPPatternAssistant().getAllVariableNames(p)); } return list; }
@Override public LexNameList caseASeqPattern(ASeqPattern pattern) throws AnalysisException { LexNameList list = new LexNameList(); for (PPattern p : pattern.getPlist()) { list.addAll(af.createPPatternAssistant().getAllVariableNames(p)); } return list; }
@Override public LexNameList caseATuplePattern(ATuplePattern pattern) throws AnalysisException { LexNameList list = new LexNameList(); for (PPattern p : pattern.getPlist()) { list.addAll(af.createPPatternAssistant().getAllVariableNames(p)); } return list; }
@Override public LexNameList caseAObjectPattern(AObjectPattern pattern) throws AnalysisException { LexNameList list = new LexNameList(); for (ANamePatternPair npp : pattern.getFields()) { list.addAll(af.createPPatternAssistant().getAllVariableNames(npp.getPattern())); } return list; }