首页 > TAG信息列表 > unwrap

rust postgres

use postgres::{Client, NoTls}; fn main(){ let mut client = Client::connect("host=localhost user=postgres password=postgres port=5433", NoTls).unwrap(); client.batch_execute(" CREATE TABLE person ( id SERIA

Rust 临时变量的生命周期

https://doc.rust-lang.org/book/ch20-02-multithreaded.html The Rust Programming Language 的第 20 章第 2 节的最后,对比了下面两段代码的区别 impl Worker { fn new(id: usize, receiver: Arc<Mutex<mpsc::Receiver<Job>>>) -> Worker { let thread = threa

【Rust】结果枚举(三)

环境 Time 2022-03-25 Rust 1.59.0 示例 or fn main() { let result: Result<u32, u32> = Ok(44); println!("{:?}", result.or(Err(4))); } or_else fn main() { let result: Result<u32, u32> = Ok(44); let result: Result<u32, u

求助 RUST 如何逐字读取 TCPstream

let mut buf:Vec<u8>=Vec::new(); let (mut i, mut buf_size) = (0, 50); for v in (&stream).bytes() { i+=1; if i > buf_size { break; } buf.push(v.unwrap()); } // ... // 后续对stream进行的操作均无效 stream.shutdown(Shutdown::Both).expect("shutdo

【译】Rust 中的错误处理

Error Handling in Rust 译文(Rust 中的错误处理) 原文链接:https://blog.burntsushi.net/rust-error-handling/ 原文作者:Andrew Gallant 译文来自:https://github.com/suhanyujie/article-transfer-rs/ 译者:suhanyujie 译者博客:suhanyujie ps:水平有限,翻译不当之处,还请指正。 标签:Ru

Rust在loop循环中返回值

使用break后加表达式的形式返回值。 例如,下面的程序输入n,输出>=n的最小的7的倍数: use std::io; fn main() { let mut s = String::new(); io::stdin().read_line(&mut s).unwrap(); let mut n: i32 = s.trim().parse().unwrap(); let n = loop { if n %

Rust 使用 dotenv 来设置环境变量

在项目中,我们通常需要设置一些环境变量,用来保存一些凭证或其它数据,这时我们可以使用 dotenv 这个 crate。   首先在项目中添加 dotenv 这个依赖:   例如在下面这个项目中,需要设置数据库连接字符串和 Debug 等级这两个环境变量。在开发环境下,我们可以在项目根目录下创建 .env 这

RUST——互斥锁的使用

互斥锁是Rust语言中所提供的,基于共享内存的方式来实现线程之间通信的机制。 Mutex的简单使用 Mutex是rust标准库中提供的互斥锁的实现。使用的示例代码如下所示: use std::sync::Mutex; fn main() { let m = Mutex::new(5); { let mut num = m.lock().unwrap()

rust导出C函数

cargo toml [package] name = "serialports" version = "0.1.0" edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] serialport ="*" encoding

【Rust】子进程

环境 Rust 1.56.1 VSCode 1.61.2 概念 参考:https://doc.rust-lang.org/stable/rust-by-example/std_misc/process.html 示例 执行命令 use std::process::Command; fn main() { let output = Command::new("rustc") .arg("--version") .outpu

Rust 程序设计语言 web server (tokio)

Rust 程序设计语言 web server 1 web server 源码2 web server (tokio) 1 web server 源码 // src/bin/main.rs use std::fs; use std::io::prelude::*; use std::net::{TcpListener, TcpStream}; use web_server::ThreadPool; fn main() { let listener = TcpLis

The Rust Programming Language - 第20章 最后的项目:构建多线程web server - 20.1 构建单线程web server

20 最后的项目:构建多线程web server 本章我们将会练习一个项目,顺便复习一下前面几章的内容,这个项目会实现宇哥返回”Hello“的web server 如下是我们的计划: 1.学习一些TCP与HTTP知识 2.在套接字(socket)上监听TCP请求 3.解析少量的HTTP请求 4.创建一个合适的HTTP响应 5.通过线

Rust中的Result枚举

Result枚举在Rust中是使用频率极高的一个类型,常用于函数的返回值定义,其源码如下: #[derive(Copy, PartialEq, PartialOrd, Eq, Ord, Debug, Hash)] #[must_use = "this `Result` may be an `Err` variant, which should be handled"] #[rustc_diagnostic_item = "result_type"] #[

Rust网络编程框架-深入理解Tokio中的管道

我们在上文《Rust网络编程框架-Tokio进阶》介绍了async/await和锁的基本用法,并完成了一个Server端的DEMO代码。本文继续来探讨这个话题。 客户端代码DEMO 上文中依靠telnet来触发服务端代码的执行,本文我们将自己实现一个客户端。由于笔者也没有从之前比如GO、JAVA等语言的套路

@Rust-单链表

单链表 还在学习中,写得可能不好,有错误的地方,恳请指正。 前言 因为 Rust 的所有权机制,实现起来比较麻烦。这次实现的是 C 风格(抄书)。 实现 数据结构 type Link<T> = Option<Box<Node<T>>>; struct Node<T> { elem: T, next: Link<T> } 看一下数据结构,相比其它语言来说,这

oracle unwrap解密工具

一、DBMS程序包Oracle 为 Oracle 服务器提供了许多 PL/SQL 软件包,以扩展数据库功能并提供对 SQL 功能的 PL/SQL 访问。在这些 Oracle 提供的程序包中,已 DBMS 开头的程序包使用的最为广泛。如果我们想查看 DBMS 程序包的代码,你就会发现,Oracle 对程序包体部分进行了加密处理。  

刷题学rust(三)——rust分支语句

7-8 超速判断 (10 分) 这道题只需要一个简单的分支,非常简单的就可以解决,无需多言 AC代码: use std::io; fn main() { let mut input = String::new(); io::stdin() .read_line(&mut input) .unwrap(); let mut s = input.trim().split(' '

【Rust日报】 2019-04-18

用 Rust 写一个 Rougelike 游戏视频教程,9 分多钟,讲得轻松有趣,虽然是英文,但是不难懂。推荐。视频中用的这个库 tcod-rs,是 rougelike 工具库。另外还有一些 rust 的 rougelike 工具库,比如 quicksilver-roguelike。另外还有教程源码。sfsdb - 高性能 k-v 文件系统数据库作者宣称的特点

【Rust日报】 2019-06-08:stego - 网络隐写术界的瑞士军刀

Erst - ERB/JSP 那种 <% %> 的模板引擎Rust 中的模板渲染引擎已经有不少了,这一个是支持 ERB/JSP 渲染语法的库。Repoglobber - 扩展的通配模式匹配库glob 模式是这样一些:// Wildcardslet pattern = Pattern::new("*.rs").unwrap();assert!(pattern.matches("hey.rs"));assert!(!pat

孙卫琴的《精通JPA与Hibernate》的读书笔记:从JPA API中获得Hibernate API

当JPA API不能满足所有的应用需求,还可以利用Hibernate API来辅助完成个别功能。JPA API的EntityManager接口和EntityManagerFactory接口都有一个unwrap()方法,它们分别返回相应的Session以及SessionFactory对象: //获得Hibernate API中的SessionFactory SessionFactory sessionFact

学习rust(六)异常处理

6 异常处理 1 异常处理 可恢复 不可恢复 致命异常 2 可恢复异常 pub enum Option<T>{ None, Some<T> } pub enum Result<T,E>{ OK(T), Err<E> } 3 option和result组合 map_err and_then unwrap_or unwrap_or_else as_ref or/or_else as_mut 4 及早返回运算符?