banner
davirain

davirain

twitter
github
知乎
twitter
and_then 和 map在使用上有什么区别
在 Rust 中,and_then 和 map 都是用于在对 Option 或 Result 进行转换时使用的方法,但它们的使用方式有所不同。 map 方法将一个 Option或 Result<T, E> 映射到一个新的 Option或 Result<U, E…
Rust十进制和16进制之间的互相转换
在 Rust 中,可以使用 format!() 宏将十进制数格式化为十六进制字符串。下面是一个简单的示例实现: Copy fn decimal_to_hex(decimal: u32) -> String { format!("{:X}", decimal) } 这里使用…
Convert Vec<Result<T>, E> to Result<Vec<T>, E>
To convert a Vec<Result<T, E>> to a Result<Vec, E>, you can use the try_fold() method from the Iterator trait. Here's an example…
如何解决warning: some crates are on edition 2021 which defaults to resolver = "2", but virtual workspaces default to resolver = "1"
当出现这类问题的时候如何解决 Copy warning: some crates are on edition 2021 which defaults to resolver = "2", but virtual workspaces default to resolver…
cover
cover
cover

如何使用mdBook部署自己的网站

mdBook 是一个基于 Markdown 文件的静态站点生成器,可以用于快速创建个人博客、文档页面或网站。下面是使用 mdBook 部署自己的网站的简要步骤: 安装 mdBook:前往 MBook 的GitHub 页面下载最新版本的 mdBook,并按照官方文档进行安装。…
Rust语言是怎么定义inferface的,再说说其他语言,例如go, C, C++, Java
在 Rust 中,接口(interface)是通过 trait 来定义的。trait 是一种抽象类型,它定义了一组方法的签名,但不提供方法的实现。Rust 中的类型可以实现 trait,从而表明它们具有 trait 所定义的方法。当一个类型实现了 trait…
本地电脑如何通过ssh远程登录访问googl cloud 虚拟机实例
要通过 SSH 远程登录访问 Google Cloud 的虚拟机实例,你需要进行以下步骤: 启动 Google Cloud Shell Google Cloud Shell 是一个内置于 Google Cloud Console 的命令行工具,它提供对 Google…
Rust no-std 工程实践
改写 std 的库为支持 no_std 的库及写出一个支持 std 和 no_std 库的经验谈 github repo: https://github.com/DaviRain-Su/rust-no-std-source 简介 首先介绍 std 和 no_std 的区别…
Git Fork and Upstreams :如何去做一个很酷的技巧
Fork 项目来进行自己的修改,可以让你轻松地整合自己的贡献,但是如果你没有将这些修改发回上游 - 也就是发回父亲仓库 -- 你就有可能失去对他们的跟踪,这可能会导致你的版本库中出现不同的线路。为了确保所有贡献者都从同有个地方获取信息,你需要了解一些关于 git forking…
cover
cover
cover
cover

无损耗数据压缩算法历史

引言 历史 法律问题 紧缩政策的兴起 当前档案软件 未来发展 压缩技术 Run-Length Encoding 游程编码 Burrow-Length Transform 布鲁斯 - 惠勒变换 Entropy Encoding 熵编码法 Shannon-Fano…
变量的定义和声明
Rust 中合法的标识符(包括变量名、函数名、triat 名等)必须由数字、字母、下划线组成,而且不能以数字开头。这个和很多语言都是一样的。Rust 将来也会允许其他 Unicode 字符作为标识符,还有 raw identifier 功能,这样可以使关键字作为标识符,比如 r…
Rust Resources Every Learner Should Know in 2023
去年,我开始学习 Rust,主要是为了应用于嵌入式系统。当时,我也在一篇名为 “35 个 Rust 学习资源,每个初学者在 2022 年都应该知道” 的帖子中分享了我所遇到的所有学习材料。自那时以来,我并没有停止学习 Rust,而是不断努力巩固自己的基础。因此…
Nothing in Rust
Outline 我假装这里有东西,但实际上没有。 PhantomData 这里现在是空的 Null Option::None 这里永远不会有东西。 The empty tuple 我会让你一直等到时间的尽头,空手而归。 The never type 这…
关于在rust的程序中如何访问到提交的git commit
关于在rust的程序中如何访问到提交的git commit
Crypto-currency in bitcoin
但其实加密货币是不加密的,区块链上所有的交易内容都是公开的,包括账户的地址,转账的金额💰,都是公开的。比特币中用到了密码学的两个功能:一个是哈希,另外一个是签名。
在rust中如何为本crates中的类型带有可选的feature编写测试
在 Rust 中,如果你想为你的 crate 中的类型编写带有可选的 feature 的测试,你可以使用cfg_attr属性和#[cfg(feature = "feature_name")]属性来做到这一点。 以下是一个例子: Copy // 在lib.rs或者main.rs中 #…
Hello, World
This is my first web3 blog!
Ownership of this blog data is guaranteed by blockchain and smart contracts to the creator alone.