Sign In Start Free Trial
Account

Add to playlist

Create a Playlist

Modal Close icon
You need to login to use this feature.
  • Rust Web Development with Rocket
  • Toc
  • feedback
Rust Web Development with Rocket

Rust Web Development with Rocket

By : Karuna Murti
4.3 (6)
close
Rust Web Development with Rocket

Rust Web Development with Rocket

4.3 (6)
By: Karuna Murti

Overview of this book

Looking for a fast, powerful, and intuitive framework to build web applications? This Rust book will help you kickstart your web development journey and take your Rust programming skills to the next level as you uncover the power of Rocket - a fast, flexible, and fun framework powered by Rust. Rust Web Development with Rocket wastes no time in getting you up to speed with what Rust is and how to use it. You’ll discover what makes it so productive and reliable, eventually mastering all of the concepts you need to play with the Rocket framework while developing a wide set of web development skills. Throughout this book, you'll be able to walk through a hands-on project, covering everything that goes into making advanced web applications, and get to grips with the ins and outs of Rocket development, including error handling, Rust vectors, and wrappers. You'll also learn how to use synchronous and asynchronous programming to improve application performance and make processing user content easy. By the end of the book, you'll have answers to all your questions about creating a web application using the Rust language and the Rocket web framework.
Table of Contents (20 chapters)
close
1
Part 1: An Introduction to the Rust Programming Language and the Rocket Web Framework
7
Part 2: An In-Depth Look at Rocket Web Application Development
14
Part 3: Finishing the Rust Web Application Development

Returning Result

In Rust, we have the std::result::Result enum that works like Option, but instead of saying we have it or we don't have it, the Result type is more about saying we have it or we have this error. Just like Option, Result is an enum type of the possible T type or possible E error:

enum Result<T, E> {
   Ok(T),
   Err(E),
}

Going back to the division by zero problem, take a look at the following simple example:

fn division(a: usize, b: usize) -> Result<f64, String> {
    if b == 0 {
        return Err(String::from("division by zero"));
    }
    return Ok(a as f64 / b as f64);
}

We don't want division by 0, so we return an error for the preceding function.

Similar to Option, Result has many convenient features we can use. Suppose we have the we_have_it and we_have_error...

bookmark search playlist download font-size

Change the font size

margin-width

Change margin width

day-mode

Change background colour

Close icon Search
Country selected

Close icon Your notes and bookmarks

Delete Bookmark

Modal Close icon
Are you sure you want to delete it?
Cancel
Yes, Delete