From c1a18992ccc56bb85cb33e0a4e366608929b68de Mon Sep 17 00:00:00 2001
From: William S Fulton
Date: Thu, 11 Jun 2015 07:43:26 +0100
Subject: [PATCH] Add in all C# command line options to the docs
---
Doc/Manual/CSharp.html | 66 +++++++++++++++++++++++++++++++-----------
1 file changed, 49 insertions(+), 17 deletions(-)
diff --git a/Doc/Manual/CSharp.html b/Doc/Manual/CSharp.html
index 28d6d2b2e..0c0d98c0e 100644
--- a/Doc/Manual/CSharp.html
+++ b/Doc/Manual/CSharp.html
@@ -14,7 +14,7 @@
SWIG 2 Compatibility
Differences to the Java module
Void pointers
@@ -37,7 +37,7 @@
Directors implementation
Director caveats
-Multiples modules
+Multiple modules
C# Typemap examples
- Memory management when returning references to member variables
@@ -82,26 +82,58 @@ Monodoc, available from the Mono project, has a very useful section titled using directives in generated code. This breaks backwards compatibility with typemaps, pragmas, etc written for use with SWIG 2 that assume the presence of using System; or using System.Runtime.InteropServices; directives in the intermediate class imports, module imports, or proxy imports. SWIG 3 supports backwards compatibility though the use of the SWIG2_CSHARP macro. If SWIG2_CSHARP is defined, SWIG 3 generates using directives in the intermediate class, module class, and proxy class code similar to those generated by SWIG 2. This can be done without modifying any of the input code by passing the -DSWIG2_CSHARP commandline parameter when executing swig.
-20.1.2 C# Command Line Options
-
-Additional command line options that can be used to control code generation:
+20.1.2 Additional command line options
--outfile <filename>
-This command line will instruct the C# module to write all generated C# code to <filename> (located in the output directory) instead of creating separate files for generated classes.
-Caveats:
-
+The following table lists the additional commandline options available for the C# module. They can also be seen by using:
+
--
-The file extension (.cs) will not be automatically be added and needs to be provided.
-
+
--
-Due to possible compiler limits it is not advisable to use -outfile when generating wrappers for big projects.
-
+
-
+
+
+| C# specific options |
+
+
+
+| -dllimport <dl> |
+Override DllImport attribute name to <dl> |
+
+
+
+| -namespace <nm> |
+Generate wrappers into C# namespace <nm> |
+
+
+
+| -noproxy |
+Generate the low-level functional interface instead of proxy classes |
+
+
+
+| -oldvarnames |
+Old intermediary method names for variable wrappers |
+
+
+
+| -outfile <file> |
+Write all C# into a single <file> located in the output directory
+ |
+
+
+
+
+
+The -outfile option combines all the generated C# code into a single output file instead of creating multiple C# files.
+The default, when this option is not provided, is to generate separate .cs files for the module class,
+intermediary class and each of the generated proxy and type wrapper classes.
+Note that the file extension (.cs) will not be automatically added and needs to be provided.
+Due to possible compiler limits it is not advisable to use -outfile for large projects.
20.2 Differences to the Java module
@@ -1707,7 +1739,7 @@ However, a call from C# to CSharpDefaults.DefaultMethod() will of cours
should pass the call on to CSharpDefaults.DefaultMethod(int)using the C++ default value, as shown above.
-20.7 Multiples modules
+20.7 Multiple modules