blog | sven kanoldt

sharing thoughts on learning rust, open source projects and other tech stuff

Designing Error Types in Rust Libraries

When designing error types in Rust, especially for libraries with a public API, there are several important considerations to keep in mind. This post will explore some of the important implications and common pitfalls when designing error types in Rust libraries. Further, we will look at thiserror and how the Rust standard library's std::io::Error can serve as a reference for designing your own error types.

Read more ⟶

What is a CIDR trie and how can it help you?

In this post, we will explore the CIDR trie data structure and how it can help you manage IP addresses and subnets in your Rust project.

Read more ⟶

What is the matter with `AsRef`?

the AsRef trait is everywhere in the std lib and very handy. However, the benefit using it is maybe not too obvious. But read on, and you will see some useful examples and where to apply it.

Read more ⟶

rust macro rules in practice

Rust has a very strong and typed macro system. First it sounds all overwhelming, but it's easier than you think. Let me illustrate how easy on 2 simple examples from a practical project.

Read more ⟶