5 个仓库
Executes custom logic written in Rust on streaming data, achieving native-level performance.
Distinct from User-Defined Data Functions: Distinct from User-Defined Data Functions: specifically for Rust implementation, not general SQL function definitions.
Explore 5 awesome GitHub repositories matching development tools & productivity · Rust User-Defined Functions. Refine with filters or upvote what's useful.
wasm-bindgen 是一个绑定生成器和互操作层,旨在映射 WebAssembly 和 JavaScript 边界之间的数据类型和函数。它充当外部函数接口,合成必要的样板代码以实现 Rust 和浏览器运行时之间的双向通信。 该项目生成胶水代码和包装器,自动化复杂类型的转换,允许将 Rust 函数导出为 JavaScript 模块,并将浏览器 API 导入到 Rust 中。它使用过程宏来定义这些接口,并根据 Rust 类型定义合成绑定。 该系统通过线性内存指针传递来管理内存,并使用 JavaScript 管理的内存句柄处理资源交换。它依赖于与 C ABI 兼容的调用约定,在模块和宿主之间传递原始整数和浮点数。
Uses procedural macros to annotate Rust functions and types for export to the JavaScript environment.
Arroyo is a high-performance stream processing platform built in Rust. It executes continuous SQL queries on streaming data with event-time semantics, enabling accurate windowed aggregations, joins, and stateful computations on unbounded event streams. The platform uses native Rust execution for high throughput and low latency, with periodic checkpointing for exactly-once fault tolerance and horizontal scaling across distributed workers. The system integrates deeply with Kafka for reading and writing topics with exactly-once delivery and supports change data capture (CDC) from MySQL and Postg
Enables high-performance custom transformations by writing user-defined functions in Rust.
pgx 是一个用于使用 Rust 语言开发高性能 PostgreSQL 扩展的框架和工具套件。它提供了一个底层 API 包装器,用于与内部数据库内存上下文、日志系统和核心执行 API 进行交互,从而能够直接在数据库引擎内实现自定义的数据库功能和逻辑。 该项目的特色在于其专用的构建工具和命令行接口,用于管理从环境初始化到二进制打包的扩展开发生命周期。它包含一个类型映射器,可将语言结构转换为数据库复合类型,并自动生成相应的 SQL 模式定义。 该框架涵盖了广泛的功能面,包括用户定义函数映射、二进制协议集成,以及多版本目标支持,以确保跨不同数据库版本的兼容性。它还提供了专门的内存管理包装器来处理指针并防止数据库环境中的内存泄漏。
Maps typed Rust functions to the PostgreSQL internal execution system to create custom functions and triggers.
pgrx is a framework for building and packaging custom PostgreSQL extensions using Rust. It serves as a foreign function interface bridge that maps Rust types and functions to the internal server programming interface of the database. The project provides a specialized toolchain for cross-compilation across different operating systems and target architectures using custom sysroots. It includes a schema generator that automatically translates high-level language structures into SQL definitions and binary protocol mappings. The framework manages memory safety by wrapping database memory context
Provides a complete toolkit for defining PostgreSQL user-defined functions, triggers, and custom types in Rust.
uniffi-rs is a Rust FFI binding generator and multi-language binding tool. It functions as an automated binding scaffolder that creates type-safe foreign function interfaces and native wrappers for Rust libraries in languages such as Swift, Kotlin, and Python. The project provides a system for cross-language interface definition, allowing functions and data structures to be specified in a shared format to ensure consistent API signatures across platforms. It further serves as an FFI memory management layer, handling object lifetimes and thread safety when sharing state between Rust and foreig
Annotates functions and traits with export macros to expose them across FFI without a separate definition file.