public STypeIR getExpectedOperandType(SNumericBinaryExpIR node) { if (node instanceof AIntDivNumericBinaryExpIR || node instanceof AModNumericBinaryExpIR || node instanceof ARemNumericBinaryExpIR) { return new AIntNumericBasicTypeIR(); } else { return new ARealNumericBasicTypeIR(); } }
@Override public STypeIR caseAUnknownType(AUnknownType node, IRInfo question) throws AnalysisException { return new AUnknownTypeIR(); // '?' Indicates an unknown type }
/** * Creates a new tree field only constructor {@code AUnionTypeIR TAG=union} node with the given nodes as children. * @deprecated This method should not be used, use AstFactory instead. * The basic child nodes are removed from their previous parents. * @param types_ the {@link NodeList} node for the {@code types} child of this {@link AUnionTypeIR} node */ public AUnionTypeIR(Boolean optional_, ANamedTypeDeclIR namedInvType_, List<? extends STypeIR> types_) { super(null,null,null,optional_,namedInvType_); this.setTypes(types_); }
/** * Creates a new tree field only constructor {@code ARecordTypeIR TAG=record} node with the given nodes as children. * @deprecated This method should not be used, use AstFactory instead. * The basic child nodes are removed from their previous parents. * @param name_ the {@link ATypeNameIR} node for the {@code name} child of this {@link ARecordTypeIR} node */ public ARecordTypeIR(Boolean optional_, ANamedTypeDeclIR namedInvType_, ATypeNameIR name_) { super(null,null,null,optional_,namedInvType_); this.setName(name_); }
/** * Creates a new tree field only constructor {@code ATemplateTypeIR TAG=template} node with the given nodes as children. * @deprecated This method should not be used, use AstFactory instead. * The basic child nodes are removed from their previous parents. * @param name_ the {@link String} node for the {@code name} child of this {@link ATemplateTypeIR} node */ public ATemplateTypeIR(Boolean optional_, ANamedTypeDeclIR namedInvType_, String name_) { super(null,null,null,optional_,namedInvType_); this.setName(name_); }
/** * Creates a new complete constructor {@code AQuoteTypeIR} node with the given nodes as children. * @deprecated This method should not be used, use AstFactory instead. * The basic child nodes are removed from their previous parents. * @param value_ the {@link String} node for the {@code value} child of this {@link AQuoteTypeIR} node */ public AQuoteTypeIR(SourceNode sourceNode_, Object tag_, List<? extends ClonableString> metaData_, Boolean optional_, ANamedTypeDeclIR namedInvType_, String value_) { super(sourceNode_,tag_,metaData_,optional_,namedInvType_); this.setValue(value_); }
@Override public STypeIR getElementType(STypeIR type) { return ((SSetTypeIR) type).getSetOf(); } }));
@Override public STypeIR caseANatNumericBasicType(ANatNumericBasicType node, IRInfo question) throws AnalysisException { return new ANatNumericBasicTypeIR(); }
@Override public STypeIR caseARealNumericBasicType(ARealNumericBasicType node, IRInfo question) throws AnalysisException { return new ARealNumericBasicTypeIR(); }
/** * Forwarding hashCode call to {@link Object#hashCode()}. **/ @Override public int hashCode() { return super.hashCode(); }
/** * Forwarding hashCode call to {@link Object#hashCode()}. **/ @Override public int hashCode() { return super.hashCode(); }
public SSetTypeIR getSetTypeCloned(STypeIR typeCg) throws AnalysisException { if (typeCg instanceof SSetTypeIR) { SSetTypeIR setTypeCg = (SSetTypeIR) typeCg; return setTypeCg.clone(); } return null; }
/** * Forwarding hashCode call to {@link Object#hashCode()}. **/ @Override public int hashCode() { return super.hashCode(); }
/** * Forwarding hashCode call to {@link Object#hashCode()}. **/ @Override public int hashCode() { return super.hashCode(); }
/** * Creates a new tree field only constructor {@code ATupleTypeIR TAG=tuple} node with the given nodes as children. * @deprecated This method should not be used, use AstFactory instead. * The basic child nodes are removed from their previous parents. * @param types_ the {@link NodeList} node for the {@code types} child of this {@link ATupleTypeIR} node */ public ATupleTypeIR(Boolean optional_, ANamedTypeDeclIR namedInvType_, List<? extends STypeIR> types_) { super(null,null,null,optional_,namedInvType_); this.setTypes(types_); }
/** * Forwarding hashCode call to {@link Object#hashCode()}. **/ @Override public int hashCode() { return super.hashCode(); }
/** * Creates a new complete constructor {@code AUnionTypeIR} node with the given nodes as children. * @deprecated This method should not be used, use AstFactory instead. * The basic child nodes are removed from their previous parents. * @param types_ the {@link NodeList} node for the {@code types} child of this {@link AUnionTypeIR} node */ public AUnionTypeIR(SourceNode sourceNode_, Object tag_, List<? extends ClonableString> metaData_, Boolean optional_, ANamedTypeDeclIR namedInvType_, List<? extends STypeIR> types_) { super(sourceNode_,tag_,metaData_,optional_,namedInvType_); this.setTypes(types_); }
/** * Forwarding hashCode call to {@link Object#hashCode()}. **/ @Override public int hashCode() { return super.hashCode(); }
/** * Forwarding hashCode call to {@link Object#hashCode()}. **/ @Override public int hashCode() { return super.hashCode(); }
/** * Forwarding hashCode call to {@link Object#hashCode()}. **/ @Override public int hashCode() { return super.hashCode(); }