A macro declarations that exposes the java macro to a program.
The java macro can be used as follows
java(class, signature, arguments)
Where class is the name of class, signature is the signature of the function
and arguments is a list of arguments passed to the java function.
The signature follows the pattern:
type name '(' [ type [ ',' type ]* ] ')'
where type is one of 'boolean', 'double' or 'String' and name must be a valid
java identifier.
Examples:
java('java.lang.Math', 'double sqrt(double)', 4.0)
java('java.lang.String', 'String valueOf(double)', 2^30)