Commit graph

49 commits

Author SHA1 Message Date
Art Yerkes
e0dca0ec65 shapes example: slight correction to depth map.
makedebugtop: include swig.cmo
Lib: factored out more common code, slightly reorganized class type.
     added director define and exceptions.
     std_string: length from the original ocaml string (no longer depends on
      null termination)
     ocamldec.swg/ocaml.swg: added caml_string_len
Examples/Makefile.in: quiet about checking out files.
Ocaml.cxx:
     Fixed abstract director test case.
     Include/exclude director.swg based on directors being enabled.
Final edits for 1.3.20, barring bugs being discovered.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5477 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-04 06:15:07 +00:00
Art Yerkes
074327ba72 All test cases compile except director_abstract. I clued from what
William Fulton and Dave were talking about regarding the template parameters
and (), and this solved a bunch of wierd little problems I was having.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5455 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-02 08:50:39 +00:00
Art Yerkes
6f780fa41e Added `` for C enums.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5373 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-11-23 12:25:26 +00:00
Art Yerkes
1117c51509 Added string.h include.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5371 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-11-23 11:59:03 +00:00
Art Yerkes
cab8fc7fb9 Added sizeof operator for classes (and struct, unions), enabled with
"sizeof"="1" on the module node.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5370 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-11-23 11:58:12 +00:00
Art Yerkes
734e61b869 Added SWIG_contract_assert.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5368 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-11-23 08:20:12 +00:00
Art Yerkes
1663433c96 Missing assert.h
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5291 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-11-10 23:47:46 +00:00
Art Yerkes
243ebeeb27 Final edits. Corrected single, zero arg cases.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5233 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-11-01 07:54:12 +00:00
Art Yerkes
d46db88c4d Slight type adjustment for invoke. This makes swigp4 a bit easier to
deal with.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5230 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-11-01 06:10:50 +00:00
Art Yerkes
5ee35648b8 Some nice last-minute goodies for the camlp4 module.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5229 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-11-01 05:56:12 +00:00
Art Yerkes
bd4f186ae1 preamble for swig modules now that a separate Swig module exists.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5202 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-10-25 03:24:31 +00:00
Art Yerkes
a181d5cf18 Added convert_c_obj function.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5201 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-10-25 03:22:51 +00:00
Art Yerkes
1053c27e1e Cleaner interface.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5200 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-10-25 03:20:40 +00:00
Art Yerkes
ea88458c59 Forgot to add files.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5199 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-10-25 03:18:41 +00:00
Art Yerkes
b6bf9d6036 More orthodox way of building the Swig module. I'm working on making
modules easier to link together by isolating the common types and functions
in a module that they all open.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5197 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-10-22 13:46:42 +00:00
Art Yerkes
dff2895809 Director related changes, other edits.
director_wombat testcase, as well as all others except director_abstract
compile.
Four test cases fail.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5196 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-10-22 04:01:27 +00:00
Art Yerkes
c779469a61 Working directors again. I need to focus on director_abstract testcase.
TODO: my ranting on typing.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5160 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-09-25 06:46:17 +00:00
William S Fulton
55edb198e3 Fixes to comply with with ISO/IEC 14882:1998(E) 17.4.3.1.2 (symbol names)
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5145 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-09-23 21:16:38 +00:00
William S Fulton
216f8774c4 __OCAML__SWIG__MAXVALUES removed. It wasn't being used. Is this okay Art?
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5144 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-09-23 21:15:39 +00:00
William S Fulton
64bd8a0660 Corrected __cpluscplus typo
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5143 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-09-23 21:14:35 +00:00
William S Fulton
f4fac221fa - Compliance with ISO/IEC 14882:1998(E) 17.4.3.1.2 -> eg double underscores removed
- Potential member variable and method name clashes remove by preceding with 'swig'
- consistent use of C++ booleans for the swig_disown flag across and within the modules that use this it in director code.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5139 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-09-22 22:55:17 +00:00
William S Fulton
9da574aae9 __DIRECTOR__ renamed Swig::Director
SWIG_DIRECTOR_EXCEPTION renamed Swig::DirectorException (similarly for derived classes)


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5138 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-09-22 20:13:42 +00:00
William S Fulton
7ee01311b2 typemap name changes:
inv => directorin
outv => directorout
argoutv => directorargout


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5137 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-09-20 23:52:28 +00:00
William S Fulton
a7933a75b0 First round of director mods
- Removed asserts
- The unused __DIRECTOR__ base class default constructor removed. I've used the conventional approach of having no default constructor rather than a private one (declaring it private doesn't serve any useful purpose when this constructor is not wanted).


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5132 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-09-20 15:11:38 +00:00
Luigi Ballabio
62741dd03e Typemap for size_t applied to std::size_t
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5004 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-08-17 11:52:31 +00:00
Luigi Ballabio
dcb94e7d4a std::pair added (but not very much tested)
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4959 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-07-10 12:42:42 +00:00
Art Yerkes
dd64ccf0ae Added class template support (removes text of ocaml class definition from swig
executable).  Now, changes to the implementation of classes can be made without
affecting SWIG itself.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4872 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-06-08 03:49:09 +00:00
Art Yerkes
f45fd1a36e Typedef_mptr test (with runme).
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4871 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-06-06 16:19:28 +00:00
Art Yerkes
7f9f4144ce Added minherit test + runme.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4870 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-06-06 15:16:32 +00:00
Art Yerkes
0f445779b9 All test cases work.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4868 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-06-06 04:29:38 +00:00
Art Yerkes
f31bcd2a0e Three test cases remaining. Gotta fix em all!
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4867 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-06-06 04:01:56 +00:00
Art Yerkes
e50fa50772 Four failed test cases remaining.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4866 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-06-06 02:04:00 +00:00
Art Yerkes
10af7694d7 Fixed two test cases.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4865 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-06-06 01:42:57 +00:00
Art Yerkes
3d43e16dc2 Added <assert.h>. I forgot it and GCC-3.3 no longer includes it from
any other header I use.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4845 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-06-02 02:36:46 +00:00
Art Yerkes
79785d403c Removed runtime lib. It's not needed anymore.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4798 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-05-19 17:59:31 +00:00
Luigi Ballabio
b416beb9e3 Miscellaneous patches from users
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4654 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-04-02 07:41:56 +00:00
Art Yerkes
f7d59cab5d All but four test cases work. I'm going to leave these for afterward.
I've moved completely away from the "value" type to "caml_value_t".  Although
a bit painful, this will make things easier for me.  I seem to be seeing
quite a few things that use the word value as a function, type, etc, and
wanted to get something that doesn't collide.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4593 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-03-20 20:51:05 +00:00
Art Yerkes
4b2da49eb3 Added:
Type registration.  Correct support for casting.  Proper type safety.
Changed:
ocaml.swg: Correct casts, declaration order for C
ocamldec.swg: Removed problematic forward declarations without array index.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4573 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-03-19 16:24:47 +00:00
Art Yerkes
de9c786cad Working example. See Examples/ocaml/shapes.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4489 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-03-10 04:14:04 +00:00
Art Yerkes
ade9d25284 Director: added disown. It now mutates the reference held by the object.
mlheading and mliheading: Added C_director_core, which holds the state needed
by the director to disown.
std_string and std_vector: Added specific support for the common case of
a zero-terminated char **.
typemaps.i: Withdraw default argout for SWIGTYPE &


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4481 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-03-08 20:14:31 +00:00
Art Yerkes
8dd475f93e typemaps.i: $descriptor usage correction.
ocaml.cxx: director classes (needs more testing, but my Qt example works).
director.swg: Core director class for Ocaml.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4480 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-03-08 17:11:19 +00:00
William S Fulton
7c29b13b93 long long typemap mods for use with %apply
Untested... I don't have ocaml


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4441 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-03-06 23:22:35 +00:00
Art Yerkes
67ab95ab49 Proper handling of arrays finally in the works, no special typemaps needed.
Some corrections for use with -small.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4420 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-03-01 07:53:24 +00:00
Luigi Ballabio
9d50216d9c Support for std::map (thanks, Dave)
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4414 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-02-27 10:05:55 +00:00
Art Yerkes
b8490f9c18 Added to typemaps: reference type in/out
Strings <=> std::string by value
std::wstring accessible from Ocaml.  The string example converts a multibyte
japanese EUC sequence to a single wchar_t sequence if you have the ja_JP.EUC-JP
locale, or similar.
Better handling of reference in types
Corrected problems with & * mismatch in type verifier.
Type verifier now really functional.  No more type errors in places they
wouldn't be allowed in C++, unless you work at it.
Added argout_ref example for argout_ref.
Init code now effective (called from let _ = f_<module>_init ())


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4412 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-02-27 07:09:12 +00:00
Art Yerkes
88b15ce253 corrections for std::string.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4325 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-02-16 13:32:40 +00:00
Art Yerkes
d69f24e750 typecheck: Foolish omission of break;
mlheading and mliheading: added make_x and get_x accessor and constructor
functions for C_xxx types.  This makes the system a bit more accomodating.
ocaml.swg: Corrected one SWIGSTATIC
std_vector.i: First shot at a working implementation (with example).
typemaps.i: Correction to handling of SWIGTYPE ...


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4320 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-02-16 07:29:34 +00:00
Luigi Ballabio
32e0a3d8e7 A global stl.i works just as well
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4237 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-01-17 12:44:47 +00:00
Dave Beazley
12a43edc2d The great merge
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4141 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2002-11-30 22:01:28 +00:00