기본: the book (생략) 초보자용 개괄: http://www.sheshbabu.com/posts/rust-error-handling/ 리얼 앱에서: https://www.lpalmieri.com/posts/error-handling-rust/ rust에 예외(exception)가 없다는 거랑 대신 Result / Option 로 해결보는 거, ? 키워드로 Result 로 반환하는 건 책을 보셨다면 다들 아실테고... Box와 anyhow::Error 실제 문제는 한 함수 내에서 버블링업할 예외의 타입이 서로 다를 때 발생함. 컴파일이 안 되니까; 나는 에러 AError와 BError 둘 중 하나를 반환해야 하는데, 반환형은 Result 나 Result 둘 중 하나밖에 안 됨. AError와 BEr..
https://www.vincentprouillet.com/blog/tera-v1-is-here/ 세부 비교는 잘 모르기도 하고 알아볼 생각도 없음 이 주제를 찾아보게 된 이유는 쓰려고 공부중인 웹프레임워크의 템플릿 예시가 askama 템플릿 엔진을 써서인데, 본래 zola (정적 사이트 생성기) 제작자가 만들었고 zola에서 쓰이기도 하는 tera 를 쓸 생각이었습니다. 코드가 1:1로 대응이 되지 않다보니 이 시점에서 "뭐가 좋아?" 라는 조사가 필요했습니다. 목적에 맞냐는 거죠. rust의 템플릿 엔진들을 하나하나 기능별로 비교해주는 훌륭한 글은 없었고 그나마 있던 게 logrocket 글, 그렇지만 거기엔 askama 가 없었습니다. 이 시점에서 찾아보기만 하다가 끝이 안 날 거 같아서 비교는 그..
objective: 일단 아는대로 DB를 만들어보자 - IDE가 있으니 도움을 최대한 받아서 (학교에서 배우고 진지하게 SQL을 써본적이 없는 새럼) #[derive(Serialize, Deserialize)] struct User { id: Uuid, email: String, name: String, preferred_username: String, } create table User ( id uuid not null primary key, email varchar(128) not null, name varchar(128) not null, preferred_username varchar(128) not null ); 🔍 create table 문법? ✅ CREATE TABLE ( ... ); 🔍 적..
https://blog.logrocket.com/end-to-end-testing-for-rust-web-services/ warp, wiremock, postgresql r뭐시기 async 커넥션 풀을 사용 async-trait 사용 (아직 오피셜이 없으므로 crate) wiremock: 서드파티 HTTP 서비스 테스팅에 사용 조건에 따른 응답을 반환하는 http 테스팅용 서버를 정의하고 실제로 띄울 수 있는 거인 모양 mock 테스팅과 e2e testing 두 가지를 다룸 mock: DB, 외부 HTTP는 전부 trait으로 만들어 사용. async 이므로 async-trait 사용 HttpService 를 trait 으로 만들고 wiremock 으로 구현 저번에 읽다만 z2p 는 저자가 mock 방..
book 에도 나오는 내용일텐데 그냥 설명하고 싶어졌습니다. rust 의 enum 에 값 넣기 rust 에서 enum 은 평범하게 다른 언어의 enum 처럼 쓸 수도 있지만, // rust enum MyEnum { A, B } rust 의 enum 에는 값이나 필드를 넣을수도 있습니다. // rust enum MyEnum { A(String), B(String) } 엥 kotlin 의 enum class 도 값을 가질 수 있는데요? 거기다 enum 에 들어가는 값에 이름도 지정할 수 있잖아요 https://pl.kotl.in/0wRg3aIsr // kotlin enum class MyEnum(var value: String) { A("야호"), B("호호") } fun main() { val a = My..
어제 tide-sqlx 를 lib.rs 로 뺐는데 반환하는 부분에서 컴파일이 안 돼서 결국 unwrap() 으로 감싸고 마무리했는데 이유는 아래와 같음. 자꾸 std::Error 가 opaque 라고 해서 뭔 소린가 했더니... 아무튼, anyhow 는 tide-sqlx 의 readme.md 의 예시에서 쓰는데 그거 검색하니 바로 아래 글이 나오고 자세함 (읽는중) nick.groenen.me/posts/rust-error-handling/
- Total
- Today
- Yesterday
- 업비트
- Oracle Cloud Infrastructure
- 쿠버네티스
- 왜 생각이 안 났지
- Godot Engine
- exercism
- 개발기록
- ArchLinuxARM
- C#
- C++ FAQ
- 오라클 클라우드
- rust-lang
- mvu
- OStatus
- c++
- Sass
- 마스토돈
- upbit
- 시스어드민
- 토이프로젝트
- gitea
- K8s
- javascript
- ActivityPub
- pdf.js
- 오라클 클라우드 인프라
- kotlin당했다
- pleroma
- vuex
- scss
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |