Struct FileHandler

Source
pub struct FileHandler { /* private fields */ }
Expand description

A handler for retrieving values from a file.

This struct is responsible for handling requests by checking for values within a specified file.

§Examples

use cor_args::{FileHandler, Handler};

// Create a new FileHandler specifying a path to a file.
let handler = FileHandler::new("/path/to/file");

// Add a fallback handler
//let handler = handler.next(some_other_handler.into());

// Handle a configuration request returning contents of `/path/to/file`
let value = handler.handle_request("");

Implementations§

Source§

impl FileHandler

Source

pub fn new<P>(file_path: P) -> Self
where P: Into<PathBuf>,

Creates a new FileHandler with the specified file path.

§Arguments
  • file_path - The path to the file from which values are to be retrieved.
§Examples
use cor_args::FileHandler;

let handler = FileHandler::new("/path/to/file");
Source

pub fn next(self, handler: Box<dyn Handler>) -> Self

Trait Implementations§

Source§

impl Handler for FileHandler

Source§

fn handle_request(&self, key: &str) -> Option<String>

Retrieves content from the specified file.

This implementation attempts to read content from the file specified by file_path. If reading fails, and if a next handler is provided, it delegates the request to the next handler. If there’s no next handler or if the file reading fails, it returns None.

§Arguments
  • key - The key for which the value needs to be retrieved. (Note: The key is currently not used directly, just passed on to the next handler.)
§Returns

An Option containing the contents of the file, or None if the key is not found.

Source§

impl Into<Box<dyn Handler>> for FileHandler

Source§

fn into(self) -> Box<dyn Handler>

Converts this type into the (usually inferred) input type.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.