NAME
Data::Sofu::Value - A Sofu Value
DESCRIPTION
Provides a interface similar to the original SofuD (sofu.sf.net)
Synopsis
require Data::Sofu::Value;
my $v = Data::Sofu::Value->new();
$v->set("Hello World");
SYNTAX
This Module is pure OO, exports nothing
METHODS
Also look at Data::Sofu::Object
for methods, cause Value inherits from it
new([DATA])
Creates a new Data::Sofu::Value
and returns it
Converts DATA to a string if DATA is given.
$val = Data::Sofu::Value->new("Hello World");
set(DATA)
Sets the contents of this Value (replaces the old contents).
Note: DATA will be converted to a string.
$v->set("Foobar");
asValue()
Returns itself, used to make sure this Value is really a Value (Data::Sofu::Map and Data::Sofu::List will die if called with this method)
asScalar()
Perl only
Returns this Value as a perl Scalar (same as toString)
toString()
Returns this as a string
toUTF16()
, toUTF8()
, toUTF32()
Not working in Perl (cause there is no wchar, char, dchar stuff going on, if you need to convert strings use "Encode")
They just return the same as toString()
toInt()
Return the Value as an Integer
$v->toInt() === int $v->toString();
toFloat()
Return the Value as a Float
$v->toFloat() === $v->toString()+0;
toLong()
Return the Value as a Long
$v->toLong() === int $v->toString();
toDouble()
Return the Value as a Double
$v->toDouble() === $v->toString()+0;
isValue()
Returns 1
stringify(LEVEL,TREE)
Returns a string representation of this Value.
LEVEL and TREE are ignored...
binarify(TREE,BINARY DRIVER)
Returns the binary version of this Value using the BINARY DRIVER. Don't call this one, use binaryPack instead.
BUGS
most of the methods do the same, because perl does the converting for you.
SEE ALSO
Data::Sofu, Data::Sofu::Binary, Data::Sofu::Object, Data::Sofu::Map, Data::Sofu::Value, Data::Sofu::Undefined, http://sofu.sf.net