#global #singleton #piston

当前

一个用于设置栈作用域中当前值的库,例如应用程序结构

8 个版本

使用旧的 Rust 2015

0.1.2 2016年9月6日
0.1.1 2015年6月24日
0.0.10 2015年4月4日
0.0.7 2015年2月21日
0.0.5 2015年1月21日

1787Rust 模式

Download history 48/week @ 2024-03-11 47/week @ 2024-03-18 47/week @ 2024-03-25 93/week @ 2024-04-01 37/week @ 2024-04-08 49/week @ 2024-04-15 50/week @ 2024-04-22 48/week @ 2024-04-29 56/week @ 2024-05-06 45/week @ 2024-05-13 36/week @ 2024-05-20 47/week @ 2024-05-27 47/week @ 2024-06-03 33/week @ 2024-06-10 42/week @ 2024-06-17 59/week @ 2024-06-24

每月下载 187
用于 7 个crate(5个直接使用)

MIT 许可证

6KB
96

当前 构建状态

一个用于设置栈作用域中当前值的库,例如应用程序结构

示例项目: 海鸟早餐

如何使用

使用当前对象的最佳编码实践

这还发布了库的安全指南。

动机

在游戏编程中,有许多种“当前”值

  • 当前窗口
  • 当前设备
  • 当前声音驱动器
  • 当前玩家对象

使用此库有两种方式

  • 一个不安全的版本,它简化了当前对象和可变引用之间的重构
  • 一个安全的版本,可以用于实验性库设计

将这些设置为“当前”值,您不需要将它们传递给每个方法。例如,您可以编写如下代码(演示不安全版本)

e.press(|button| {
    let gun = unsafe { &mut *current_gun() };
    let player = unsafe { &mut *current_player() };
    if button == SHOOT {
        gun.shoot(player.aim);
    }
});

如何贡献

没有运行时依赖项

功能