Commit graph

1,079 commits

Author SHA1 Message Date
Marcelo Matus
a04dc64d04 fixes for const char[]
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5931 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-05-27 11:29:39 +00:00
Ahmon Dancy
9edaaf5a7d See CHANGES.recent
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5928 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-05-24 21:22:39 +00:00
William S Fulton
b6cb23c83e unnamed global enum variables support
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5927 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-05-24 20:35:16 +00:00
William S Fulton
5e1804c496 New enum wrapping options implemented and bug fixes:
Proper Java enums
Typesafe enum pattern
Original approach using integers for each enum item
'Type unsafe enums' - using static final integers in a Java class named after the C/C++ enum name


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5925 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-05-24 20:22:55 +00:00
William S Fulton
3e9b0bde05 New enum wrapping options implemented and bug fixes:
Proper C# enums
Typesafe enum pattern
Original approach using integers for each enum item


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5924 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-05-24 20:19:36 +00:00
William S Fulton
915454d6ef enumvalueex attribute now set during the type pass
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5923 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-05-24 20:14:58 +00:00
William S Fulton
ca13628e60 Unnamed enum instance in global scope fix
enumvalueex attribute now set during the type pass


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5922 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-05-24 20:13:55 +00:00
Lyle Johnson
410af41cae Incorporated Kou's patch for the Ruby module's %import directive, so
that nested module names are imported correctly.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5908 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-05-15 04:52:43 +00:00
William S Fulton
9705ff87be patch by Kevin Smith to emit directors when %feature("director") is specified for a class with no virtual methods, but a virtual destructor
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5905 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-05-12 21:18:09 +00:00
William S Fulton
b4a002dad0 Removed spurious junk so the file compiles
strdup removed - not ANSI and not on my system


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5904 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-05-12 20:56:17 +00:00
Ahmon Dancy
8a7c459cda See CHANGES.current
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5900 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-05-03 17:10:20 +00:00
John Lenz
2a575da398 Fix bug 782468
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5898 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-05-02 21:24:39 +00:00
Ahmon Dancy
fef1a09e5a Added Allegro CL module
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5896 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-27 23:00:41 +00:00
William S Fulton
594773a7e3 Revert typemaps changes for member variables (and static members and globals for some languages ).
The typemaps were changed to use const ref typemaps (C++ only, not C).
Inconsistency removed and the pointer typemaps used again.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5890 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-26 20:24:18 +00:00
Matthias Köppe
9b711ca7e6 In the generated GOOPS code, don't create methods that would not
specialize any arguments; simply re-export the primitive functions.
(This is a performance optimization which reduces load time and
execution time.)


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5886 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-26 14:05:20 +00:00
William S Fulton
18ad5f64b1 %import fix for C# enums
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5884 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-22 20:56:48 +00:00
William S Fulton
d346f06722 unnamed enum member variables - less verbose code generation that has a single solution for all compilers. Will only fail silently (no printfs like before) when using compiler switches that force enums to be different size to integers. If anyone ever does this, I will eat my hat
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5883 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-22 20:42:37 +00:00
William S Fulton
11f26b416c Fix for unnamed enum member variables
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5882 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-22 20:36:13 +00:00
Marcelo Matus
23ea59435d fix dirprot mode
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5874 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-11 12:20:04 +00:00
Marcelo Matus
64c0b01733 error fix in lang.cxx and more comments
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5871 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-11 08:09:57 +00:00
Marcelo Matus
1eba66b31b fix java reg. tests and add -directors flag
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5867 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-11 05:55:35 +00:00
Marcelo Matus
a9b4a82eae fix inplace python opers
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5859 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-09 21:58:47 +00:00
William S Fulton
5b0ea529f9 C++ enums are no longer wrapped by integers, they are now wrapped by C# enums.
For Example, given C++:

                enum AnEnum { foo, bar };
                typedef AnEnum AnEnumeration;
                void something(AnEnum e, AnEnumeration f);

            The following is generated:

                public enum AnEnum {
                  foo,
                  bar
                }
                public static void something(AnEnum e, AnEnum f) {...}

See the changes file for further details


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5851 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-09 19:41:40 +00:00
William S Fulton
152a5661a4 Mods for enumvalue being split into enumvalue and enumvalueex.
enumvalue contains the enum value for an enum item (if one given/parsed)
enumvalueex fills in the missing enum values, eg enumvalueex is set to 0 if no enum value given for the first enum item,
otherwise, contains the previous enum value + 1.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5850 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-09 19:37:33 +00:00
William S Fulton
374b5b7b44 Fix enums in the type system
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5849 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-09 19:34:00 +00:00
William S Fulton
678139bb95 enum support function for looking up the enum node from the symbol table given any enum string type
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5848 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-09 19:33:05 +00:00
William S Fulton
c369bc25ef mods for adding enums to the symbol table
enumvalue split into enumvalue and enumvalueex


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5847 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-09 19:28:16 +00:00
William S Fulton
1e5687070e Comments on the symbol table added
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5846 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-09 19:23:01 +00:00
William S Fulton
ef291371d5 enum fixes for the typesystem
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5845 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-09 19:22:01 +00:00
Henning Thielemann
c146a39d2e fixed NIL pointer problem for 'generaterename', nameToModula3 creates capitals after digits
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5844 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-08 16:05:57 +00:00
Marcelo Matus
4e64b1e7be fix array + typedef
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5827 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-03 08:45:22 +00:00
William S Fulton
c919e3a01c Fixes to compile under VC++ 6:
enum block_type needs to be public
can't use any + operators on enums


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5821 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-01 20:42:30 +00:00
Henning Thielemann
1cca8352ef made enum block_type a protected member of class MODULA3, hope that VC++ 6 is satisfied with that
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5818 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-01 15:49:16 +00:00
Marcelo Matus
ecff58b6bb fix casting type
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5814 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-01 03:58:47 +00:00
Marcelo Matus
facee0d359 slightly better support for template const/dest and features
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5811 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-31 11:29:54 +00:00
Marcelo Matus
0a3d3c0d0d added support for unnamed C++ enum members
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5805 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-31 01:35:44 +00:00
Marcelo Matus
d990cc031a better support for member vars
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5794 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-28 14:05:53 +00:00
Marcelo Matus
b1291b5a7b fixes some compiler warnings, and add better support
for member variables (in C++/python).


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5793 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-28 14:04:36 +00:00
Marcelo Matus
40e6464045 simpler mangling method
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5791 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-23 01:47:54 +00:00
Marcelo Matus
1e70ba49e7 Using the same mangling method whenever is needed.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5786 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-23 00:59:26 +00:00
Matthias Köppe
035bb2c955 Constness fix.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5781 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-21 13:15:06 +00:00
Matthias Köppe
e6d686e16f Fix the documentation strings of functions with anonymous arguments.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5779 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-21 11:49:44 +00:00
Henning Thielemann
483d8b4367 added basic Modula-3 support
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5776 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-19 11:45:29 +00:00
Marcelo Matus
48df694c7b add missing Swig_typedef_resolve_all
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5769 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-18 20:35:15 +00:00
Marcelo Matus
b6119293f3 fix director call for the single container argument case
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5768 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-18 20:32:14 +00:00
Henning Thielemann
a8340335f8 'const' for parameters of addSymbol
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5766 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-18 19:00:23 +00:00
Henning Thielemann
1a39907bd9 'const' for parameters of addSymbol
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5765 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-18 18:40:26 +00:00
Marcelo Matus
6c150e4328 Fragments can now be "type especialized", as the typemaps. The
syntax is as follows

 %fragment("name","header") { /* an old fragment */ }
 %fragment("name" {Type}, "header") { /* the fragment is type dependent */}

Now fragments can also be used inside templates:

 template <class T>
 struct A {
   %fragment("incode"{A<T>},"header") {
     /* 'incode' especialized fragment */
   }

   %typemap(in,fragment="incode"{A<T>}) {
     /*
       here we use the 'type especialized' fragment
       "incode"{A<T> }
      */
   }
 };


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5753 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-17 08:36:06 +00:00
Marcelo Matus
238cc1455c Added the #@ mangling extension
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5752 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-17 08:32:11 +00:00
Marcelo Matus
2e88f79ace Using the unused 'Swig_string_mangle' method to
implement the #@ preprocessor mangling


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5751 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-17 08:27:02 +00:00