Group
Extension

Matches 8

JE ( S/SP/SPROUT/JE-0.066.tar.gz, SPROUT, 2014; MetaCPAN )
JE/lib/JE.pm ( view source; MetaCPAN )
have overloaded operators)

=item -

The JavaScript datatypes provide C<TO_JSON> methods for compatibility with
L<JSON.pm|JSON>.

=back

JE's greatest weakness is that it's slow (well, what did you ex
JE ( S/SP/SPROUT/JE-0.066.tar.gz, SPROUT, 2014; MetaCPAN )
JE/lib/JE/Object/Array.pm ( view source; MetaCPAN )
ugh which you can modify the
object, use C<@$a>.

=cut

sub value { [@{$${+shift}{array}}] };
*TO_JSON=*value;


sub exists {
	my ($self, $name) =  (shift, @_);
	my $guts = $$self;

	if ($name eq 'len
JE ( S/SP/SPROUT/JE-0.066.tar.gz, SPROUT, 2014; MetaCPAN )
JE/lib/JE/Undefined.pm ( view source; MetaCPAN )
 to a global object.

sub new    { bless \do{my $thing = $_[1]}, $_[0] }
sub value  { undef }
*TO_JSON=*value;
sub typeof { 'undefined' }
sub id     { 'undef' }
sub primitive { 1 }
sub to_primitive { 
JE ( S/SP/SPROUT/JE-0.066.tar.gz, SPROUT, 2014; MetaCPAN )
JE/lib/JE/Null.pm ( view source; MetaCPAN )
an.

=cut

#use Carp;
sub new    { bless \do{my $thing = $_[1]}, $_[0] }
sub value  { undef }
*TO_JSON=*value;
sub typeof { 'object' }
sub id     { 'null' }
sub primitive { 1 }
sub to_primitive { $_[0
JE ( S/SP/SPROUT/JE-0.066.tar.gz, SPROUT, 2014; MetaCPAN )
JE/lib/JE/Number.pm ( view source; MetaCPAN )
Number')->prop(shift)->apply(
		$self,$$self[1]->upgrade(@_)
	);
}

sub value {
	shift->[0]
}
*TO_JSON=*value;

sub exists { !1 }

sub typeof    { 'number' }
sub class     { 'Number' }
sub id        {
JE ( S/SP/SPROUT/JE-0.066.tar.gz, SPROUT, 2014; MetaCPAN )
JE/lib/JE/Boolean.pm ( view source; MetaCPAN )

		$self,$$self[1]->upgrade(@_)
	);
}


sub value { warn caller if !ref $_[0];shift->[0] }
sub TO_JSON { \(0+shift->[0]) }

sub exists { !1 }

sub typeof    { 'boolean' }
sub class     { 'Boolean' }
s
JE ( S/SP/SPROUT/JE-0.066.tar.gz, SPROUT, 2014; MetaCPAN )
JE/lib/JE/Object.pm ( view source; MetaCPAN )
lf.

=cut

sub value {
	my $self = shift;
	+{ map +($_ => $self->prop($_)), $self->keys };
}

*TO_JSON=*value;




sub id {
	refaddr shift;
}

sub primitive { !1 };

sub prototype {
	@_ > 1 ? (${+shif
JE ( S/SP/SPROUT/JE-0.066.tar.gz, SPROUT, 2014; MetaCPAN )
JE/lib/JE/String.pm ( view source; MetaCPAN )
(@_)
	);
}


sub value {
	defined $_[0][1] ? $_[0][1] : ($_[0][1] = desurrogify($_[0][0]));
}
*TO_JSON=*value;

sub value16 {
	defined $_[0][0] ? $_[0][0] : ($_[0][0] = surrogify($_[0][1]));
}


sub t

Powered by Groonga
Maintained by Kenichi Ishigaki <ishigaki@cpan.org>. If you find anything, submit it on GitHub.