2 repositorios
Tools 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.
Explore 2 awesome GitHub repositories matching programming languages & runtimes · Objective-C Symbol Binding Generators. Refine with filters or upvote what's useful.
Darwinkit es una capa de interoperabilidad Cgo y librería de bindings nativos que permite a las aplicaciones Go llamar a frameworks de Apple y APIs del sistema. Funciona como un puente entre el runtime de Go y símbolos nativos compatibles con C para facilitar la programación del sistema macOS y el desarrollo de aplicaciones nativas. El proyecto incluye un generador de bindings de Objective-C que escanea bases de datos de símbolos del sistema para producir código fuente y constantes en Go. Esta herramienta permite la inspección de símbolos de framework y la gestión de módulos de binding para mantener interfaces actuales con frameworks nativos. La librería proporciona un sistema de gestión de memoria para coordinar ciclos de vida de objetos nativos dentro de Go. Esto cubre el uso de conteo de referencias, la creación de autorelease pools para manejar objetos diferidos y la aplicación de finalizadores para prevenir fugas de memoria. Además, admite la interacción directa con el sistema operativo a través de llamadas al sistema de binding directo y solicitudes de información del kernel.
Provides a generator that scans system symbol databases to produce Go source code and constants for native frameworks.
Rust-bindgen es un generador de enlaces de interfaz de funciones extranjeras en tiempo de compilación y analizador de encabezados C diseñado para automatizar la interoperabilidad entre lenguajes. Funciona como una herramienta para unir Rust con librerías C, C++ y Objective-C produciendo declaraciones específicas de la plataforma durante el proceso de compilación. El proyecto se distingue por su capacidad para manejar construcciones de lenguaje de la familia C complejas, incluyendo herencia y métodos de C++, así como clases y protocolos de Objective-C. Asegura la compatibilidad binaria entre diferentes arquitecturas calculando diseños de memoria conscientes del objetivo y validando que los tamaños y alineaciones de las estructuras generadas coincidan con las definiciones de origen originales. La herramienta proporciona un mapeo de tipos extenso para uniones C, campos de bits y miembros de matriz flexibles, mientras mapea tipos de librería estándar complejos o intraducibles a blobs de bytes opacos. Incluye un sistema de configuración para filtrar enlaces, sustituir tipos complejos y controlar la derivación de rasgos o la visibilidad de campos. Los enlaces generados pueden incluir documentación extraída de los encabezados del sistema y se procesan a través de un formateador estándar para asegurar un estilo de código consistente.
Creates FFI definitions from Objective-C headers by mapping classes to structs and protocols to traits.