office-gobmx/codemaker
RMZeroFour c3c7b48fa9 .NET Bindings: Native bridge for .NET
This patch includes all marshalling and proxy handling code on the
.NET side as well as the native side needed for a fully functional
UNO bridge.

It also includes some changes and corrections to net_basetypes and
netmaker needed for the bridge to work properly.

It also includes the FirstUnoContact example in C# as demonstration.

Change-Id: I406932938a4415d24408fb41ddfa7d8eeb5d1f94
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170916
Tested-by: Jenkins
Reviewed-by: Hossein <hossein@libreoffice.org>
2024-09-18 08:10:36 +02:00
..
source .NET Bindings: Native bridge for .NET 2024-09-18 08:10:36 +02:00
test/javamaker Drop obsolete preprocessor directives from UNOIDL files 2022-06-13 16:27:45 +02:00
Executable_cppumaker.mk Use less zlib external headers dependency 2023-09-18 08:34:34 +02:00
Executable_javamaker.mk Use less zlib external headers dependency 2023-09-18 08:34:34 +02:00
Executable_netmaker.mk .NET Bindings: Add netmaker (.NET codemaker) 2024-06-19 09:34:45 +02:00
Makefile
Module_codemaker.mk .NET Bindings: Add netmaker (.NET codemaker) 2024-06-19 09:34:45 +02:00
README.md .NET Bindings: Add netmaker (.NET codemaker) 2024-06-19 09:34:45 +02:00
StaticLibrary_codemaker.mk
StaticLibrary_codemaker_cpp.mk
StaticLibrary_codemaker_java.mk

Language Code Generators for UNOIDL Entities

Generators for language-binding--specific representations of UNOIDL entities:

  • cppumaker generates header (.hdl and .hpp) files for the C++ UNO language binding
  • javamaker generates class files for the JVM language binding
  • netmaker generates C# code files for the .NET language binding
  • climaker (the old codemaker for .NET Framework) is in module cli_ure

Some of the code is re-used by the skeletonmakers in module unodevtools.

Note the different terminology used by cppumaker vs. gbuild for the three variants that can be generated by cppumaker for some of the inline functions:

cppumaker switch: -L;    cpputype.cxx: light;          gbuild: normal;
cppumaker switch: none;  cpputype.cxx: normal;         gbuild: bootstrap;
cppumaker switch: -C;    cpputype.cxx: comprehensive;  gbuild: comprehensive;

which can be a source of confusion.