目录简介简单示例创建项目界面设计切换主题自定义字体自定义图标经典布局定义导航变量实现导航界面实现导航逻辑实现主框架布局调试运行参考资料 简介 egui(发音为“e-gooey”)是一个简单、快速且高度可移植的 Rust 即时模式 GUI 库,跨平台、Rust原生,适合一些小工具和游戏引擎GUI: 文 ...
本文有删减,原文链接高级特征。 目录不安全 Rust不安全的超能力解引用裸指针调用不安全函数或方法创建不安全代码的安全抽象使用 extern 函数调用外部代码访问或修改可变静态变量实现不安全 trait访问联合体中的字段何时使用不安全代码高级 trait关联类型在 trait 定义中指定占位符类型默 ...
原文基础上有删减,原文链接 模式与模式匹配。 目录所有可能会用到模式的位置match 分支if let 条件表达式while let 条件循环for 循环let 语句函数参数Refutability(可反驳性): 模式是否会匹配失效所有的模式语法匹配字面值匹配命名变量多个模式通过 ..= 匹配值的范 ...
目录前言环境案例macOS 编译为 Linux 和 Windows 可用二进制程序编译为 Linux 平台编译为Windows平台最后 前言 鉴于 rust 中文资料较少,遇到问题的解决方案更少。这里记录遇到的一些问题。 Rust 支持交叉编译,可以在 macOS 平台编译出 Linux 或者 Wi ...
现在免费证书只能申请三个月(之前还能申请十二个月),拥有acme能力对于小的站点来说就比较需要,可以比较好的部署也不用关心TLS带来的烦恼。 ...
title: Rust的Cow类型有什么用?详解Cow及其用途 zhihu-url: https://zhuanlan.zhihu.com/p/684402569 Rust的智能指针有哪些?大多数人都能马上答出Box<T>、Rc<T>和Arc<T>和在异步编程中很常见的Pin<P>等等。不过,有一个 ...
在原文上有删减,原文链接Rust 的面向对象特性。 目录面向对象语言的特征对象包含数据和行为封装隐藏了实现细节继承,作为类型系统与代码共享顾及不同类型值的 trait 对象定义通用行为的 trait实现 traittrait 对象执行动态分发面向对象设计模式的实现定义 Post 并新建一个草案状态的 ...
std::borrow::ToOwned是Rust标准库中的一个特征,用于从借用的数据中创建一个具有所有权的副本。它的作用和Clone是一样的,但是相比Clone,它支持泛型;也就是说我们可以将一个类型T“Clone”为另一个类型U。这对处理一些特殊的类型来说很有用。 ToOwned的签名 ToOw ...
本文在原文基础上有删减,原文链接 无畏并发。 目录使用线程同时运行代码使用 spawn 创建新线程使用 join 等待所有线程结束将 move 闭包与线程一同使用使用消息传递在线程间传送数据信道与所有权转移发送多个值并观察接收者的等待通过克隆发送者来创建多个生产者共享状态并发互斥器一次只允许一个线程 ...
TLS证书在当今互联网中处于最重要的一环,他保护着我们的隐私数据的安全,也是最流行的加密方式之一。所以TLS证书的快速部署对于小而美的应用能让其快速的落地使用。 ...
本文在原文基础上有删减,原文参考Rust 智能指针 目录使用Box指向堆上的数据使用 Box 在堆上储存数据Box 允许创建递归类型cons list 的更多内容计算非递归类型的大小使用 Box<T> 给递归类型一个已知的大小通过 Deref trait 将智能指针当作常规引用处理追踪指针的值像引用 ...
Solana 开发学习之Solana 基础知识 Install the Solana CLI 相关链接 https://docs.solanalabs.com/cli/install https://solanacookbook.com/zh/getting-started/installation ...
通过`FromStr`及`Display`的重定义,我们可以支持更强大的自定义的序列化操作,系统绑定端口既认端口号也认绑定IP,所以我们可以对同个端口进行多次绑定。 ...
本文分享自华为云社区《华为云短信服务教你用Rust实现Smpp协议》,作者: 张俭。 协议概述 SMPP(Short Message Peer-to-Peer)协议起源于90年代,最初由Aldiscon公司开发,后来由SMPP开发者论坛维护和推广。SMPP常用于在SMSC(Short Message ...
wmproxy wmproxy已用Rust实现http/https代理, socks5代理, 反向代理, 负载均衡, 静态文件服务器,websocket代理,四层TCP/UDP转发,内网穿透等,会将实现过程分享出来,感兴趣的可以一起造个轮子 项目地址 国内: https://gitee.com/ti ...
匹配规则在对于复杂匹配的时候尤为重要,我们可以轻松的将各个请求分配到合适的位置,此处我们着重介绍了正则匹配及带`*`的路径匹配。 ...
原文链接参考Rust 关于 Cargo 和 Crates.io 的内容,注意Windows和Linux系统的文件路径差异。 目录采用发布配置自定义构建将 crate 发布到 Crates.io编写有用的文档注释常用(文档注释)部分文档注释作为测试注释包含项的结构使用 pub use 导出合适的公有 ...
多层代理可以帮助我们在有限的情况下构建出更稳定的代理通道,可以更好的保护源站,也可以利用该方法给企业构建出稳定的内网通道。也可以在统一出口的情况下保护内网的数据。 ...
对原文做了删减,原文参考Rust 中的函数式语言功能:迭代器与闭包。 目录闭包:可以捕获环境的匿名函数闭包会捕获其环境闭包类型推断和注解捕获引用或者移动所有权将被捕获的值移出闭包和 Fn trait使用迭代器处理元素序列Iterator trait 和 next 方法消费迭代器的方法产生其他迭代器的 ...
本章中讲述了浏览器缓存的设计(ETAG, Last-Modified, Cache-Control, Expires)及断点续传(Accept-Ranges: bytes)的实现流程及相关的部分源码,希望可以让你更了解文件服务器内部的原理组成。 ...