1 16 19 20 package org.apache.xalan.xsltc.compiler; 21 22 import org.apache.bcel.generic.ConstantPoolGen; 23 import org.apache.bcel.generic.InstructionList; 24 import org.apache.bcel.generic.PUSH; 25 import org.apache.xalan.xsltc.compiler.util.ClassGenerator; 26 import org.apache.xalan.xsltc.compiler.util.MethodGenerator; 27 import org.apache.xalan.xsltc.compiler.util.Type; 28 import org.apache.xalan.xsltc.compiler.util.TypeCheckError; 29 30 34 final class RealExpr extends Expression { 35 private double _value; 36 37 public RealExpr(double value) { 38 _value = value; 39 } 40 41 public Type typeCheck(SymbolTable stable) throws TypeCheckError { 42 return _type = Type.Real; 43 } 44 45 public String toString() { 46 return "real-expr(" + _value + ')'; 47 } 48 49 public void translate(ClassGenerator classGen, MethodGenerator methodGen) { 50 ConstantPoolGen cpg = classGen.getConstantPool(); 51 InstructionList il = methodGen.getInstructionList(); 52 il.append(new PUSH(cpg, _value)); 53 } 54 } 55 | Popular Tags |