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 هو طبقة توافقية (interop) لـ Cgo ومكتبة من الروابط الأصلية التي تسمح لتطبيقات Go باستدعاء أطر عمل Apple وواجهات برمجة تطبيقات النظام. يعمل كجسر بين وقت تشغيل Go والرموز الأصلية المتوافقة مع C لتسهيل برمجة نظام macOS وتطوير التطبيقات الأصلية. يتضمن المشروع مولد روابط Objective-C يقوم بمسح قواعد بيانات رموز النظام لإنتاج كود مصدر Go وثوابت. تمكن هذه الأداة من فحص رموز إطار العمل وإدارة وحدات الربط للحفاظ على واجهات حالية مع أطر العمل الأصلية. توفر المكتبة نظام إدارة ذاكرة لتنسيق دورات حياة الكائنات الأصلية داخل Go. يغطي هذا استخدام عد المراجع، وإنشاء مجموعات التحرير التلقائي (autorelease pools) للتعامل مع الكائنات المؤجلة، وتطبيق المنتهيات (finalizers) لمنع تسرب الذاكرة. كما يدعم التفاعل المباشر مع نظام التشغيل من خلال استدعاءات النظام ذات الربط المباشر وطلبات معلومات النواة.
Provides a generator that scans system symbol databases to produce Go source code and constants for native frameworks.
Rust-bindgen هو مولد ربط واجهة وظيفة خارجية (FFI) في وقت البناء ومحلل ترويسات C مصمم لأتمتة التوافق بين اللغات. يعمل كأداة لربط Rust بمكتبات C و C++ و Objective-C عن طريق إنتاج إعلانات خاصة بالمنصة أثناء عملية التجميع. يتميز المشروع بقدرته على التعامل مع هياكل لغة عائلة C المعقدة، بما في ذلك الوراثة والطرق في C++، بالإضافة إلى فئات وبروتوكولات Objective-C. يضمن التوافق الثنائي عبر بنيات مختلفة عن طريق حساب تخطيطات الذاكرة المدركة للهدف والتحقق من أن أحجام الهياكل والمحاذاة الناتجة تتطابق مع تعريفات المصدر الأصلية. توفر الأداة تعيين أنواع واسع النطاق لاتحادات C، وحقول البت، وأعضاء المصفوفة المرنة، مع تعيين أنواع المكتبة القياسية غير القابلة للترجمة أو المعقدة إلى كتل بايت مبهمة. تتضمن نظام تكوين لتصفية الروابط، واستبدال الأنواع المعقدة، والتحكم في اشتقاق السمات أو رؤية الحقول. يمكن أن تتضمن الروابط التي تم إنشاؤها توثيقاً مستخرجاً من ترويسات النظام وتتم معالجتها من خلال منسق قياسي لضمان تنسيق كود متسق.
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.