Make variable accessor functions the same across all modules for %extend with member variables to work consistently across all language modules and as documented. Use -oldvarnames commandline option to get the original variable names.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@7313 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
William S Fulton 2005-06-23 20:30:14 +00:00
commit 0edd1dee4d
4 changed files with 41 additions and 13 deletions

View file

@ -36,6 +36,7 @@ class CSHARP : public Language {
bool variable_wrapper_flag; // Flag for when wrapping a nonstatic member variable
bool wrapping_member_flag; // Flag for when wrapping a member variable/enum/const
bool global_variable_flag; // Flag for when wrapping a global variable
bool old_variable_names; // Flag for old style variable names in the intermediary class
bool generate_property_declaration_flag; // Flag for generating properties
String *imclass_name; // intermediary class name
@ -89,6 +90,7 @@ class CSHARP : public Language {
variable_wrapper_flag(false),
wrapping_member_flag(false),
global_variable_flag(false),
old_variable_names (false),
generate_property_declaration_flag(false),
imclass_name(NULL),
@ -170,6 +172,9 @@ class CSHARP : public Language {
} else if ((strcmp(argv[i],"-noproxy") == 0)) {
Swig_mark_arg(i);
proxy_flag = false;
} else if (strcmp(argv[i],"-oldvarnames") == 0) {
Swig_mark_arg(i);
old_variable_names = true;
} else if (strcmp(argv[i],"-help") == 0) {
Printf(stdout,"%s\n", usage);
}
@ -256,9 +261,10 @@ class CSHARP : public Language {
Printf(wrapper_name, "CSharp_%%f", imclass_name);
Swig_name_register((char*)"wrapper", Char(wrapper_name));
Swig_name_register((char*)"set", (char*)"set_%v");
Swig_name_register((char*)"get", (char*)"get_%v");
Swig_name_register((char*)"member", (char*)"%c_%m");
if (old_variable_names) {
Swig_name_register((char*)"set", (char*)"set_%v");
Swig_name_register((char*)"get", (char*)"get_%v");
}
Delete(wrapper_name);
@ -2492,5 +2498,6 @@ C# Options (available with -csharp)\n\
-namespace <nm> - Generate wrappers into C# namespace <nm>\n\
-noproxy - Generate the low-level functional interface instead\n\
of proxy classes\n\
-oldvarnames - old intermediary method names for variable wrappers\n\
\n";

View file

@ -41,6 +41,7 @@ class JAVA : public Language {
bool variable_wrapper_flag; // Flag for when wrapping a nonstatic member variable
bool wrapping_member_flag; // Flag for when wrapping a member variable/enum/const
bool global_variable_flag; // Flag for when wrapping a global variable
bool old_variable_names; // Flag for old style variable names in the intermediary class
bool member_func_flag; // flag set when wrapping a member function
String *imclass_name; // intermediary class name
@ -107,6 +108,7 @@ class JAVA : public Language {
variable_wrapper_flag(false),
wrapping_member_flag(false),
global_variable_flag(false),
old_variable_names (false),
member_func_flag(false),
imclass_name(NULL),
@ -219,6 +221,9 @@ class JAVA : public Language {
} else if ((strcmp(argv[i],"-noproxy") == 0)) {
Swig_mark_arg(i);
proxy_flag = false;
} else if (strcmp(argv[i],"-oldvarnames") == 0) {
Swig_mark_arg(i);
old_variable_names = true;
} else if (strcmp(argv[i],"-jnic") == 0) {
Swig_mark_arg(i);
Printf(stderr,"Deprecated command line option: -jnic. C JNI calling convention now used when -c++ not specified.\n");
@ -375,9 +380,10 @@ class JAVA : public Language {
Delete(jniname);
Swig_name_register((char*)"wrapper", Char(wrapper_name));
Swig_name_register((char*)"set", (char*)"set_%v");
Swig_name_register((char*)"get", (char*)"get_%v");
Swig_name_register((char*)"member", (char*)"%c_%m");
if (old_variable_names) {
Swig_name_register((char*)"set", (char*)"set_%v");
Swig_name_register((char*)"get", (char*)"get_%v");
}
Delete(wrapper_name);
@ -3756,5 +3762,6 @@ Java Options (available with -java)\n\
-package <name> - set name of the Java package to <name>\n\
-noproxy - Generate the low-level functional interface instead\n\
of proxy classes\n\
-oldvarnames - old intermediary method names for variable wrappers\n\
\n";

View file

@ -198,6 +198,7 @@ private:
bool variable_wrapper_flag; // Flag for when wrapping a nonstatic member variable
bool wrapping_member_flag; // Flag for when wrapping a member variable/enum/const
bool global_variable_flag; // Flag for when wrapping a global variable
bool old_variable_names; // Flag for old style variable names in the intermediary class
bool unsafe_module;
String *m3raw_name; // raw interface name
@ -262,6 +263,7 @@ MODULA3 ():
variable_wrapper_flag (false),
wrapping_member_flag (false),
global_variable_flag (false),
old_variable_names (false),
unsafe_module (false),
m3raw_name (NULL),
m3raw_intf (),
@ -794,6 +796,9 @@ MODULA3 ():
} else if (strcmp (argv[i], "-noproxy") == 0) {
Swig_mark_arg (i);
proxy_flag = false;
} else if (strcmp(argv[i],"-oldvarnames") == 0) {
Swig_mark_arg(i);
old_variable_names = true;
} else if (strcmp (argv[i], "-help") == 0) {
Printf (stdout, "%s\n", usage);
}
@ -1020,9 +1025,10 @@ MODULA3 ():
Printf (wrapper_name, "Modula3_%%f", m3raw_name);
Swig_name_register ((char *) "wrapper", Char (wrapper_name));
Swig_name_register ((char *) "set", (char *) "set_%v");
Swig_name_register ((char *) "get", (char *) "get_%v");
Swig_name_register ((char *) "member", (char *) "%c_%m");
if (old_variable_names) {
Swig_name_register ((char *) "set", (char *) "set_%v");
Swig_name_register ((char *) "get", (char *) "get_%v");
}
Delete (wrapper_name);
@ -4205,9 +4211,10 @@ extern "C" Language * swig_modula3 (void)
const char *MODULA3::usage = (char *) "\
Modula 3 Options (available with -modula3)\n\
-generateconst <file> - generate code for computing numeric values of constants\n\
-generaterename <file> - generate suggestions for %rename\n\
-generateconst <file> - generate code for computing numeric values of constants\n\
-generaterename <file> - generate suggestions for %rename\n\
-generatetypemap <file> - generate templates for some basic typemaps\n\
-oldvarnames - old intermediary method names for variable wrappers\n\
\n";
/*

View file

@ -27,6 +27,7 @@ static const char *usage = (char*)
"-prefix <name> - Set a prefix <name> to be prepended to all names\n"
"-where - Emit library location\n"
"-suffix <name> - Change .cxx to something else\n"
"-oldvarnames - old intermediary method names for variable wrappers\n"
"\n");
static int classmode = 0;
@ -36,6 +37,7 @@ static int static_member_function = 0;
static int generate_sizeof = 0;
static char *prefix=0;
static char *ocaml_path=(char*)"ocaml";
static bool old_variable_names = false;
static String *classname=0;
static String *module=0;
static String *init_func_def = 0;
@ -131,6 +133,9 @@ public:
i++;
} else
Swig_arg_error();
} else if (strcmp(argv[i],"-oldvarnames") == 0) {
Swig_mark_arg(i);
old_variable_names = true;
}
}
}
@ -269,8 +274,10 @@ public:
Swig_register_filebyname("classtemplate",f_classtemplate);
Swig_register_filebyname("class_ctors",f_class_ctors);
Swig_name_register("set","%v__set__");
Swig_name_register("get","%v__get__");
if (old_variable_names) {
Swig_name_register("set","%v__set__");
Swig_name_register("get","%v__get__");
}
Printf( f_runtime,
"/* -*- buffer-read-only: t -*- vi: set ro: */\n" );