The Rust Programming Language (Covers Rust 2018) by Steve Klabnik & Carol Nichols

The Rust Programming Language (Covers Rust 2018) by Steve Klabnik & Carol Nichols

Author:Steve Klabnik & Carol Nichols [Klabnik, Steve]
Language: eng
Format: azw3
ISBN: 9781718500457
Publisher: No Starch Press
Published: 2019-09-02T16:00:00+00:00


let results = if config.case_sensitive {

search(&config.query, &contents)

} else {

search_case_insensitive(&config.query, &contents)

};

for line in results {

println!("{}", line);

}

Ok(())

}

Listing 12-22: Calling either search or search_case_insensitive based on the value in config.case_sensitive

Finally, we need to check for the environment variable. The functions for working with environment variables are in the env module in the standard library, so we want to bring that module into scope with a use std::env; line at the top of src/lib.rs. Then we’ll use the var function from the env module to check for an environment variable named CASE_INSENSITIVE, as shown in Listing 12-23.

src/lib.rs

use std::env;

// --snip--

impl Config {

pub fn new(args: &[String]) -> Result<Config, &'static str> {

if args.len() < 3 {

return Err("not enough arguments");

}

let query = args[1].clone();

let filename = args[2].clone();



Download



Copyright Disclaimer:
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.