#downcast #value #typed #dynamically #dynamic-type #calls #dynanmically

dynamic

具有快速向下转换功能的动态类型值

3 个不稳定版本

使用旧的 Rust 2015

0.2.1 2016年2月15日
0.2.0 2016年2月15日
0.1.0 2016年2月15日

#2577Rust 模式

Download history 41/week @ 2023-11-24 108/week @ 2023-12-01 91/week @ 2023-12-08 42/week @ 2023-12-15 2/week @ 2023-12-22 5/week @ 2024-01-12 97/week @ 2024-01-19 194/week @ 2024-01-26 89/week @ 2024-02-02 53/week @ 2024-02-09 245/week @ 2024-02-16 343/week @ 2024-02-23 160/week @ 2024-03-01 38/week @ 2024-03-08

802 每月下载量
3 crates 中使用

MIT 许可证

7KB
113

dynamic

具有快速向下转换功能的动态类型值。

文档

提供了一个包含动态类型值的 Dynamic 类型。 Dynamic 类似于 std::any::Any,但向下转换不涉及任何虚函数调用,因为包含值的 TypeId 是预先计算的。

示例

extern crate dynamic;

use dynamic::Dynamic;

fn main() {
    // Create a new Dynamic value.
    let x = Dynamic::new(100usize);

    // If we try to downcast to the wrong type it will not work.
    assert_eq!(x.downcast_ref::<i32>(), None);

    // If we downcast to the right type, we get access.
    assert_eq!(x.downcast_ref::<usize>(), Some(&100usize));
}

用法

使用 crates.io 仓库;将其添加到您的 Cargo.toml 中,与其他依赖项一起

[dependencies]
dynamic = "0.2"

作者

Jonathan Reem 是 dynamic 的主要作者和维护者。

许可证

MIT

依赖项

~13KB