Mukul Latiyan

Mukul Latiyan

363 Articles Published

Articles by Mukul Latiyan

Page 36 of 37

Super and Self Keywords in Rust Programming

Mukul Latiyan
Mukul Latiyan
Updated on 05-Apr-2021 646 Views

Whenever we want to remove the tedious long importing paths of functions that we want to invoke, either from the same function or from a different module, we can make use of the super and self keywords provided in Rust.These keywords help in removing the ambiguity when we want to access the items and also prevent unnecessary hardcoding of paths.ExampleConsider a simple example shown below:fn function() {    println!("called `function()`"); } mod cool {    pub fn function() {       println!("called `cool::function()`");    } } mod my {    fn function() {       println!("called `my::function()`");   ...

Read More

Channels in Rust Programming

Mukul Latiyan
Mukul Latiyan
Updated on 03-Apr-2021 790 Views

Channels are a medium that allow communication to take place between two or more threads. Rust provides asynchronous channels that enable communication between threads.Channels in Rust allow a unidirectional flow of communication between two endpoints. These two endpoints are Sender and Receiver.ExampleConsider the example shown below −use std::sync::mpsc::{Sender, Receiver}; use std::sync::mpsc; use std::thread; static NTHREADS: i32 = 3; fn main() {    let (tx, rx): (Sender, Receiver) = mpsc::channel();    let mut children = Vec::new();    for id in 0..NTHREADS {       let thread_tx = tx.clone();       let child = thread::spawn(move || {   ...

Read More

Struct Visibility in Rust Programming

Mukul Latiyan
Mukul Latiyan
Updated on 03-Apr-2021 1K+ Views

Structs in Rust contains an extra level of visibility. These can be modified by the developers as per his/her convenience.In a normal scenario, the visibility of the struct in Rust is private and it can be made public by making use of the pub modifier.It should be noted that this case of visibility only makes sense when we are trying to access the struct fields from outside the module, from where it is defined.When we are hiding the fields of the struct, we are simply trying to encapsulate the data.ExampleConsider the example shown below −mod my {    // A ...

Read More

Result Type in Rust Programming

Mukul Latiyan
Mukul Latiyan
Updated on 03-Apr-2021 239 Views

There are two types of errors that occur in Rust, either a recoverable error or an unrecoverable error. We handle the unrecoverable errors with the help of panic!macro and the Result type along with others help in handling the recoverable errors.The Result type is a better version of the Option type which only describes the possible error instead of the possible absence.SignatureThe signature of Result Type is Result < T, E>and it can have only two outcomes.These are: Ok(T): An element T was found.Err(E): An error was found with an element E.Rust also provides different methods that we can associate with ...

Read More

Program arguments in Rust Programming

Mukul Latiyan
Mukul Latiyan
Updated on 03-Apr-2021 144 Views

Taking care of arguments passed at the runtime is one of the key features of any programming language.In Rust, we access these arguments with the help of std::env::args, which returns an iterator that gives us a string for each passed argument.ExampleConsider the example shown below −use std::env; fn main() {    let args: Vec = env::args().collect();    // The first argument is the path that was used to call the program.    println!("My current directory path is {}.", args[0]);    println!("I got {:?} arguments: {:?}.", args.len() - 1, &args[1..]); }We can pass arguments like this −./args 1 2 3 4 ...

Read More

HashSet in Rust Programming

Mukul Latiyan
Mukul Latiyan
Updated on 03-Apr-2021 696 Views

Rust also provides us with a HashSet data structure that is mainly used when we want to make sure that no duplicate values are present in our data structure.If we try to insert a new value into a HashSet that is already present in it, then the previous value gets overwritten by the new value that we insertedBesides the key features, a HashSet is also used to do the following operations −union − Extract all the unique elements in both sets.difference −G ets all the elements that are present in the first set, but not in the second.intersection − Gets ...

Read More

File Operations in Rust Programming

Mukul Latiyan
Mukul Latiyan
Updated on 03-Apr-2021 348 Views

File operations normally include I/O operations. Rust provides us with different methods to handle all these operations.OpenRust provides an open static method that we can use to open a file in read-only mode.ExampleConsider the code shown below:use std::fs::File; use std::io::prelude::*; use std::path::Path; fn main() {    // Create a path to the desired file    let path = Path::new("out.txt");    let display = path.display();    let mut file = match File::open(&path) {       Err(why) => panic!("unable to open {}: {}", display, why),       Ok(file) => file,    };    let mut s = String::new();    match ...

Read More

Rust programming language &ndash; Getting Started

Mukul Latiyan
Mukul Latiyan
Updated on 20-Feb-2021 425 Views

The first part of getting hands-on experience with Rust is installing Rust. In order to install Rust, we need a Rust installer.Rustup is a version management tool and also an installer that helps in installing Rust in your local machine.If you’re running Linux, macOS, or another Unix-like OS, then we simply need to run the following command in the terminal −curl --proto ‘=https’ --tlsv1.2 -sSf https://sh.rustup.rs | shThe above command will install Rust on your local machine.If you are on Windows, then you can download the .exe file from this link rustup-init.exeKeeping Rust UpdatedThough Rust is updated frequently, but you ...

Read More

Why is Rust Programming language loved so much?

Mukul Latiyan
Mukul Latiyan
Updated on 20-Feb-2021 366 Views

Being voted as the most loved language for four consecutive years, Rust has come a long way.Originally designed as a low-level language, best suited for embedded, systems and critical performance code, it has gained a lot of traction and not stopping yet.Rust also has found its way in web developments and also provides a great opportunity for game developers.So, why is Rust so much loved? Let’s explore some of the reasons why it is so popular and loved.Fearless ConcurrencyConcurrency and parallelism have become more significant in today’s scenario. The number of cores is increasing in computers to support concurrency, but ...

Read More

Downsides of Rust Programming Language

Mukul Latiyan
Mukul Latiyan
Updated on 20-Feb-2021 2K+ Views

Every programming language has some downsides attached to it, it’s not all roses when it comes to Rust as well. Some of the noticeable downsides of Rust programming language are highlighted here −Compile TimeYes, compile time. Rust is fast, no doubt. But when it comes to compiling code, then it’s a bit slower as compared to its peer languages. The reason for its slow compile time is that its “unit of compilation” is not an individual file, it’s instead a whole package (known as a crate). Crates in Rust can include multiple modules, thus they can be large units of ...

Read More
Showing 351–360 of 363 articles
Advertisements