org.ucl.xpath.types
Class XSFloat

java.lang.Object
  extended byorg.ucl.xpath.types.AnyType
      extended byorg.ucl.xpath.types.AnySimpleType
          extended byorg.ucl.xpath.types.AnyAtomicType
              extended byorg.ucl.xpath.types.CtrType
                  extended byorg.ucl.xpath.types.NumericType
                      extended byorg.ucl.xpath.types.XSFloat
All Implemented Interfaces:
CmpEq, CmpGt, CmpLt, MathDiv, MathIDiv, MathMinus, MathMod, MathPlus, MathTimes

public class XSFloat
extends NumericType

A representation of the Float datatype


Constructor Summary
XSFloat()
          Initiates a representation of 0
XSFloat(float x)
          Initiates a representation of the supplied number
 
Method Summary
 NumericType abs()
          Absolutes the number stored
 NumericType ceiling()
          Returns the smallest integer greater than the number stored
 ResultSequence constructor(ResultSequence arg)
          Creates a new ResultSequence consisting of the retrievable float in the supplied ResultSequence
 ResultSequence div(ResultSequence arg)
          Mathematical division operator between this XSFloat and the supplied ResultSequence.
 boolean eq(AnyType aa)
          Equality comparison between this number and the supplied representation.
 float float_value()
          Retrieves the actual float value stored
 NumericType floor()
          Returns the largest integer smaller than the number stored
 boolean gt(AnyType arg)
          Comparison between this number and the supplied representation.
 ResultSequence idiv(ResultSequence arg)
          Mathematical integer division operator between this XSFloat and the supplied ResultSequence.
 boolean lt(AnyType arg)
          Comparison between this number and the supplied representation.
 ResultSequence minus(ResultSequence arg)
          Mathematical subtraction operator between this XSFloat and the supplied ResultSequence.
 ResultSequence mod(ResultSequence arg)
          Mathematical modulus operator between this XSFloat and the supplied ResultSequence.
 boolean nan()
          Check for whether this datatype represents NaN
 ResultSequence plus(ResultSequence arg)
          Mathematical addition operator between this XSFloat and the supplied ResultSequence.
 NumericType round_half_to_even()
          Returns the closest integer of the number stored.
 NumericType round()
          Returns the closest integer of the number stored.
 java.lang.String string_type()
          Retrieves the datatype's full pathname
 java.lang.String string_value()
          Retrieves a String representation of the stored number
 ResultSequence times(ResultSequence arg)
          Mathematical multiplication operator between this XSFloat and the supplied ResultSequence.
 java.lang.String type_name()
          Retrieves the datatype's name
 ResultSequence unary_minus()
          Negates the number stored
 boolean zero()
          Check for whether this datatype represents 0
 
Methods inherited from class org.ucl.xpath.types.NumericType
get_single_arg, get_single_type, get_single_type
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

XSFloat

public XSFloat(float x)
Initiates a representation of the supplied number

Parameters:
x - The number to be stored

XSFloat

public XSFloat()
Initiates a representation of 0

Method Detail

string_type

public java.lang.String string_type()
Retrieves the datatype's full pathname

Specified by:
string_type in class AnyType
Returns:
"xs:float" which is the datatype's full pathname

type_name

public java.lang.String type_name()
Retrieves the datatype's name

Specified by:
type_name in class CtrType
Returns:
"float" which is the datatype's name

string_value

public java.lang.String string_value()
Retrieves a String representation of the stored number

Specified by:
string_value in class AnyType
Returns:
String representation of the stored number

nan

public boolean nan()
Check for whether this datatype represents NaN

Returns:
True is this datatype represents NaN. False otherwise

zero

public boolean zero()
Check for whether this datatype represents 0

Specified by:
zero in class NumericType
Returns:
True if this datatype represents 0. False otherwise

constructor

public ResultSequence constructor(ResultSequence arg)
                           throws DynamicError
Creates a new ResultSequence consisting of the retrievable float in the supplied ResultSequence

Specified by:
constructor in class CtrType
Parameters:
arg - The ResultSequence from which to extract the float
Returns:
New ResultSequence consisting of the float supplied
Throws:
DynamicError

float_value

public float float_value()
Retrieves the actual float value stored

Returns:
The actual float value stored

eq

public boolean eq(AnyType aa)
           throws DynamicError
Equality comparison between this number and the supplied representation. Currently no numeric type promotion exists so this representation must be of type XSFloat

Parameters:
aa - The datatype to compare with
Returns:
True if the two representations are of the same number. False otherwise
Throws:
DynamicError

gt

public boolean gt(AnyType arg)
           throws DynamicError
Comparison between this number and the supplied representation. Currently no numeric type promotion is implemented so this representation must be of type XSFloat

Parameters:
arg - The datatype to compare with
Returns:
True if the supplied representation is a smaller number than the one stored. False otherwise
Throws:
DynamicError

lt

public boolean lt(AnyType arg)
           throws DynamicError
Comparison between this number and the supplied representation. Currently no numeric type promotion is implemented so this representation must be of type XSFloat

Parameters:
arg - The datatype to compare with
Returns:
True if the supplied representation is a greater number than the one stored. False otherwise
Throws:
DynamicError

plus

public ResultSequence plus(ResultSequence arg)
                    throws DynamicError
Mathematical addition operator between this XSFloat and the supplied ResultSequence. Due to no numeric type promotion or conversion, the ResultSequence must be of type XSFloat.

Parameters:
arg - The ResultSequence to perform an addition with
Returns:
A XSFloat consisting of the result of the mathematical addition.
Throws:
DynamicError - Dynamic error.

minus

public ResultSequence minus(ResultSequence arg)
                     throws DynamicError
Mathematical subtraction operator between this XSFloat and the supplied ResultSequence. Due to no numeric type promotion or conversion, the ResultSequence must be of type XSFloat.

Parameters:
arg - The ResultSequence to perform a subtraction with
Returns:
A XSFloat consisting of the result of the mathematical subtraction.
Throws:
DynamicError - Dynamic error.

times

public ResultSequence times(ResultSequence arg)
                     throws DynamicError
Mathematical multiplication operator between this XSFloat and the supplied ResultSequence. Due to no numeric type promotion or conversion, the ResultSequence must be of type XSFloat.

Parameters:
arg - The ResultSequence to perform a multiplication with
Returns:
A XSFloat consisting of the result of the mathematical multiplication.
Throws:
DynamicError - Dynamic error.

div

public ResultSequence div(ResultSequence arg)
                   throws DynamicError
Mathematical division operator between this XSFloat and the supplied ResultSequence. Due to no numeric type promotion or conversion, the ResultSequence must be of type XSFloat.

Parameters:
arg - The ResultSequence to perform a division with
Returns:
A XSFloat consisting of the result of the mathematical division.
Throws:
DynamicError - Dynamic error.

idiv

public ResultSequence idiv(ResultSequence arg)
                    throws DynamicError
Mathematical integer division operator between this XSFloat and the supplied ResultSequence. Due to no numeric type promotion or conversion, the ResultSequence must be of type XSFloat.

Parameters:
arg - The ResultSequence to perform an integer division with
Returns:
A XSInteger consisting of the result of the mathematical integer division.
Throws:
DynamicError - Dynamic error.

mod

public ResultSequence mod(ResultSequence arg)
                   throws DynamicError
Mathematical modulus operator between this XSFloat and the supplied ResultSequence. Due to no numeric type promotion or conversion, the ResultSequence must be of type XSFloat.

Parameters:
arg - The ResultSequence to perform a modulus with
Returns:
A XSFloat consisting of the result of the mathematical modulus.
Throws:
DynamicError - Dynamic error.

unary_minus

public ResultSequence unary_minus()
Negates the number stored

Specified by:
unary_minus in class NumericType
Returns:
A XSFloat representing the negation of the number stored

abs

public NumericType abs()
Absolutes the number stored

Specified by:
abs in class NumericType
Returns:
A XSFloat representing the absolute value of the number stored

ceiling

public NumericType ceiling()
Returns the smallest integer greater than the number stored

Specified by:
ceiling in class NumericType
Returns:
A XSFloat representing the smallest integer greater than the number stored

floor

public NumericType floor()
Returns the largest integer smaller than the number stored

Specified by:
floor in class NumericType
Returns:
A XSFloat representing the largest integer smaller than the number stored

round

public NumericType round()
Returns the closest integer of the number stored.

Specified by:
round in class NumericType
Returns:
A XSFloat representing the closest long of the number stored.

round_half_to_even

public NumericType round_half_to_even()
Returns the closest integer of the number stored.

Specified by:
round_half_to_even in class NumericType
Returns:
A XSFloat representing the closest long of the number stored.