v 4.0.2|SWIG
Software development tool
Simplified wrapper-and-interface generator (SWIG) converts C/C++ files into various high-level programming languages. It is used to create user interfaces, environments, and test program prototypes.
Comprehensive compatibilitySWIG can work with both scripted and unscripted programming languages. It will automatically generate wrappers to programs in different formats, including Javascript, Ruby and Python.
It doesn't cover all languages and especially not those for object-oriented programming. To convert.vapi or.vala abstractions to C++, you'll need Valabind.
FunctionsSWIG is free to use. It creates a source-code that connects the target language with C. However, it can come in two forms depending on the language.
The difference is that one library can be linked to an external module while the other directly links to programs in the target language.
You have complete control over the wrapper generation process. The program offers many customization options, including exception handling, ambiguity resolution and memory management. Access to extensive diagnostic options is also available.
SWIG allows you to customize your program and test various scripts before they are included in the final program. Under the Gnu license, you can create code for both commercial and non-commercial purposes.
Input and OutputThe program will accept files with ANSI C/C++ declarations or SWIG directives as input after you launch it. These files will be identified by their.i and.swg suffixes.
SWIG generates a C/C++ output file that contains all wrapper code required to build an extension module in your target language. It could generate additional data depending on which one you choose.
You don't have to modify the output file. Instead, you can just compile it and add to your C/C++ shared libraries.
Professionals will find this usefulSWIG allows for customisation of programs and automates much of the process. Even though the final product does not include a scripting engine it is useful for writing test scripts. This tool is useful for programmers who have some knowledge in the field.