1) Moved net.sourceforge.phpeclipse.ui\src\net\sourceforge\phpdt back to net.sourcefo...
[phpeclipse.git] / net.sourceforge.phpeclipse / src / net / sourceforge / phpdt / internal / compiler / ast / DoubleLiteral.java
index 7095049..6cb5a24 100644 (file)
@@ -15,58 +15,81 @@ import net.sourceforge.phpdt.internal.compiler.impl.Constant;
 import net.sourceforge.phpdt.internal.compiler.lookup.BlockScope;
 import net.sourceforge.phpdt.internal.compiler.lookup.TypeBinding;
 
-
 public class DoubleLiteral extends NumberLiteral {
        double value;
-public DoubleLiteral(char[] token, int s, int e) {
-       super(token, s,e);
-}
-public void computeConstant() {
 
-       //the source is correctly formated so the exception should never occurs
+       public DoubleLiteral(char[] token, int s, int e) {
+               super(token, s, e);
+       }
 
-       Double computedValue;
-       try { computedValue = Double.valueOf(String.valueOf(source));}
-       catch(NumberFormatException e){return ;} //how can it happen ????
+       public void computeConstant() {
 
-       if (computedValue.doubleValue() > Double.MAX_VALUE) return ; //may be Infinity
-       if (computedValue.doubleValue() < Double.MIN_VALUE)
-       {       //only a true 0 can be made of zeros
-               //2.00000000000000000e-324 is illegal .... 
-               label :
-                       for (int i=0;i<source.length;i++)
-                       {       //it is welled formated so just test against '0' and potential . D d  
-                               switch (source[i]){
-                                       case '0' :
-                                       case '.' :
-                                       case 'd' :
-                                       case 'D' : break ;
-                                       case 'e' : 
-                                       case 'E' : break label ; //exposant are valid....!
-                                       default  : return;}}} //error
+               // the source is correctly formated so the exception should never occurs
 
-       constant = Constant.fromValue(value = computedValue.doubleValue());}
-/**
- * Code generation for the double literak
- *
- * @param currentScope net.sourceforge.phpdt.internal.compiler.lookup.BlockScope
- * @param codeStream net.sourceforge.phpdt.internal.compiler.codegen.CodeStream
- * @param valueRequired boolean
- */
-//public void generateCode(BlockScope currentScope, CodeStream codeStream, boolean valueRequired) {
-//     int pc = codeStream.position;
-//     if (valueRequired)
-//             if ((implicitConversion >> 4) == T_double)
-//                     codeStream.generateInlinedValue(value);
-//             else
-//                     codeStream.generateConstant(constant, implicitConversion);
-//     codeStream.recordPositionsFrom(pc, this.sourceStart);
-//}
-public TypeBinding literalType(BlockScope scope) {
-       return DoubleBinding;
-}
-public void traverse(IAbstractSyntaxTreeVisitor visitor, BlockScope blockScope) {
-       visitor.visit(this, blockScope);
-       visitor.endVisit(this, blockScope);
-}
+               Double computedValue;
+               try {
+                       computedValue = Double.valueOf(String.valueOf(source));
+               } catch (NumberFormatException e) {
+                       return;
+               } // how can it happen ????
+
+               if (computedValue.doubleValue() > Double.MAX_VALUE)
+                       return; // may be Infinity
+               if (computedValue.doubleValue() < Double.MIN_VALUE) { // only a true 0
+                                                                                                                               // can be made
+                                                                                                                               // of zeros
+                       // 2.00000000000000000e-324 is illegal ....
+                       label: for (int i = 0; i < source.length; i++) { // it is welled
+                                                                                                                               // formated so
+                                                                                                                               // just test
+                                                                                                                               // against '0'
+                                                                                                                               // and potential
+                                                                                                                               // . D d
+                               switch (source[i]) {
+                               case '0':
+                               case '.':
+                               case 'd':
+                               case 'D':
+                                       break;
+                               case 'e':
+                               case 'E':
+                                       break label; // exposant are valid....!
+                               default:
+                                       return;
+                               }
+                       }
+               } // error
+
+               constant = Constant.fromValue(value = computedValue.doubleValue());
+       }
+
+       /**
+        * Code generation for the double literak
+        * 
+        * @param currentScope
+        *            net.sourceforge.phpdt.internal.compiler.lookup.BlockScope
+        * @param codeStream
+        *            net.sourceforge.phpdt.internal.compiler.codegen.CodeStream
+        * @param valueRequired
+        *            boolean
+        */
+       // public void generateCode(BlockScope currentScope, CodeStream codeStream,
+       // boolean valueRequired) {
+       // int pc = codeStream.position;
+       // if (valueRequired)
+       // if ((implicitConversion >> 4) == T_double)
+       // codeStream.generateInlinedValue(value);
+       // else
+       // codeStream.generateConstant(constant, implicitConversion);
+       // codeStream.recordPositionsFrom(pc, this.sourceStart);
+       // }
+       public TypeBinding literalType(BlockScope scope) {
+               return DoubleBinding;
+       }
+
+       public void traverse(IAbstractSyntaxTreeVisitor visitor,
+                       BlockScope blockScope) {
+               visitor.visit(this, blockScope);
+               visitor.endVisit(this, blockScope);
+       }
 }