Zed是 Rust 构建的文本编辑器, 本文将介绍他的核心数据结构——Rope和SumTree。
Rope和传统字符串比较:
Zed的Rope实现——SumTree:
使用SumTree的好处:
SumTree不仅支持并发访问和多线程操作,还能快速生成文本的快照,非常适合进行异步保存、备份或多用户编辑等操作。
Zed中有超过20个功能使用了SumTree结构,如项目中的文件列表、git blame信息、聊天消息、诊断信息等。总结来说,SumTree作为Zed的核心组件,不但具备了常规Rope的优势,还赋予了Zed极高的性能和灵活性,使其成为一个高效的代码编辑器。
原文链接 https://zed.dev/blog/zed-decoded-rope-sumtree
wgpu 是 跨平台、安全、纯Rust 的图形 API, 目前 v0.20.0 版本发布了,主要变化:
更多特性见 原文链接 https://github.com/gfx-rs/wgpu/releases/tag/v0.20.0
--
From 日报小组 BobQ, FBI小白
社区学习交流平台订阅:
原文作者:Rust语言中文社区;如有侵权,请联系管理员删除。