2013-10-18 11:33:46 +00:00
|
|
|
// ino.module.MulOp.8605.package
|
|
|
|
package mycompiler.myoperator;
|
|
|
|
// ino.end
|
|
|
|
|
|
|
|
// ino.module.MulOp.8605.import
|
2014-05-07 06:10:55 +00:00
|
|
|
import java.util.HashMap;
|
2013-10-18 11:33:46 +00:00
|
|
|
import java.util.Hashtable;
|
|
|
|
import java.util.Iterator;
|
|
|
|
import java.util.Vector;
|
2014-04-24 10:42:10 +00:00
|
|
|
|
|
|
|
import typinferenz.assumptions.TypeAssumptions;
|
|
|
|
import typinferenz.exceptions.DebugException;
|
2013-10-18 11:33:46 +00:00
|
|
|
import mycompiler.myexception.CTypeReconstructionException;
|
|
|
|
import mycompiler.mystatement.Binary;
|
|
|
|
import mycompiler.mytype.Pair;
|
|
|
|
import mycompiler.mytype.RefType;
|
2014-04-24 10:42:10 +00:00
|
|
|
import mycompiler.mytype.Type;
|
2013-10-18 11:33:46 +00:00
|
|
|
import mycompiler.mytypereconstruction.CSupportData;
|
|
|
|
import mycompiler.mytypereconstruction.CTriple;
|
|
|
|
import mycompiler.mytypereconstruction.set.CSubstitutionSet;
|
|
|
|
import mycompiler.mytypereconstruction.set.CTripleSet;
|
|
|
|
import mycompiler.mytypereconstruction.set.CTypeAssumptionSet;
|
|
|
|
import mycompiler.mytypereconstruction.unify.Unify;
|
|
|
|
// ino.end
|
|
|
|
|
|
|
|
// 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<RefType, RefType> getOperatorTypes() {
|
|
|
|
Hashtable<RefType, RefType> types = new Hashtable<RefType, RefType>();
|
|
|
|
|
|
|
|
|
|
|
|
return types;
|
|
|
|
}
|
2014-04-24 10:42:10 +00:00
|
|
|
|
|
|
|
@Override
|
2014-05-07 06:10:55 +00:00
|
|
|
public HashMap<Type,Type> getReturnTypes(TypeAssumptions ass) {
|
|
|
|
HashMap<Type,Type> ret = new HashMap<Type,Type>();
|
|
|
|
ret.put(ass.getTypeFor(new RefType("java.lang.Integer",-1)), ass.getTypeFor(new RefType("java.lang.Integer",-1)));
|
|
|
|
ret.put(ass.getTypeFor(new RefType("java.lang.Double",-1)), ass.getTypeFor(new RefType("java.lang.Double",-1)));
|
|
|
|
ret.put(ass.getTypeFor(new RefType("java.lang.Float",-1)), ass.getTypeFor(new RefType("java.lang.Float",-1)));
|
|
|
|
ret.put(ass.getTypeFor(new RefType("java.lang.Long",-1)), ass.getTypeFor(new RefType("java.lang.Long",-1)));
|
|
|
|
|
2014-04-24 10:42:10 +00:00
|
|
|
return ret;
|
|
|
|
}
|
2013-10-18 11:33:46 +00:00
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
// ino.end
|