Jvm
view release on metacpan or search on metacpan
if(! $mid) {
die "Failed to get method ID for '$methodSig'!";
}
return $cls->newObject($mid, $_args);
}
}
sub call {
my($className, $methodName, $methodsig, @args) = @_;
if(! $className) {
die "Error: missing class name!";
}
if(! $methodName) {
die "Error: missing method name!";
}
if(! $methodsig) {
die "Error: missing method signature!";
}
my $class = findClass($className);
if(! $class) {
die "find class failed";
}
Jvm::DEBUG("Cls: $class");
my $mid = $class->getStaticMethodID($methodName, $methodsig);
if(! $mid) {
die "find static methodID failed";
}
Jvm::DEBUG("Method: $mid");
my(@sig) = _parseSig($methodsig);
my($returnType) = pop(@sig);
if(scalar(@sig) != scalar(@args)) {
die "Error: The count of Signatures doesn't match that of Arguments!";
}
my $_args = _createArgs(\@sig, \@args);
Jvm::DEBUG("args: $_args");
( run in 1.293 second using v1.01-cache-2.11-cpan-71847e10f99 )