1// Copyright (c) 2004, Hewlett-Packard Development Company, L.P. 2// 3// Permission is granted free of charge to copy, modify, use and distribute 4// this software provided you include the entirety of this notice in all 5// copies made. 6// 7// THIS SOFTWARE IS PROVIDED ON AN AS IS BASIS, WITHOUT WARRANTY OF ANY 8// KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, 9// WARRANTIES THAT THE SUBJECT SOFTWARE IS FREE OF DEFECTS, MERCHANTABLE, FIT 10// FOR A PARTICULAR PURPOSE OR NON-INFRINGING. HEWLETT-PACKARD ASSUMES 11// NO RISK AS TO THE QUALITY AND PERFORMANCE OF THE SOFTWARE. 12// SHOULD THE SOFTWARE PROVE DEFECTIVE IN ANY RESPECT, 13// HEWLETT-PACKARD ASSUMES NO COST OR LIABILITY FOR ANY 14// SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES 15// AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY SUBJECT SOFTWARE IS 16// AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER. 17// 18// UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT (INCLUDING, 19// WITHOUT LIMITATION, NEGLIGENCE OR STRICT LIABILITY), CONTRACT, OR 20// OTHERWISE, SHALL HEWLETT-PACKARD BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, 21// INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER WITH RESPECT TO THE 22// SOFTWARE INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK 23// STOPPAGE, LOSS OF DATA, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL 24// OTHER COMMERCIAL DAMAGES OR LOSSES, EVEN IF HEWLETT-PACKARD SHALL 25// HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. 26// THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY RESULTING 27// FROM HEWLETT-PACKARD's NEGLIGENCE TO THE EXTENT APPLICABLE 28// LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE 29// EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THAT 30// EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU. 31// 32 33package com.hp.creals; 34 35/** 36* A scientific notation representation of an approximation to a constructive 37* real. 38* Generated by CR.toStringFloatRep. 39*/ 40public class StringFloatRep { 41 StringFloatRep(int s, String m, int r, int e) { 42 sign = s; 43 mantissa = m; 44 radix = r; 45 exponent = e; 46 } 47/** 48* The sign associated with this approximation. May be -1, _1, or zero. 49*/ 50 public int sign; 51/** 52* A string representation of the mantissa. The decimal point is implicitly 53* to the left of the string of digits, and is not explicitly represented. 54*/ 55 public String mantissa; 56/** 57* The radix of the representation. Also the base of the exponent field. 58*/ 59 public int radix; 60/** 61* The mantissa is scaled by radix**exponent. 62*/ 63 public int exponent; 64 65/** 66* Produce a textual representation including the sign and exponent. 67*/ 68 public String toString() { 69 return 70 (sign < 0? "-" : "") + mantissa + "E" + Integer.toString(exponent) 71 + (radix == 10? "" : "(radix " + radix + ")"); 72 } 73} 74