NAME
JavaScript::Any - evaluate some javascript using the best available
Javascript implementation
SYNOPSIS
use JavaScript::Any qw( jseval );
my $sum = jseval('1 + 2'); # 3
Or:
use JavaScript::Any;
my $context = JavaScript::Any->new_context;
$context->define( say => sub { print @_, "\n" } );
$context->eval('say(1 + 2)');
DESCRIPTION
This module is a thin wrapper around JavaScript::V8, JavaScript::Duktape,
and JE, allowing you to evaluate strings of Javascript code from Perl.
Status
This is a very early alpha version. The API still needs documenting and
cleaning up a lot.
In particular, the API for defining custom Javascript functions exposes
differences between the alternative Javascript implementations. Future
versions of JavaScript::Any will smooth some of these out.
Functional Interface
This module can export one function. It is not exported by default.
`jseval($str)`
Evaluates the string of Javascript in a fresh context and returns the
result.
Object-Oriented Interface
For more advanced features, use the object-oriented interface.
`JavaScript::Any->new_context(%opts)`
Factory method returning an object which implements the
JavaScript::Any::Context API.
BUGS
Please report any bugs to
<
http://rt.cpan.org/Dist/Display.html?Queue=JavaScript-Any>.
SEE ALSO
JavaScript::Any::Context.
JavaScript::V8, JavaScript::Duktape, JE.
AUTHOR
Toby Inkster <
[email protected]>.
COPYRIGHT AND LICENCE
This software is copyright (c) 2017 by Toby Inkster.
This is free software; you can redistribute it and/or modify it under the
same terms as the Perl 5 programming language system itself.
DISCLAIMER OF WARRANTIES
THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED
WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.