当前位置: 首页 > news >正文

上海网站建设定制公司wordpress文字博客主题

上海网站建设定制公司,wordpress文字博客主题,中间商可以做网站吗,网站定制开发流程和功能说明 Zed项目代码#xff1a;https://github.com/zed-industries/zed.git本文项目代码#xff1a;https://github.com/VinciYan/zed_workspace.git Zed是一款由Atom创始人开发的高性能、协作友好的现代开源代码编辑器#xff0c;使用Rust编写#xff0c;集成AI辅助功能https://github.com/zed-industries/zed.git本文项目代码https://github.com/VinciYan/zed_workspace.git Zed是一款由Atom创始人开发的高性能、协作友好的现代开源代码编辑器使用Rust编写集成AI辅助功能旨在结合传统编辑器的速度和现代IDE的智能特性 Zed项目的组织和管理非常值得学习和研究。下面我将通过我总结后的得出一个精简版例子来说明Zed项目的结构my_project对应Zed项目的crates文件夹下的zed文件夹 workspace_root/ ├── Cargo.toml └── crates/├── foo/│ ├── Cargo.toml│ └── src/│ └── lib.rs├── bar/│ ├── Cargo.toml│ └── src/│ └── lib.rs└── my_project/├── Cargo.toml└── src/└── main.rs工作空间根目录的Cargo.toml [workspace] members [crates/foo, crates/bar, crates/my_project] default-members [crates/my_project] resolver 2[workspace.dependencies] foo { path crates/foo } bar { path crates/bar } rand 0.8.5 # 添加 rand 作为工作空间依赖[workspace.lints.rust] unsafe_code forbid unused_variables warn[workspace.lints.clippy] enum_glob_use denymembers字段指定了属于该工作空间的所有crate包 作用 定义工作空间结构告诉Cargo哪些项目是这个工作空间的一部分允许集中管理可以在工作空间级别管理依赖和构建设置启用共享编译成员之间可以共享编译产物提高构建效率 灵活性 可以使用相对路径指定成员支持glob模式如members [“crates/*”] 可以包含crates目录下的所有crate default-members指定了在没有明确指定目标的情况下默认要构建、测试或运行的工作空间成员crate 当你在工作空间根目录运行cargo build、cargo test或cargo run等命令时如果没有指定具体的crateCargo会默认对default-members中列出的crate执行操作在配置中default-members [“crates/my_project”]意味着默认情况下只有my_project会被构建或运行设置my_project为默认成员意味着你可以直接在根目录运行cargo run而不需要指定–package my_project可以指定多个默认成员例如default-members [“crates/my_project”, “crates/foo”] resolver 2在工作空间的Cargo.toml文件中是一个重要的配置项它指定了Cargo使用的依赖解析器版本 版本 “1”: 旧版解析器默认用于2015和2018版本的Rust“2”: 新版解析器默认用于2021版本的 Rust 注意到rand指定项目版本信息这样的好处包括 在工作空间级别管理依赖版本确保所有项目使用相同版本的rand简化了各个项目的Cargo.toml文件使其更加清晰方便统一升级所有项目的依赖版本 需要注意的是这种方式要求所有使用rand的项目都使用相同的版本。如果某个项目需要使用不同版本的rand你可以在那个项目的Cargo.toml中明确指定版本覆盖工作空间中定义的版本 例如如果bar项目需要使用不同版本的rand [dependencies] foo.workspace true # 也可写成旧版本的Cargo中出现的foo { workspace true } rand 0.7.3 # 使用特定版本而不是工作空间版本这种配置方式既灵活又统一非常适合管理包含多个相关项目的工作空间 lint设置用于定义整个工作空间的代码质量和样式规则。好处 一致性确保工作空间中所有项目遵循相同的代码规范安全性通过禁止不安全代码提高项目的安全性代码质量帮助开发者编写更清晰、更高质量的代码维护性通过统一的规则使代码更容易维护和理解 my_project项目 Cargo.toml [package] name my_project version 0.1.0 edition 2021[[bin]] name my_project path src/main.rs[dependencies] foo.workspace true bar.workspace true[lints] workspace truesrc/main.rs use bar::bar_function; use foo::generate_random_number;fn main() {let num 10;println!(Hello, world! {num} plus one is {}!, bar::add_one(num));bar_function();let random_number generate_random_number();println!(Random number generated in bar: {}, random_number); }foo项目 Cargo.toml [package] name foo version 0.1.0 edition 2021[dependencies] rand.workspace true[lints] workspace true[lib] path src/lib.rs doctest falsesrc/lib.rs use rand::Rng;pub fn add(left: u64, right: u64) - u64 {left right }pub fn foo_function() {println!(This is a function from foo); }pub fn generate_random_number() - i32 {let mut rng rand::thread_rng();rng.gen_range(1..100) }#[cfg(test)] mod tests {use super::*;#[test]fn it_works() {let result add(2, 2);assert_eq!(result, 4);} }bar项目 Cargo.toml [package] name bar version 0.1.0 edition 2021[lints] workspace true[lib] path src/lib.rs[dependencies] foo.workspace truesrc/lib.rs use foo::foo_function;pub fn bar_function() {println!(This is a function from bar library);foo_function(); // 调用 foo 中的函数 }pub fn add(left: u64, right: u64) - u64 {left right }pub fn add_one(x: i32) - i32 {x 1 }#[cfg(test)] mod tests {use super::*;#[test]fn it_works() {let result add(2, 2);assert_eq!(result, 4);} }bar项目依赖foo项目调用foo项目的foo_function函数 执行“Cargo run”项目运行结果如下 Hello, world! 10 plus one is 11! This is a function from bar library This is a function from foo Random number generated in bar: 13最后我还给出另一种项目代码组织方式将my_project项目放到crates文件夹之外的版本感兴趣的话详见我的项目仓库 参考 Announcing Rust 1.74.0 | Rust Blog (rust-lang.org)Workspaces - The Cargo Book (rust-lang.org)
http://www.w-s-a.com/news/573891/

相关文章:

  • 查建设工程业绩在哪个网站网站建设优化服务如何
  • 江苏省建设工程安全监督网站商洛网站制作
  • 海淀网站建设wzjs51网页设计页面配色分析
  • 网站的备案流程图垦利网站制作
  • 行业用品网站怎么建设外链买东西的网站都有哪些
  • 淘宝做促销的网站集团门户网站建设策划
  • 网站排行榜查询怎样把个人介绍放到百度
  • vps 网站上传河北省招投标信息网
  • 武进网站建设咨询网站定制公司选哪家
  • 郑州市建设投资集团公司网站深圳企业网站建设推荐公司
  • 天津个人网站备案查询dz网站恢复数据库
  • 关于网站建设的期刊文献宣传片文案
  • 物业网站模板下载wordpress+菜单大小
  • 网站建设案例教程视频空间刷赞网站推广
  • 网站建设借鉴做外贸球衣用什么网站
  • 网站建设的前途微信公众号制作网站
  • 做网站之前要安装什么网站改进建议有哪些
  • 网站建设+管理系统开发山东专业网站建设公司
  • 基础微网站开发咨询中国印花图案设计网站
  • 找最新游戏做视频网站天津市招标投标公共服务平台
  • 电影订票网站怎么做注册地址出租多少钱
  • 做网站的规划和设想怎样做能让招聘网站记住密码
  • 建站知乎网站公告建设方案
  • 济南市住房和城乡建设局官方网站淮阳住房和城乡建设网站
  • 网站的设计特点有哪些seo推广要多少钱
  • wordpress开通多站点好处软件开发外包公司的设计一般多少钱
  • 为什么我的网站做不起来微信网页版登录手机版下载
  • 苏州市建设职业中心网站北京网站优化方法
  • 于飞网站开发溧阳 招网站开发
  • 网站中的宣传册翻页动画怎么做长沙有哪些网络平台公司