sleep.runtime
Interface ScalarType

All Superinterfaces:
Serializable
All Known Implementing Classes:
DoubleValue, IntValue, LongValue, NullValue, ObjectValue, StringValue

public interface ScalarType
extends Serializable

This interface makes it possible to create a new scalar type. A scalar type is responsible for being able to convert itself to any type of scalar value.

To store a custom scalar type in a scalar:

 Scalar temp = SleepUtils.getScalar(); // returns an empty scalar.
 temp.setValue(new MyScalarType()); 
 

In the above example MyScalarType is an instance that implements the ScalarType interface.


Method Summary
 ScalarType copyValue()
          create a clone of this scalar's value.
 double doubleValue()
          convert the scalar to a double
 int intValue()
          convert the scalar to an int
 long longValue()
          convert the scalar to a long
 Object objectValue()
          convert the scalar to an object value *shrug*
 String toString()
          convert the scalar to a string
 

Method Detail

copyValue

public ScalarType copyValue()
create a clone of this scalar's value. It is important to note that you should return a copy here unless you really want scalars of your scalar type to be passed by reference.


intValue

public int intValue()
convert the scalar to an int


longValue

public long longValue()
convert the scalar to a long


doubleValue

public double doubleValue()
convert the scalar to a double


toString

public String toString()
convert the scalar to a string


objectValue

public Object objectValue()
convert the scalar to an object value *shrug*