JavaPatternMatching/src/de/dhbwstuttgart/syntaxtree/operator/TimesOp.java

49 lines
1.4 KiB
Java
Executable File

// ino.module.TimesOp.8611.package
package de.dhbwstuttgart.syntaxtree.operator;
// ino.end
// ino.module.TimesOp.8611.import
import de.dhbwstuttgart.typeinference.Menge;
import de.dhbwstuttgart.typeinference.exceptions.NotImplementedException;
import org.apache.commons.bcel6.generic.ArithmeticInstruction;
import org.apache.commons.bcel6.generic.DMUL;
import org.apache.commons.bcel6.generic.FMUL;
import org.apache.commons.bcel6.generic.IMUL;
import org.apache.commons.bcel6.generic.LMUL;
import de.dhbwstuttgart.myexception.JVMCodeException;
import de.dhbwstuttgart.syntaxtree.statement.Binary;
import de.dhbwstuttgart.syntaxtree.statement.Expr;
// ino.class.TimesOp.24312.declaration
public class TimesOp extends MulOp
// ino.end
// ino.class.TimesOp.24312.body
{
// ino.method.TimesOp.24316.definition
public TimesOp(int offset,int variableLength)
// ino.end
// ino.method.TimesOp.24316.body
{
super(offset,variableLength);
}
// ino.end
ArithmeticInstruction getOperator(String returnType) {
if(returnType.equals("java.lang.Integer")){
return new IMUL();
}else if(returnType.equals("java.lang.Double")){
return new DMUL();
}else if(returnType.equals("java.lang.Float")){
return new FMUL();
}else if(returnType.equals("java.lang.Long")){
return new LMUL();
}else{
throw new NotImplementedException();
}
}
}
// ino.end