fpc/rtl/java
Jonas Maebe 979f55e1db + support for procedural variables for the JVM target
o every porocedural variable type is represented by a class with one
     public "invoke" method whose signature matches the signature of the
     procvar
   o internally, dispatching happens via java.lang.reflect.Method.invoke().
     WARNING: while this allows calling private/protected or other methods
     that are normally not accessible from another context, a security
     manger can override this. If such a security manager is installed,
     most procvars will cause security exceptions
   o such dispatching also requires that all arguments are wrapped, but
     that's done in the compiler-generated body of the invoke method,
     so that procvars can also be called conveniently from Java code
   o typecasting between a procedure of object and tmethod is supported,
     as well as Delphi-style replacing of only the method pointer via
     @procvar1=@procvar2.
   o nested procvars are not yet supported, but most of the basic
     infrastructure for them is already present
  * all units/programs now get an internal __FPC_JVM_Module_Class_Alias$
    type when compiled for the JVM target, which is an "external" class
    that maps to the unit name. This is required to look up the
    JLRMethod instances for regular functions/procedures
  + new tabstractprocdef.copyas() method that allows to create a procvar
    from a procdef and vice versa

git-svn-id: branches/jvmbackend@18690 -
2011-08-20 08:24:58 +00:00
..
astringh.inc + shortstring support for the JVM target (including accessing character 0 as 2011-08-20 08:11:28 +00:00
astrings.inc + support for pointers to types that are implicit pointer types in the JVM 2011-08-20 08:11:49 +00:00
compproc.inc + support for procedural variables for the JVM target 2011-08-20 08:24:58 +00:00
java_sys.inc + support for procedural variables for the JVM target 2011-08-20 08:24:58 +00:00
java_sysh.inc + support for procedural variables for the JVM target 2011-08-20 08:24:58 +00:00
jdk15.inc * reparsed with varags -> const open array change 2011-08-20 08:23:56 +00:00
jdk15.pas + full support for sets on the JVM target 2011-08-20 08:22:22 +00:00
jdynarrh.inc + support for procedural variables for the JVM target 2011-08-20 08:24:58 +00:00
jint64.inc + support for qword div/mod via helper (the JVM only supports signed 2011-08-20 08:07:02 +00:00
jmathh.inc + sqr(float) and trunc() support 2011-08-20 07:48:47 +00:00
jpvar.inc + support for procedural variables for the JVM target 2011-08-20 08:24:58 +00:00
jpvarh.inc + support for procedural variables for the JVM target 2011-08-20 08:24:58 +00:00
jrec.inc + support for (only named, for now) records in the JVM target: 2011-08-20 08:00:50 +00:00
jrech.inc + support for (only named, for now) records in the JVM target: 2011-08-20 08:00:50 +00:00
jset.inc + full support for sets on the JVM target 2011-08-20 08:22:22 +00:00
jseth.inc + full support for sets on the JVM target 2011-08-20 08:22:22 +00:00
Makefile * fixed fpc_unicodestr_compare_equal (has to return 0 in case of 2011-08-20 08:04:11 +00:00
Makefile.fpc + jdk15 unit with jdk 1.5 header translation 2011-08-20 08:08:21 +00:00
objpas.pp
rtl.cfg
rtti.inc + support for procedural variables for the JVM target 2011-08-20 08:24:58 +00:00
sstringh.inc + shortstring support for the JVM target (including accessing character 0 as 2011-08-20 08:11:28 +00:00
sstrings.inc + support for pointers to types that are implicit pointer types in the JVM 2011-08-20 08:11:49 +00:00
system.pp + support for procedural variables for the JVM target 2011-08-20 08:24:58 +00:00
ustringh.inc * commented out unimplemented pos() variant 2011-08-20 08:11:22 +00:00
ustrings.inc + support for pointers to types that are implicit pointer types in the JVM 2011-08-20 08:11:49 +00:00