JNAerator

Parse C headers with this component.
Download

JNAerator Ranking & Summary

Advertisement

  • Rating:
  • License:
  • GPL
  • Publisher Name:
  • Olivier Chafik
  • Operating Systems:
  • Windows All
  • File Size:
  • 5.1 MB

JNAerator Tags


JNAerator Description

JNAerator is a handy, easy to use, simple tool designed to parse C and Objective-C headers and generates the corresponding JNA and Rococoa Java interfaces (it also has a very limited support for C++). Main features: Handles most of ANSI-C (not everything yet, though), including (but not restricted to) : structs & unions (including bit fields) functions and callbacks (including varargs) typedefs, macro definitions, constants & enums, global variables... generates C++ name mangling for functions & static methods : no need to declare functions in extern "C" {...} blocks (note, however, that most C++ constructs will be skipped gracefully). Only supports GCC4 and MSVC9's mangling schemes (Intel C++ Compiler is on the works). embeds a full-fledged C preprocessor (the great thirdparty Anarres JCPP library, under the Apache 2.0 license) parses Visual Studio solutions (*.sln) and projects (*.vcproj) files to retrieve source files, preprocessor symbols and include paths knows about standard compilers and SDKs setups (defaults to know where to find core headers in Visual Studio, frameworks under Mac OS X… GCC not handled automatically yet but paths can be added to command line) converts parsed comments to JavaDocs provides multiple choices of function signatures where possible. supports JNA's two wrapping modes : interface mapping mode and new experimental direct calling mode (-direct switch) generates complete Objective-C mappings for use with Rococoa : may analyze many frameworks at the same time handles all methods added to a class by parsed protocols parses BridgeSupport files, either as a primary source of information or as a complement. BridgeSupport files can be provided in command line or will be fetched automatically when specifying a -framework SomeFramework argument. Supports DLL symbols extraction (-scanSymbols switch), demangling and parsing on Windows (very experimental, will only yield interesting and usable results for C++ functions - not methods, as neither fastcall nor thiscall are supported so far).


JNAerator Related Software