@Override public Boolean caseASeqSeqTypeIR(ASeqSeqTypeIR node) throws AnalysisException { return node.getSeqOf().apply(new IsCharTypeVisitor()); } }
/** * Called by the {@link ASeqSeqTypeIR} node from {@link ASeqSeqTypeIR#apply(IAnalysis)}. * @param node the calling {@link ASeqSeqTypeIR} node */ public void caseASeqSeqTypeIR(ASeqSeqTypeIR node) throws AnalysisException { _visitedNodes.add(node); inASeqSeqTypeIR(node); if(node.getNamedInvType() != null && !_visitedNodes.contains(node.getNamedInvType())) { node.getNamedInvType().apply(this); } if(node.getSeqOf() != null && !_visitedNodes.contains(node.getSeqOf())) { node.getSeqOf().apply(this); } outASeqSeqTypeIR(node); }
/** * Called by the {@link ASeqSeqTypeIR} node from {@link ASeqSeqTypeIR#apply(IIsaAnalysis)}. * @param node the calling {@link ASeqSeqTypeIR} node */ public void caseASeqSeqTypeIR(ASeqSeqTypeIR node) throws AnalysisException { _visitedNodes.add(node); inASeqSeqTypeIR(node); if(node.getNamedInvType() != null && !_visitedNodes.contains(node.getNamedInvType())) { node.getNamedInvType().apply(this); } if(node.getSeqOf() != null && !_visitedNodes.contains(node.getSeqOf())) { node.getSeqOf().apply(this); } outASeqSeqTypeIR(node); }
/** * Called by the {@link ASeqSeqTypeIR} node from {@link ASeqSeqTypeIR#apply(IAnalysis)}. * @param node the calling {@link ASeqSeqTypeIR} node */ public void caseASeqSeqTypeIR(ASeqSeqTypeIR node, Q question) throws AnalysisException { _visitedNodes.add(node); inASeqSeqTypeIR(node, question); if(node.getNamedInvType() != null && !_visitedNodes.contains(node.getNamedInvType())) { node.getNamedInvType().apply(this, question); } if(node.getSeqOf() != null && !_visitedNodes.contains(node.getSeqOf())) { node.getSeqOf().apply(this, question); } outASeqSeqTypeIR(node, question); }
/** * Called by the {@link ASeqSeqTypeIR} node from {@link ASeqSeqTypeIR#apply(IAnalysis)}. * @param node the calling {@link ASeqSeqTypeIR} node */ public A caseASeqSeqTypeIR(ASeqSeqTypeIR node, Q question) throws AnalysisException { _visitedNodes.add(node); A retVal = createNewReturnValue(node, question); mergeReturns(retVal,inASeqSeqTypeIR(node, question)); if(node.getNamedInvType() != null && !_visitedNodes.contains(node.getNamedInvType())) { mergeReturns(retVal,node.getNamedInvType().apply(this, question)); } if(node.getSeqOf() != null && !_visitedNodes.contains(node.getSeqOf())) { mergeReturns(retVal,node.getSeqOf().apply(this, question)); } mergeReturns(retVal,outASeqSeqTypeIR(node, question)); return retVal; }
/** * Called by the {@link ASeqSeqTypeIR} node from {@link ASeqSeqTypeIR#apply(IAnalysis)}. * @param node the calling {@link ASeqSeqTypeIR} node */ public A caseASeqSeqTypeIR(ASeqSeqTypeIR node) throws AnalysisException { _visitedNodes.add(node); A retVal = createNewReturnValue(node); mergeReturns(retVal,inASeqSeqTypeIR(node)); if(node.getNamedInvType() != null && !_visitedNodes.contains(node.getNamedInvType())) { mergeReturns(retVal,node.getNamedInvType().apply(this)); } if(node.getSeqOf() != null && !_visitedNodes.contains(node.getSeqOf())) { mergeReturns(retVal,node.getSeqOf().apply(this)); } mergeReturns(retVal,outASeqSeqTypeIR(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 elementType = seqType.getSeqOf();
if (seqType.getSeqOf() instanceof AUnknownTypeIR)