View Javadoc
1   /*
2    * Copyright (c) 2000, Oracle and/or its affiliates. All rights reserved.
3    * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4    *
5    * This code is free software; you can redistribute it and/or modify it
6    * under the terms of the GNU General Public License version 2 only, as
7    * published by the Free Software Foundation.
8    *
9    * This code is distributed in the hope that it will be useful, but WITHOUT
10   * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11   * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
12   * version 2 for more details (a copy is included in the LICENSE file that
13   * accompanied this code).
14   *
15   * You should have received a copy of the GNU General Public License version
16   * 2 along with this work; if not, write to the Free Software Foundation,
17   * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18   *
19   * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20   * or visit www.oracle.com if you need additional information or have any
21   * questions.
22   *
23   */
24  
25  package sun.jvm.hotspot.code;
26  
27  import java.io.*;
28  
29  /** A ConstantDoubleValue describes a constant double; i.e., the
30      corresponding logical entity is either a source constant or its
31      computation has been constant-folded. */
32  
33  public class ConstantDoubleValue extends ScopeValue {
34    private double value;
35  
36    public ConstantDoubleValue(double value) {
37      this.value = value;
38    }
39  
40    public boolean isConstantDouble() {
41      return true;
42    }
43  
44    public double getValue() {
45      return value;
46    }
47  
48    /** Serialization of debugging information */
49    ConstantDoubleValue(DebugInfoReadStream stream) {
50      value = stream.readDouble();
51    }
52  
53    // FIXME: not yet implementable
54    // void write_on(DebugInfoWriteStream* stream);
55  
56    // Printing
57  
58    public void print() {
59      printOn(System.out);
60    }
61  
62    public void printOn(PrintStream tty) {
63      tty.print(value);
64    }
65  }