// ino.module.MulOp.8605.package package de.dhbwstuttgart.syntaxtree.operator; // ino.end // ino.module.MulOp.8605.import import java.util.HashMap; import java.util.Hashtable; import java.util.Iterator; import java.util.Vector; import de.dhbwstuttgart.syntaxtree.statement.Binary; import de.dhbwstuttgart.syntaxtree.type.Pair; import de.dhbwstuttgart.syntaxtree.type.RefType; import de.dhbwstuttgart.syntaxtree.type.Type; import de.dhbwstuttgart.typeinference.assumptions.TypeAssumptions; import de.dhbwstuttgart.typeinference.exceptions.DebugException; import de.dhbwstuttgart.typeinference.unify.Unify; import mycompiler.myexception.CTypeReconstructionException; import mycompiler.mytypereconstruction.CSupportData; import mycompiler.mytypereconstruction.CTriple; import mycompiler.mytypereconstruction.set.CSubstitutionSet; import mycompiler.mytypereconstruction.set.CTripleSet; import mycompiler.mytypereconstruction.set.CTypeAssumptionSet; // ino.class.MulOp.24231.declaration public abstract class MulOp extends Operator // ino.end // ino.class.MulOp.24231.body { // ino.method.MulOp.24235.definition public MulOp(int offset, int variableLength) // ino.end // ino.method.MulOp.24235.body { super(offset, variableLength); } // ino.end @Override protected Hashtable getOperatorTypes() { Hashtable types = new Hashtable(); return types; } @Override public HashMap getReturnTypes(TypeAssumptions ass) { HashMap ret = new HashMap(); ret.put(ass.getTypeFor(new RefType("java.lang.Integer",-1), this), ass.getTypeFor(new RefType("java.lang.Integer",-1), this)); ret.put(ass.getTypeFor(new RefType("java.lang.Double",-1), this), ass.getTypeFor(new RefType("java.lang.Double",-1), this)); ret.put(ass.getTypeFor(new RefType("java.lang.Float",-1), this), ass.getTypeFor(new RefType("java.lang.Float",-1), this)); ret.put(ass.getTypeFor(new RefType("java.lang.Long",-1), this), ass.getTypeFor(new RefType("java.lang.Long",-1), this)); return ret; } } // ino.end