Commit graph

81 commits

Author SHA1 Message Date
Oliver Buchtala
89610e984e Beautified Javascript module. 2014-03-05 01:39:26 +01:00
Oliver Buchtala
b5bc87667d Fix regressions.
- Adapted to changes in UTL
- Fixed detection of setters and getters.
2014-03-05 01:10:55 +01:00
Oliver Buchtala
70385842df Add missing copy ctor for Javascript Code Template class. 2014-02-28 10:40:41 +01:00
Oliver Buchtala
16a702c0aa Added a comment. 2014-02-26 10:48:38 +01:00
Oliver Buchtala
15550dab45 Fix issue with strange constants under OSX.
Receiving strange constant nodes before the real tree
under OSX 10.8. Not so under Ubuntu 12.04.
2014-02-25 20:16:15 +01:00
Oliver Buchtala
8e65414a76 Add an extra argument for enabling nodejs support.
This is essentially using the v8 emitter plus setting a #define.
2014-02-20 11:37:15 +01:00
Oliver Buchtala
48e7df8eb2 Better error message when no Javascript emitter is specified. 2014-02-20 11:15:18 +01:00
Oliver Buchtala
915b709433 Not a real change.
Using a macro to reset JSEmitterStates for the sake of readability.
2014-02-14 00:02:05 +01:00
Oliver Buchtala
1e34ecdc31 Next iteration on creating a documentation for the Javascript module. 2014-02-13 19:25:16 +01:00
Oliver Buchtala
6a366cc050 Fix regression. 2013-09-27 03:24:50 +02:00
Oliver Buchtala
51b36d1a1f Add non pretty printing function to Templates. 2013-09-24 03:55:51 +02:00
Oliver Buchtala
dc62a69775 Fix bug with typedefd function pointers. 2013-09-24 03:55:10 +02:00
Oliver Buchtala
b9ecf75f17 Fix emitter for member pointer constants.
However, I am not happy with the constant emitter in general.
Should not return dynamic values but register constant wrappers statically.
2013-09-24 01:50:13 +02:00
Oliver Buchtala
8bf966a65c Fix %nspace support and activated relevant tests. 2013-09-24 01:47:13 +02:00
Oliver Buchtala
b3c198ccee Fix regression. 2013-09-16 22:28:14 +02:00
Oliver Buchtala
b99e8613ad Bugfix in argument marshalling. 2013-09-16 21:56:52 +02:00
Oliver Buchtala
0528fd3ac3 Bugfix for Javascript generator. 2013-09-16 11:46:00 +02:00
Oliver Buchtala
147cec70f1 Replace $symname in generated function wrappers. 2013-09-16 04:54:57 +02:00
Oliver Buchtala
1f07195812 Rearrange generation of init block to have custom init code within the initializer body. 2013-09-16 03:53:00 +02:00
Oliver Buchtala
80ce36c445 Make JSC inheritance definition more robust. 2013-09-16 02:27:51 +02:00
Oliver Buchtala
973042302b Removed dead code. 2013-09-16 01:57:55 +02:00
Oliver Buchtala
bb7bd50eab Add support for IN/OUTPUT typemaps. 2013-09-16 00:55:43 +02:00
Oliver Buchtala
acfed20eba Bugfix Javascript generator: valid name for dispatcher functions. 2013-09-12 05:10:23 +02:00
Oliver Buchtala
1a04e488bc Fix Javascript generator for smartpointeraccessed variables. 2013-09-12 05:40:59 +03:00
Oliver Buchtala
8bf95c4356 Bugfix for Javascript generator: avoid duplicate action code generation. 2013-09-12 05:09:35 +03:00
Oliver Buchtala
09a210e037 Bugfix in Javascript generator: detect member setter/getters correctly. 2013-09-12 04:09:21 +03:00
Oliver Buchtala
dd84e6f9e0 Some fixes and cleanup in Javascript generator.
- v8 generator uses the correct mangled name for class templates
- removed symbols for template variables in favor of using the string
  literals directly, as it is easier to understand when debugging.
2013-09-10 14:16:36 +03:00
Oliver Buchtala
001f38c6a9 Fix settings for building nodejs tests.
Removed the `-node` command line flag.
Instead one has to use `-v8 -DBUILDING_NODE_EXTENSION=1`.
2013-09-10 13:29:16 +03:00
Oliver Buchtala
571c516a0b Some fixes for the Javascript generator.
- added missing `exception.i`
- added missing generator block `wrappers` for v8
2013-09-09 22:25:51 +03:00
Oliver Buchtala
b6c9c97b96 Fix Javascript generator to use %renamed variable names. 2013-09-09 15:05:11 +03:00
Oliver Buchtala
1729fac360 Bug-fix for static variables as proposed by Kota Iguchi.
Fixes #20.
2013-09-09 12:46:07 +03:00
Oliver Buchtala
29ccb270af Renamed object provided to JS initializers.
JSC initializer create a new module object.
V8 initializer fill a provided 'exports' object.
2013-09-06 00:40:29 +03:00
Kota Iguchi
78a3cc9e3e Added the finalize callback (JSObjectFinalizeCallback) 2013-09-03 13:49:36 +02:00
Oliver Buchtala
5228c0eeab Add a dedicated mode for creating node modules. 2013-09-03 05:36:41 +02:00
Kota Iguchi
0732592ed9 Patch to support argout typemap for your swig-v8 branch. 2013-08-31 03:47:49 +02:00
Oliver Buchtala
32f9cce600 Merged whoozle branch with ewmailing branch.
Conflicts:
	Lib/javascript/v8/javascriptcode.swg
2013-08-31 03:47:43 +02:00
Oliver Buchtala
306b265af9 Merge branch 'devel' of git://github.com/oliver----/swig-v8 into devel
Conflicts:
	Lib/javascript/v8/javascriptcode.swg
2013-08-31 03:47:08 +02:00
Eric Wing
ed729f7d3a This brings over the memory leak fixes for pointers to structs with a %extend destructor from my Neha fork. The generator was not generating and connecting the needed code for the requested destructor to the v8 dtor finalizer.
I did not realize this branch has some JavaScriptCore stuff in it too. Unfortunately, it seems to have its own unique problems (like creating C++ files when it should be generating C files). My changes are targeted for v8, and I don't think my JSCore changes fully reach in this JSCore implementation so more work would need to be done to get this branch working. I think my Neha fork is in better shape at the moment.

Also, I did port over the 'NULL out the dtor function pointer' in the %nodefaultdtor fix to v8.

Usage case:
struct MyData {
%extend {
~MyData() {
FreeData($self);
}
}
};
%newobject CreateData;
struct MyData* CreateData(void);
%delobject FreeData;
void FreeData(struct MyData* the_data);

where the use case is something like:
var my_data = example.CreateData();
my_data = null;
2013-08-31 03:46:07 +02:00
Oliver Buchtala
868803ce2a Merge replayed as done by c778d16abed35829b103d607a53c8f88e3b2d595 2013-08-31 03:44:44 +02:00
Vladimir Menshakov
a190288e66 fixed overloaded functions multiplication 2013-08-31 03:34:39 +02:00
Oliver Buchtala
a4036deda8 Add pre-processor defines to detect the javascript engine. 2013-08-31 03:34:38 +02:00
Oliver Buchtala
8b10c47ed8 Fix regression: add an include for Node.js header. 2013-08-31 03:34:37 +02:00
Oliver Buchtala
caa92740d3 Add an option to deactivate creation of an extra module object in javascript.
This is useful, if the extension host calls the initializer with custom
local variables.
E.g., this is the case with node.js.
2013-08-31 03:23:12 +02:00
Oliver Buchtala
4fea3a403e Generate an extra file part after the initializer for v8 modules.
E.g., this is useful for creating node.js modules.
2013-08-31 03:23:12 +02:00
Oliver Buchtala
2c4a90a37d Generate defines for initializer function. 2013-08-31 03:23:11 +02:00
Oliver Buchtala
6754bf2b49 Generate cleanup code for %newobject. 2013-08-31 03:23:10 +02:00
Oliver Buchtala
57980975a0 Generate cleanup code. 2013-08-31 03:23:10 +02:00
Oliver Buchtala
94730dad7a Beautify output of v8 emitter.
Trimming some of the code templates.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/oliverb-javascript-v8@13830 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-09-08 01:16:54 +00:00
Oliver Buchtala
217ffb11d0 Fix regressions of latest commits.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/oliverb-javascript-v8@13828 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-09-08 01:16:26 +00:00
Oliver Buchtala
9b06144d39 Fix handling of overloaded ctors in v8 emitter.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/oliverb-javascript-v8@13827 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2012-09-08 01:16:09 +00:00