加载中
【使用 Rust 写 Parser】2. 解析Redis协议

在基本熟悉 nom 之后, 这次我们准备用 nom 实现一个 redis 通信协议的解析器. 选择 redis 是 因为 redis 的通信协议易读且比较简单. 准备 如果你对 redis 通信协议不熟悉的话可以查阅 通信协...

2020/05/10 10:47
378
Nom 组合子 Cheat Sheet

Nom 是一个 Rust 实现的解析器组合子库, 使用了一下感觉功能很强大, 但因文档比较少且 4.x -> 5.x 版本变更时有 不少使用方式上的改变, 加上 github 和 doc.rs 经常抽风, 所以根据其文档弄了...

2020/03/03 23:45
134
捋捋 Rust 中的 impl Trait 和 dyn Trait

缘起 一切都要从年末换工作碰上疫情, 在家闲着无聊又读了几首诗, 突然想写一个可以浏览和背诵诗词的 TUI 程序说起. 我选择了 Cursive 这个 Rust TUI 库. 在实现时有这么一个函数, 它会根据参...

2020/02/29 19:40
1.7K
[Rust Crate] log4rs Rust log 库

在用 Rust 写练手项目时经常要用到日志库, 我之前使用过 env_logger 和 pretty_env_logger 这两个日志库, 两个库总体上都满足我之前的需求, 但在配置 log 将 log 写入文件而不仅仅是控制台时...

2020/02/03 20:27
1.3K
Fedora CoreOS 尝鲜

使用 virt-manager 作为虚拟机管理器 准备资源 需要2个镜像, installer iso 作为安装引导,raw.gz 作为真正的系统镜像。 进入 Download Fedora CoreOS, 下载 install iso, 保存为 fedora-cor...

2020/02/02 15:05
1.4K
Rust 代码风格 Tips

文章绝大部分翻译自Rust Design Patters, 为了快速简洁, 并没有严格翻译 Constructors Rust 没有类似于 ClassName(*args, **kw_args) 这样的构造函数, 一般约定使用静态的 new 方法创建一个新...

2020/02/02 15:05
188
Python 分发包中添加额外文件

在制作一个 Python 分发包时经常需要把一些文件添加到包中。最常见的例子是你希望通过 pip install 命令安装 Python 包时会在 /etc/ 等目录下自动添加默认配置文件,由此可以让 Python 安装完...

2020/02/01 19:26
108
VSCode 使用 rust-analyzer

前言 Rust 的 VSCode 官方插件体验常常不尽人意,今天逛社区时发现了 rls 2.0 - rust-analyzer, 体验之后我觉得 rust-analyzer 虽然还有不少瑕疵,但至少比 rls 1.0 要好,希望 Rust 工作组...

2020/02/01 19:26
2.2K
Winddows 上使用VSCode Remote 插件进行远程开发

直到 VSCode remote-ssh 插件出来和我买了一台 NUC 机器之前,我一直在维护两套开发环境, 一套防在公司的 CentOS 虚拟机上,另一套则是家里的 Windows 机器。因为代码同步以及 Windows 和 ...

使用OSProfiler对OpenStack进行性能测量

配置服务 如果要在 OpenStack 项目中使用 OSprofiler 进行性能跟踪,大部分项目已经帮我们 初始化了 OSprofiler, 只需要在配置文件中添加 [profiler] 配置项即可。 OSprofiler 支持使用多种 ...

Deepin安装Angular10+

安装 nodejs 因为深度系统默认源中 nodejs 版本过低,改用 nodejs 官方源 curl -sSL https://deb.nodesource.com/gpgkey/nodesource.gpg.key | sudo apt-key add - echo "deb https://mirror...

2020/02/01 19:18
660
requirements.txt 文件声明依赖

参考: pip install requirements.txt 文件用于声明 Python 依赖,平常所见的格式非常简单: nose nose-cov beautifulsoup4 如果是通过 pip freeze 生成,还会指定版本,如 mccabe==0.4.0 ne...

2020/02/01 19:18
684
OpenStack允许 root 用户使用 ssh key 登录

参考: Enable Root Login Over SSH With Cloud-Init on OpenStack 默认情况下如果在创建虚拟机时将 ssh 密钥注入后尝试使用 root 用户登录会提示: Please login as the user "centos" rath...

搭建 etcd discovery 服务

搭建单节点ETCD服务,如果已有ETCD服务,可以跳过 docker run -d -p 2479:2379 -p 2480:2380 -p 4401:4001 -p 7401:7001 --name etcd-discover......

2020/02/01 19:15
2.1K
Python Rust 迭代器对比

迭代是数据处理的基石,而 Python 中所有集合都可以迭代,这是 Python 让使用者感到非常方便的特征之一。 下面是一些在 Python 中经常使用的迭代模式 # 列表 for i in [1, 2, 3, 4]: print(i...

2020/02/01 17:44
84
Rc 类型总结

ref: alloc::rc::Rc - Rust <!-- toc --> 方法 new pin try_unwrap into_raw from_raw downgrade weak_count strong_count get_mut ptr_eq make_mut downcast <!-- tocstop --> std::rc::Rc...

2020/02/01 17:44
165
Magnum Stein Release New Features

原文链接 Magnum Release Note - Stein 新特性 8.0.0-8 新增 Nginx 作为 K8s Ingress 额外控制器. 可以通过标签 ingress_controller=niginx 标签指定 使用 Node Problem Detector, Draino 和...

miniserve 简单美观的文件服务器

如果想建立一个简单静态文件或目录服务器,通常可以用 Python 实现,而且非常简单 # Python 2 python -m SimpleHTTPServer <port> Python 3 python3 -m http.server <port> 一般情况下,这就...

深度系统rust开发环境搭建

由于买了台 NUC 机子,开发环境由 MacOS 变成了 Deepin 也就是深度系统,重新折腾了 Rust 开发 环境。 开发环境为 Deepin + vscode + lldb。 安装 rust linux 下 rust 安装非常简单,使用以下...

2020/02/01 17:40
1.8K
Python 展开嵌套序列

可以通过 yield from 语句加上递归器来展开嵌套序列 from collections import Iterable def flatten(items, ignore_types=(str, bytes)): for x in items: if isinstance(x, Iterable) and n...

2020/02/01 17:40
63

没有更多内容

加载失败,请刷新页面

返回顶部
顶部
返回顶部
顶部