@Override public SStmIR caseANotYetSpecifiedStm(ANotYetSpecifiedStm node, IRInfo question) throws AnalysisException { return new ANotImplementedStmIR(); }
/** * Returns a deep clone of this {@link ANotImplementedStmIR} node. * @return a deep clone of this {@link ANotImplementedStmIR} node */ public ANotImplementedStmIR clone() { return new ANotImplementedStmIR( _sourceNode, _tag, _metaData ); }
/** * Creates a deep clone of this {@link ANotImplementedStmIR} node while putting all * old node-new node relations in the map {@code oldToNewMap}. * @param oldToNewMap the map filled with the old node-new node relation * @return a deep clone of this {@link ANotImplementedStmIR} node */ public ANotImplementedStmIR clone(Map<INode,INode> oldToNewMap) { ANotImplementedStmIR node = new ANotImplementedStmIR( _sourceNode, _tag, _metaData ); oldToNewMap.put(this, node); return node; }
@Override public SDeclIR caseAImplicitOperationDefinition( AImplicitOperationDefinition node, IRInfo question) throws AnalysisException { AMethodDeclIR method = question.getDeclAssistant().initMethod(node, question); if (method == null) { question.addUnsupportedNode(node, "Expected method type for explicit operation. Got: " + node.getType()); return null; } // The curent IR construction does not include: // // Name of result and its type: // APatternTypePair res = node.getResult(); // Ext clauses (read and write): // LinkedList<AExternalClause> externals = node.getExternals(); // Exceptions thrown: // LinkedList<AErrorCase> errors = node.getErrors(); if(method.getBody() == null) { method.setBody(new ANotImplementedStmIR()); } method.setFormalParams(question.getDeclAssistant().consFormalParams(node.getParameterPatterns(), question)); return method; }
} else method.setBody(new ANotImplementedStmIR());