Commit graph

191 commits

Author SHA1 Message Date
Olly Betts
42e34e1308 Convert C++ std::string to and from ruby such that strings containing
zero bytes are handled correctly, as they are elsewhere.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@9118 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-05-15 02:01:05 +00:00
Olly Betts
97e9837d46 Fix a typo.
[Patch recommit]


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@9112 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-05-14 18:56:46 +00:00
Marcelo Matus
52cfa52b83 fix docs, path provided by Olly
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@9047 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-04-11 01:40:20 +00:00
Marcelo Matus
b84495613a fix for old VC 6.0 and linking issue reported by Roy Sutton
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@9039 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-03-27 21:39:49 +00:00
Luigi Ballabio
a02fee0e9e Support for Ruby 1.6
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8992 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-03-09 08:34:09 +00:00
William S Fulton
797317163a cosmetics
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8988 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-03-07 22:02:54 +00:00
William S Fulton
8a31552220 Common template for head of each file detailing licence, distribution and authors information
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8977 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-03-07 00:45:17 +00:00
William S Fulton
49be05f4fd Common template for head of each file detailing licence, distribution and authors information
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8973 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-03-07 00:14:10 +00:00
Marcelo Matus
12ac239576 add argc,argv typemap for ruby
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8900 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-02-27 02:59:09 +00:00
Marcelo Matus
b92bf84691 reduce the aliasing warnings (when compiling with CFLAGS='-O2 -Wstrict-aliasing=2') to the minimum, ie, enums and pointer to functions
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8885 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-02-23 22:24:30 +00:00
Marcelo Matus
44264e5544 add the factory library for UTL
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8865 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-02-22 18:42:20 +00:00
Charlie Savage
e66f81f904 Fixed a bug in Ruby's object tracking functionality. Previously, an object could be returned even if it did not have the correct type. This could occur if a factory class' creation method had a signature returning a base type (like geometry) but in reality a subclass (like Point) was returned. In that case, it would then be impossible to implement a "downcast" method and get back a Ruby object of type Point. Also updated the test-suite to test this situation.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8861 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-02-22 08:20:48 +00:00
Marcelo Matus
e370e7b64d more comments
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8795 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-02-11 20:36:39 +00:00
Marcelo Matus
18d7ad613b comments, clean and cosmetics
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8782 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-02-11 02:20:17 +00:00
Marcelo Matus
3eeba5ef94 use one line macro when possible
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8770 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-02-10 09:24:28 +00:00
Charlie Savage
360508a4c3 Updated link that points to table of Ruby keywords.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8761 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-02-09 20:21:53 +00:00
Marcelo Matus
1fb7d818d0 fix ruby kw warnings, all can be methods
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8760 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-02-09 20:07:44 +00:00
Marcelo Matus
f5b5d09fea fix renaming for begin/end
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8758 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-02-09 16:43:24 +00:00
Marcelo Matus
35cac0f07f fix ruby std::vector to support element with nodefault constructors
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8754 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-02-08 23:55:53 +00:00
Marcelo Matus
36b96882c5 fix seg. fault for void types
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8694 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-02-03 22:09:54 +00:00
Marcelo Matus
0f7b502a3b fix -external-runtime and warning arounds in subversion
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8666 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-02-01 08:37:53 +00:00
Marcelo Matus
0d6baa85ef fix -external-runtime
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8654 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-31 00:02:58 +00:00
Marcelo Matus
19ce5762f0 reenable missing INPUT/OUTPUT, and add tests for std::string
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8637 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-30 19:55:43 +00:00
Marcelo Matus
f7578470a7 fix possible C errors
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8484 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-19 04:54:51 +00:00
Charlie Savage
b5d900d9b9 Changed rename rules to include functions and change Enums to only capitalize the first letter.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8474 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-17 04:54:48 +00:00
Marcelo Matus
526be12c1e change the %rename predicates to use the prefix %$ and avoid clashings with other rename directives
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8469 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-16 23:27:11 +00:00
Charlie Savage
96c9b489b4 Updated renaming rules.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8467 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-16 10:46:08 +00:00
Marcelo Matus
e777cae676 add at least %not support for rename predicates
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8465 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-15 19:34:43 +00:00
Marcelo Matus
a91cb0755a add rename for member variables
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8464 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-15 19:19:22 +00:00
Marcelo Matus
676bb93334 add more predicates for rename
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8463 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-15 18:21:26 +00:00
Marcelo Matus
32ec869558 long rule to match exactly const static variable with a value in the declaration
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8459 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-15 17:44:40 +00:00
Charlie Savage
1a4a4ed2f3 Changed rename check for constants to use %hasconsttype
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8444 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-15 00:49:54 +00:00
Charlie Savage
924a56a1aa Added support for Ruby bang methods. Bang methods end in exclamation points and indicate that the object being worked on will be modified in-place as opposed to being copied.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8441 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-15 00:25:48 +00:00
Marcelo Matus
507a8184cc use internal SWIG_exception_fail, let SWIG_exception as in 1.3.27
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8434 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-14 21:23:36 +00:00
Charlie Savage
0d57e7af5b Added SWIG_POINTER_EXCEPTION for backwards compatibility.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8422 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-13 23:43:12 +00:00
Charlie Savage
5ff6b71990 Undid change to check for nil object since it was not valid because it disallowed passing null pointers.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8417 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-13 22:27:44 +00:00
Charlie Savage
231d2a5f7b Added check for nil object being passed to SWIG_AsCharPtrAndSize. If a nil object is passed in then an error is returned.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8416 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-13 21:52:13 +00:00
Charlie Savage
b07505cc7b Fixed up checking for constants.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8408 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-13 01:49:29 +00:00
Charlie Savage
282a18a62a Use new camelcase,undercase,lowercase aliases.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8406 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-13 00:56:29 +00:00
Charlie Savage
f4d48d7bfc Moved constant renames from the c++ code to ruby.swg to reuse the new %rename functionality.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8404 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-13 00:51:49 +00:00
Charlie Savage
00f241311b Added %rename to change function and method names from CamelCase to lower_case_with_underscores.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8399 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-12 23:35:46 +00:00
Marcelo Matus
4b38b9da56 add space for rename rules
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8395 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-12 21:10:54 +00:00
Charlie Savage
ee63d5276c Updated Ruby Exception handling. Classes that are specified in throws clauses, or are marked as %exceptionclass, are now inherited from rb_eRuntimeError. This allows instances of these classes to be returned to Ruby as exceptions. Thus if a C++ method throws an instance of MyException, the calling Ruby method will get back a MyException object. To see an example, look at ruby/examples/exception_class.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8353 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-10 19:19:19 +00:00
Charlie Savage
7d44f269fb Wrapped customer error classes in function so they work in C and C++
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8343 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-10 03:38:08 +00:00
Charlie Savage
7e96a9e2d5 Added SWIG_ObjectPreviouslyDeletedError for Ruby. This error happens when a Ruby object's underlying C++ object has been freed. This can happen if a Ruby/C++ object is put into a C++ container that then frees its objects when it goes out of scope, leaving a dangling reference in Ruby.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8340 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-10 00:52:37 +00:00
Charlie Savage
e3822ad9d4 Rearranged the code a bit to store a global reference to the Ruby hash table delete method, thereby making it possible to look it up once instead of each time SWIG_RubyRemoveTracking is called.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8339 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-10 00:30:43 +00:00
Charlie Savage
180a2372dc Attemp #2 at defining rb_eNullReferenceError. This is done for C++, but for C
a more generic rb_eRuntimeError is thrown instead.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8333 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-09 22:17:06 +00:00
Charlie Savage
0fe0086def Removed defining rb_eNullReferenceError since this doesn't work in C - it
causes a 'initializer element is not constant" error.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8326 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-09 20:11:37 +00:00
Charlie Savage
a023f56b0c Removed duplicate definition of struct Guard.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8325 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-09 20:00:56 +00:00
Charlie Savage
384de7d10b Added Ruby support for SWIG_NullReferenceError.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8324 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-09 19:43:26 +00:00