awesome-repositories.com
Blog
MCP
awesome-repositories.com

Descoperă cele mai bune repository-uri open source cu căutare AI.

ExploreazăCăutări recomandateAlternative open-sourceSoftware self-hostedBlogHartă site
ProiectServer MCPDespreCum realizăm clasamentulPresă
LegalConfidențialitateTermeni
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

7 repository-uri

Awesome GitHub RepositoriesC Header Binding Generators

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.

Awesome C Header Binding Generators GitHub Repositories

Găsește cele mai bune repo-uri cu AI.Vom căuta cele mai potrivite repository-uri folosind AI.
  • jetbrains/kotlin-nativeAvatar JetBrains

    JetBrains/kotlin-native

    6,982Vezi pe GitHub↗

    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.

    Kotlinccompilerkotlin
    Vezi pe GitHub↗6,982
  • swig/swigAvatar swig

    swig/swig

    6,294Vezi pe GitHub↗

    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.

    SWIG
    Vezi pe GitHub↗6,294
  • progrium/darwinkitAvatar progrium

    progrium/darwinkit

    5,428Vezi pe GitHub↗

    Darwinkit este un strat de interoperabilitate Cgo și o bibliotecă de binding-uri native care permite aplicațiilor Go să apeleze framework-uri Apple și API-uri de sistem. Acesta funcționează ca o punte între runtime-ul Go și simbolurile native compatibile cu C pentru a facilita programarea sistemului macOS și dezvoltarea de aplicații native. Proiectul include un generator de binding-uri Objective-C care scanează bazele de date de simboluri ale sistemului pentru a produce cod sursă Go și constante. Acest instrument permite inspectarea simbolurilor framework-ului și gestionarea modulelor de binding pentru a menține interfețe actualizate cu framework-urile native. Biblioteca oferă un sistem de gestionare a memoriei pentru coordonarea ciclurilor de viață ale obiectelor native în Go. Aceasta acoperă utilizarea numărării referințelor, crearea de autorelease pools pentru a gestiona obiectele amânate și aplicarea finalizatorilor pentru a preveni scurgerile de memorie. De asemenea, suportă interacțiunea directă cu sistemul de operare prin apeluri de sistem cu binding direct și cereri de informații despre kernel.

    Provides a generator that scans system symbol databases to produce Go source code and constants for native frameworks.

    Goappkitappleapple-apis
    Vezi pe GitHub↗5,428
  • rust-lang/rust-bindgenAvatar rust-lang

    rust-lang/rust-bindgen

    5,212Vezi pe GitHub↗

    Rust-bindgen este un generator de binding-uri pentru interfața de funcții străine (FFI) la momentul build-ului și un parser de headere C conceput pentru a automatiza interoperabilitatea între limbaje. Funcționează ca un instrument pentru a face legătura între Rust și bibliotecile C, C++ și Objective-C prin producerea de declarații specifice platformei în timpul procesului de compilare. Proiectul se distinge prin capacitatea sa de a gestiona constructe complexe ale limbajelor din familia C, incluzând moștenirea și metodele C++, precum și clasele și protocoalele Objective-C. Asigură compatibilitatea binară pe diferite arhitecturi prin calcularea layout-urilor de memorie conștiente de țintă și validarea faptului că dimensiunile și aliniamentele structurilor generate se potrivesc cu definițiile sursă originale. Instrumentul oferă mapare extinsă a tipurilor pentru uniuni C, bitfields și membri de tip array flexibili, mapând în același timp tipurile complexe sau netraductibile din biblioteca standard către blob-uri de octeți opace. Include un sistem de configurare pentru filtrarea binding-urilor, substituirea tipurilor complexe și controlul derivării trăsăturilor sau vizibilitatea câmpurilor. Binding-urile generate pot include documentație extrasă din headerele sistemului și sunt procesate printr-un formator standard pentru a asigura un stil de cod consistent.

    Parses C or C++ headers during the build process to automatically generate foreign function interface signatures.

    Rustbindingscodegenffi
    Vezi pe GitHub↗5,212
  • dotnet/silk.netAvatar dotnet

    dotnet/Silk.NET

    4,907Vezi pe GitHub↗

    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.

    C#3daudiocsharp
    Vezi pe GitHub↗4,907
  • eliben/pycparserAvatar eliben

    eliben/pycparser

    3,473Vezi pe GitHub↗

    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.

    Python
    Vezi pe GitHub↗3,473
  • intel/llvmAvatar intel

    intel/llvm

    1,497Vezi pe GitHub↗

    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.

    LLVMintelllvmoneapi
    Vezi pe GitHub↗1,497
  1. Home
  2. Programming Languages & Runtimes
  3. Language Interoperability
  4. Native C Interoperability
  5. C Function Bindings
  6. Native Header Generators
  7. C Header Binding Generators

Explorează sub-etichetele

  • Comment ExtractionExtracting and preserving source code comments from headers to include as documentation in generated bindings. **Distinct from C Header Binding Generators:** Distinct from C Header Binding Generators: focuses on the extraction of metadata/comments for documentation rather than the generation of types.
  • Header AggregationConsolidating multiple header files into a single processing stream to control binding generation. **Distinct from C Header Binding Generators:** Distinct from C Header Binding Generators: focuses on the aggregation and filtering of multiple headers before generation, not the generation process itself.
  • Header MockingThe practice of creating fake headers to allow a parser to function without real system headers. **Distinct from C Header Binding Generators:** Distinct from Binding Generators: focuses on providing mock headers to the parser, not generating bindings for other languages.
  • Objective-C Symbol Binding GeneratorsTools that generate language bindings by scanning native symbol databases and Objective-C metadata. **Distinct from C Header Binding Generators:** Distinct from C Header Binding Generators: uses symbol databases rather than parsing C header files.