match rust
cbindgen rust 代码生成c binding 的工具
rust 与c 以及c 与rust 的互调用还是比较常见的需求,很多时候自己写可能比较费事,但是使用一些工具就比较方便了 cbindgen 是一个对于rust 代码生成c binding 的工具 参考使用 基于cbindgen 将rust 的代码生成对应的c 头文件,之后基于cmake 构建项目 项 ......
关于Rust的简单总结(一)
0. 前言 这是一个关于Rust的简单总结。(待续) 资料 学习网址:学习 Rust - Rust 程序设计语言 (rust-lang.org) 官网:Rust 程序设计语言 (rust-lang.org) Rust介绍 [[Rust]] 程序设计语言的本质实际在于 赋能(empowerment): ......
[ARC169E] Avoid Boring Matches
题解链接 非常厉害的一道题。 考虑无解是什么情况? R 的个数超过 \(2^{n-1}\) 先考虑如何判定。从前往后考虑,如果遇到一个 B,那么如果后面有 R,就选最靠前的 R,否则选最靠后的一个 B.如果遇到 R,就选最靠后的一个 B。 但是这个判定很繁琐。我们考虑求出一个合法序列,使得他的 B ......
Rust实现二叉树、字典树
二叉树 使用Option<Box<T>>实现。Box是智能指针,分配在堆上,专门用于这种“无限”大小的数据类型。LeetCode上采用Option<Rc<RefCell<T>>> 实现,非常臃肿。。 #[derive(PartialEq)] enum TreeDir{ LEFT, RIGHT } # ......
33. 干货系列从零用Rust编写正反向代理,关于HTTP客户端代理的源码实现
http代理中关于客户端是如何实现http代理的相关源码实现,详细说明了http/https/socks5代理的原理,及源码实现 ......
dioxus rust 构建跨平台应用的框架
dioxus rust 构建跨平台应用的框架 包含的特性 原生桌面 强大的状态管理 快速 异步以及协程支持 热更新支持 对于不同端支持不同的模式 比如桌面支持webassembly 的dom 处理,ssr等 说明 目前看dioxus 对于开发桌面应用也是一个不错的选择,值得试试,rust 周边还是很 ......
rust 实现图像绕中心点旋转任意角度
use env_logger::Env; use image::RgbaImage; use log::{info, LevelFilter}; use nalgebra as na; use std::env; use std::fs::File; use std::path::Path; use ......
yew 基于rust 以及wasm 创建web 应用的框架
yew 基于rust 以及wasm 创建web 应用的框架,我们可以基于一些定好好的rust 宏,实现基于webassembly 的web 应用开发 包含的特性 基于组件 使用了类似rect 以及elm 的开发模式 html 宏 类似react jsx 的定义 ssr 支持服务端渲染,默认属于客户端 ......
记录issue:iptables (legacy): Couldn't load match `comment':No such file or directory\n\nTry `
用nerdctl起容器碰到如下issue: FATA[0001] failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error d ......
Rust 命令行俄罗斯方块
Rust 命令行俄罗斯方块 先放一个 gif 在这里。 使用 crate: std rand terminal 。 代码地址 // todo ......
Rusty Tuesday :Rust 基金会一行来访 Databend Labs,共话技术创新!
在当今快速发展的技术浪潮中,Rust 作为一种新兴的编程语言,凭借其卓越的内存安全特性和高效的性能,吸引了全球开发者的广泛关注。2023 年 12 月 05 日,由 Databend Labs 主办的首届 Rusty Tuesday 活动正式在北京揭开序幕。 在本次活动中,我们非常荣幸地邀请到了多位 ......
rust cargo config一个方便的功能
cargo 除了默认的cargo.toml 文件之外,我们还可以进行一些额外的配置,可以用来干一些比较有意思的事情 比如.cargo/config.toml 文件就比较方便,当我们在基于rust 开发webassembly的时候是需要执行target的 为了兼容选择的是wasm32-unknown- ......
【解决方案】adb server version (41) doesn't match this client (36);
【GiraKoo】adb server version (41) doesn't match this client (36); 环境 夜神模拟器无法与Android Studio连接。使用命令行连接时会提示adb server version (41) doesn't match this cli ......
rust webassembly 优化参考资料
这几天在学习webassembly,尤其是cerbos lite 对于webassembly 的支持,所以简单整理一些 chatgpt给的一些建议 WebAssembly(Wasm)的优化涉及多个方面,包括编译器优化、代码结构调整、资源管理和压缩等。以下是一些通用的 WebAssembly 优化策略 ......
[LeetCode] 1688. Count of Matches in Tournament
You are given an integer n, the number of teams in a tournament that has strange rules: If the current number of teams is even, each team gets paired ......
探索Rust语言类型系统 - Part 1
理解Rust语言类型系统中的Ownership(所有权), Resource Management(资源管理), Aliasing(别名), Mutation(可变性), 和the Borrow Checker(借用检查器) 目录 Ownership and Move Semantics(所有权与移 ......
给 Web 前端工程师看的用 Rust 开发 wasm 组件实战
本文先介绍了 wasm-pack 官方的教程,还有其他组件测试、发布等的流程先不在这里介绍了。以下用一个实际开发中的模块来说一下开发 wasm 组件过程中遇到的问题和解决方法。 ......
rust使用动态连接库实现两个数的求和
1.1 创建库项目 cargo new --lib plugin cd plugin 1.2 编写加法功能函数 vim src/lib.rs #[no_mangle] pub extern fn add(left: usize, right: usize) -> usize { left + rig ......
rust的musl toolchain
rust项目常常会使用musl作为编译target,这个时候就会使用musl的工具链。musl toolchain安装在$HOME/.rustup/toolchain下面。通常可以用rustup 安装,比如: rustup install stable-unknown-linux-musl 也可以使 ......
Rust std fs 比 Python 慢!真的吗!?
作者:Xuanwo Databend Labs 成员,数据库研发工程师 https://github.com/xuanwo 我即将分享一个冗长的故事,从 OpenDAL 的 op.read()开始,以一个意想不到的转折结束。这个过程对我来说非常有启发性,我希望你也能感受到。我会尽力重现这个经历,并附 ......
31. 干货系列从零用Rust编写正反向代理,HTTP限流的实现(limit_req)
HTTP限流是在HTTP请求处理过程中,对请求进行限制的一种技术手段。本文讲述wmproxy中如何处理限流的原理及源码实现。 ......
31_rust_高级特性
高级特性 不安全rust 高级Trait 高级类型 高级函数和闭包 宏 不安全rust 隐藏这第二个语言,其未强制内存安全保证:Unsafe rust(不安全的rust);其和普通rust一样,但提供了额外的“超能力”。 unsafe rust存在的原因: 静态分析是保守的,使用unsafe rus ......
正则表达式的几个函数,sub、match、search、findall、split的几个函数的使用
import repattern='\d\.\d+'s='I study 3.114 python every and 2.71 python I love you's2='python I love you'match= re.findall(pattern,s) #findall 函数获取匹配对 ......
正则表达式match函数的使用
#正则表达式的作用,例如:判断登录名是否几位数,是都由数字字母组成等等#元字符:具有特殊意义的专用字符,例如:‘^'和'$',分别表示匹配开始和结束。#限定符:用于限定匹配的次数#其他符#re模块在Python中使用正则表达式操作 # re函数的几种格式 #re.match(pattern,stri ......
30_rust_模式匹配
模式匹配 模式:是rust中的一种特殊语法,用于匹配复杂和简单类型的结构。 将模式与匹配表达式和其他结构结合使用,可更好控制程序控制流。 模式由以下元素(及组合)组成: 字面值 解构的数组、enum、struct和tuple 变量 通配符 占位符 模式匹配的场景 match的Arm(分支) 格式: ......
Rust Tauri系列: 项目创建
创建 Rust - Tauri ## 创建rust Tauri项目 pnpm create tauri-app ->项目名称 test-app ->选择 TypeScript / JavaScript (pnpm, yarn, npm, bun) ->选择包管理工具(熟悉那个就用那个) ->选择 v ......
rust 运行windows cmd命令
use std::process::Command; fn callcmd(cmdstr: &str) { Command::new("cmd") .arg("/S") .arg("/c") .arg(cmdstr) .output() .expect("-1"); } fn main() { le ......
7-1896C - Matching Arrays
题意: 两个数组\(a和b\),对\(b\)任意排序, 使得\(a[i]>b[i]的个数为x\),要求输出能满足的数列。 思路: 一个任意排序,相当于两个任意排序,都升序,发现规律,\(让排序后的b数组,循环右移x位置\) ,满足条件则输出,否则一定不满足。 代码: 点击查看代码 #include< ......
Spin 基于rust 开发的开源运行基于webassembly serverless 工具
spin 是基于rust 开发的,可以用来开发以及运行基于webassembly serverless 服务的工具 包含的特性 提供了周边扩展 默认wasm 只提供了基本类型的支持,wasm 提供了不少扩展可以方便的支持不同语言的调用(比如网络,数据库访问) 提供了快速应该开发的cli 提供了服务部 ......