Skip to main content

ParamModifier

Enum ParamModifier 

Source
pub enum ParamModifier {
    Default {
        colon: bool,
        word: Box<Word>,
    },
    Assign {
        colon: bool,
        word: Box<Word>,
    },
    Alternative {
        colon: bool,
        word: Box<Word>,
    },
    Error {
        colon: bool,
        word: Box<Word>,
    },
    TrimPrefix {
        longest: bool,
        pattern: Box<Word>,
    },
    TrimSuffix {
        longest: bool,
        pattern: Box<Word>,
    },
    Substitute {
        anchor: SubAnchor,
        pattern: Box<Word>,
        replacement: Option<Box<Word>>,
    },
    Substring {
        offset: Box<Word>,
        length: Option<Box<Word>>,
    },
    Case(CaseOp),
}
Expand description

Modifier operations on parameter values.

Variants§

§

Default

${name:-word} or ${name-word} — use default.

Fields

§colon: bool
§word: Box<Word>
§

Assign

${name:=word} or ${name=word} — assign default.

Fields

§colon: bool
§word: Box<Word>
§

Alternative

${name:+word} or ${name+word} — use alternative.

Fields

§colon: bool
§word: Box<Word>
§

Error

${name:?word} or ${name?word} — error if unset.

Fields

§colon: bool
§word: Box<Word>
§

TrimPrefix

${name#pat} or ${name##pat} — remove prefix.

Fields

§longest: bool
§pattern: Box<Word>
§

TrimSuffix

${name%pat} or ${name%%pat} — remove suffix.

Fields

§longest: bool
§pattern: Box<Word>
§

Substitute

${name/pat/rep} or ${name//pat/rep} — substitution.

Fields

§anchor: SubAnchor
§pattern: Box<Word>
§replacement: Option<Box<Word>>
§

Substring

${name:offset} or ${name:offset:length} — substring.

Fields

§offset: Box<Word>
§length: Option<Box<Word>>
§

Case(CaseOp)

${name^pat}, ${name^^pat}, ${name,pat}, ${name,,pat}.

Trait Implementations§

Source§

impl Clone for ParamModifier

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ParamModifier

Source§

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

Formats the value using the given formatter. Read more
Source§

impl PartialEq for ParamModifier

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for ParamModifier

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

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

Source§

type Error = !

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

fn try_from(value: U) -> Result<T, !>

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.