| JE documentation | Contained in the JE distribution. |
JE::Object::Error::RangeError - JavaScript RangeError object class
use JE::Object::Error::RangeError;
# Somewhere in code called by an eval{}
die new JE::Object::Error::RangeError $global, "(Error message here)";
# Later:
$@->prop('message'); # error message
$@->prop('name'); # 'RangeError'
"$@"; # 'RangeError: ' plus the error message
This class implements JavaScript RangeError objects for JE.
See JE::Types and JE::Object::Error.
| JE documentation | Contained in the JE distribution. |
package JE::Object::Error::RangeError; our $VERSION = '0.044'; use strict; use warnings; our @ISA = 'JE::Object::Error'; require JE::Object::Error; require JE::String;
sub class { 'RangeError' } sub new_constructor { shift->JE::Object::new_constructor(shift, sub { __PACKAGE__->new(@_); }, sub { my $proto = shift; my $global = $$proto->{global}; $global->prototype_for(RangeError=>$proto); bless $proto, __PACKAGE__; $proto->prototype( $global->prototype_for('Error') || $global->prop('Error')->prop('prototype') ); $proto->prop({ name => 'name', value => JE::String->_new($global, 'RangeError'), dontenum => 1, }); $proto->prop({ name => 'message', value => JE::String->_new($global, 'Range error'), dontenum => 1, }); }, ); } return "a true value";