7 个仓库
Tools that parse C headers to automatically generate type-safe language bindings.
Distinct from Native Header Generators: Generates the final language bindings from headers, whereas native header generators often create C headers for other languages.
Explore 7 awesome GitHub repositories matching programming languages & runtimes · C Header Binding Generators. Refine with filters or upvote what's useful.
Kotlin-native is an ahead-of-time, cross-platform compiler and toolchain that transforms Kotlin source code into standalone native machine binaries. It functions as an LLVM native compiler, producing executable files that run directly on hardware without the requirement of a virtual machine. The project enables cross-platform native development across multiple operating systems and processor architectures, including iOS, Linux, and Windows. This allows for the creation of native Apple platform applications and software for embedded systems programming where direct memory management and minima
Provides tools to parse C headers and automatically generate type-safe language bindings for native interoperability.
SWIG is a tool that generates wrapper code to expose C and C++ libraries to a wide range of higher-level programming languages. It reads annotated C/C++ header files and produces language-specific bindings from a single interface definition, supporting languages such as Python, Java, Ruby, C#, Perl, and many others. The generated wrapper code is free from the project's GPL license, allowing users to distribute it under their own terms. The tool handles modern C++ features including templates, namespaces, smart pointers, and constructs up to C++20 through specialized parsing and code generatio
Generates wrapper code exposing C and C++ libraries to high-level programming languages.
Darwinkit 是一个 Cgo 互操作层和原生绑定库,允许 Go 应用程序调用 Apple 框架和系统 API。它作为 Go 运行时与原生 C 兼容符号之间的桥梁,旨在促进 macOS 系统编程和原生应用程序开发。 该项目包含一个 Objective-C 绑定生成器,可扫描系统符号数据库以生成 Go 源代码和常量。该工具支持检查框架符号并管理绑定模块,以保持与原生框架的当前接口一致。 该库提供了一个内存管理系统,用于协调 Go 内部的原生对象生命周期。这涵盖了引用计数的使用、创建自动释放池以处理延迟对象,以及应用终结器以防止内存泄漏。 它还支持通过直接绑定系统调用和内核信息请求与操作系统进行直接交互。
Provides a generator that scans system symbol databases to produce Go source code and constants for native frameworks.
Rust-bindgen is a build-time foreign function interface binding generator and C header parser designed to automate cross-language interoperability. It functions as a tool to bridge Rust with C, C++, and Objective-C libraries by producing platform-specific declarations during the compilation process. The project distinguishes itself through its ability to handle complex C-family language constructs, including C++ inheritance and methods, as well as Objective-C classes and protocols. It ensures binary compatibility across different architectures by calculating target-aware memory layouts and va
Parses C or C++ headers during the build process to automatically generate foreign function interface signatures.
Silk.NET is a low-level API binding library for the .NET ecosystem that provides high-performance interfaces for graphics, audio, and input APIs. It consists of a C header binding generator that converts headers into type-safe language bindings, a graphics API interface for GPU compute and rendering, and a cross-platform windowing wrapper. The project utilizes a customizable pipeline to automate the generation of language bindings from C headers by mapping metadata to syntax trees. Its windowing and input abstraction provides a unified interface to manage application windows across different
Includes a pipeline that automates the creation of language bindings by parsing C headers into metadata and syntax trees.
pycparser is a C99 parser library that converts C source code into an abstract syntax tree consisting of Python objects. It functions as an abstract syntax tree generator, transforming preprocessed C code into a structured hierarchy for programmatic analysis and transformation. The library integrates with a C preprocessor to handle directives before parsing. It also features a stub header parser, which uses minimal mock headers to allow the parsing of C code without requiring a full system C library installation. The project provides tools for static code analysis, C program analysis, and so
Provides minimal stub headers to enable parsing of C source code without a full system library installation.
The project is a reusable collection of modular compiler and toolchain technologies designed for building optimizers, code generators, and multi-language programming environments. It provides foundational compiler frontend technologies that translate source code written in C, C++, and Objective-C into a low-level programming language and intermediate code format. This intermediate representation enables cross-language analysis, program transformation, and target-independent optimization alongside a cross-platform programming framework that allows developers to write single-source accelerated a
Automatically generates C and C++ header files and Python modules from interface definitions to streamline cross-language integration.