pub struct Query<'a, F> { /* private fields */ }
Expand description

A wrapper around a query string &str which modifies the behavior of Display. Specific query string values are marked as sensitive by providing predicate over the keys. This accommodates the httpQuery trait and the httpQueryParams trait.

The Display implementation will respect the unredacted-logging flag.

Example

// Query string value with key "name" is redacted
let uri = Query::new(&uri, |x| QueryMarker { key: false, value: x == "name" } );
println!("{uri}");

Implementations§

source§

impl<'a, F> Query<'a, F>

source

pub fn new(query: &'a str, marker: F) -> Self

Constructs a new Query.

Trait Implementations§

source§

impl<'a, F> Display for Query<'a, F>where F: Fn(&'a str) -> QueryMarker,

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<'a, F> RefUnwindSafe for Query<'a, F>where F: RefUnwindSafe,

§

impl<'a, F> Send for Query<'a, F>where F: Send,

§

impl<'a, F> Sync for Query<'a, F>where F: Sync,

§

impl<'a, F> Unpin for Query<'a, F>where F: Unpin,

§

impl<'a, F> UnwindSafe for Query<'a, F>where F: UnwindSafe,

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere 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> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for Twhere 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> ToString for Twhere T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

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

§

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 Twhere U: TryFrom<T>,

§

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.
§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more