/** * Called by the {@link ASetSetTypeIR} node from {@link ASetSetTypeIR#apply(IIsaAnalysis)}. * @param node the calling {@link ASetSetTypeIR} node */ public void caseASetSetTypeIR(ASetSetTypeIR node) throws AnalysisException { _visitedNodes.add(node); inASetSetTypeIR(node); if(node.getNamedInvType() != null && !_visitedNodes.contains(node.getNamedInvType())) { node.getNamedInvType().apply(this); } if(node.getSetOf() != null && !_visitedNodes.contains(node.getSetOf())) { node.getSetOf().apply(this); } outASetSetTypeIR(node); }
/** * Called by the {@link ASetSetTypeIR} node from {@link ASetSetTypeIR#apply(IAnalysis)}. * @param node the calling {@link ASetSetTypeIR} node */ public void caseASetSetTypeIR(ASetSetTypeIR node, Q question) throws AnalysisException { _visitedNodes.add(node); inASetSetTypeIR(node, question); if(node.getNamedInvType() != null && !_visitedNodes.contains(node.getNamedInvType())) { node.getNamedInvType().apply(this, question); } if(node.getSetOf() != null && !_visitedNodes.contains(node.getSetOf())) { node.getSetOf().apply(this, question); } outASetSetTypeIR(node, question); }
/** * Called by the {@link ASetSetTypeIR} node from {@link ASetSetTypeIR#apply(IAnalysis)}. * @param node the calling {@link ASetSetTypeIR} node */ public void caseASetSetTypeIR(ASetSetTypeIR node) throws AnalysisException { _visitedNodes.add(node); inASetSetTypeIR(node); if(node.getNamedInvType() != null && !_visitedNodes.contains(node.getNamedInvType())) { node.getNamedInvType().apply(this); } if(node.getSetOf() != null && !_visitedNodes.contains(node.getSetOf())) { node.getSetOf().apply(this); } outASetSetTypeIR(node); }
/** * Called by the {@link ASetSetTypeIR} node from {@link ASetSetTypeIR#apply(IAnalysis)}. * @param node the calling {@link ASetSetTypeIR} node */ public A caseASetSetTypeIR(ASetSetTypeIR node, Q question) throws AnalysisException { _visitedNodes.add(node); A retVal = createNewReturnValue(node, question); mergeReturns(retVal,inASetSetTypeIR(node, question)); if(node.getNamedInvType() != null && !_visitedNodes.contains(node.getNamedInvType())) { mergeReturns(retVal,node.getNamedInvType().apply(this, question)); } if(node.getSetOf() != null && !_visitedNodes.contains(node.getSetOf())) { mergeReturns(retVal,node.getSetOf().apply(this, question)); } mergeReturns(retVal,outASetSetTypeIR(node, question)); return retVal; }
/** * Called by the {@link ASetSetTypeIR} node from {@link ASetSetTypeIR#apply(IAnalysis)}. * @param node the calling {@link ASetSetTypeIR} node */ public A caseASetSetTypeIR(ASetSetTypeIR node) throws AnalysisException { _visitedNodes.add(node); A retVal = createNewReturnValue(node); mergeReturns(retVal,inASetSetTypeIR(node)); if(node.getNamedInvType() != null && !_visitedNodes.contains(node.getNamedInvType())) { mergeReturns(retVal,node.getNamedInvType().apply(this)); } if(node.getSetOf() != null && !_visitedNodes.contains(node.getSetOf())) { mergeReturns(retVal,node.getSetOf().apply(this)); } mergeReturns(retVal,outASetSetTypeIR(node)); return retVal; }
public STypeIR getElementType(STypeIR t) { STypeIR elementType; if (t instanceof ASetSetTypeIR) { elementType = ((ASetSetTypeIR) t).getSetOf().clone(); } else if (t instanceof ASeqSeqTypeIR) { elementType = ((ASeqSeqTypeIR) t).getSeqOf().clone(); } else { String vdmNodeInfo = info.getLocationAssistant().consVdmNodeInfoStr(t); log.error("Expected set or sequence type. Got: " + t.getClass().getName() + "." + vdmNodeInfo); elementType = new AUnknownTypeIR(); elementType.setSourceNode(t.getSourceNode()); } return elementType; }
STypeIR elemType = ((ASetSetTypeIR) setVar.getType()).getSetOf();
STypeIR elementType = setType.getSetOf();
if(setType.getSetOf() instanceof AUnknownTypeIR)