Skip to main content

IcalValue

Enum IcalValue 

Source
pub enum IcalValue<'a> {
Show 19 variants Binary(IcalBinary<'a>), Boolean(IcalBoolean<'a>), CalAddress(IcalCalAddress<'a>), Date(IcalDate<'a>), DateTime(IcalDateTime<'a>), DateTimeList(IcalDateTimeList<'a>), Duration(IcalDuration<'a>), Float(IcalFloat<'a>), Geo(IcalGeo<'a>), Integer(IcalInteger<'a>), Period(IcalPeriod<'a>), Recur(IcalRecur<'a>), RequestStatus(IcalRequestStatus<'a>), Text(IcalText<'a>), TextList(IcalTextList<'a>), Time(IcalTime<'a>), Uri(IcalUri<'a>), UtcOffset(IcalUtcOffset<'a>), Unknown(IcalUnknownValue<'a>),
}
Expand description

A decoded property value: one known kind, or Unknown (raw) for anything the model does not decode.

Variants§

§

Binary(IcalBinary<'a>)

A binary value (ATTACH, IMAGE): a URI reference or inline base64.

§

Boolean(IcalBoolean<'a>)

A boolean value.

§

CalAddress(IcalCalAddress<'a>)

A calendar user address (ORGANIZER, ATTENDEE).

§

Date(IcalDate<'a>)

A calendar date.

§

DateTime(IcalDateTime<'a>)

A date with time (DTSTAMP, DTSTART, …).

§

DateTimeList(IcalDateTimeList<'a>)

A list of dates, date-times or periods (RDATE, EXDATE).

§

Duration(IcalDuration<'a>)

A duration (DURATION, TRIGGER).

§

Float(IcalFloat<'a>)

A floating-point number.

§

Geo(IcalGeo<'a>)

The structured GEO latitude/longitude pair.

§

Integer(IcalInteger<'a>)

A signed integer (PRIORITY, SEQUENCE, PERCENT-COMPLETE).

§

Period(IcalPeriod<'a>)

A period of time (FREEBUSY).

§

Recur(IcalRecur<'a>)

A recurrence rule (RRULE).

§

RequestStatus(IcalRequestStatus<'a>)

The structured REQUEST-STATUS value.

§

Text(IcalText<'a>)

A single text value (SUMMARY, DESCRIPTION, …).

§

TextList(IcalTextList<'a>)

A comma-separated text list (CATEGORIES, RESOURCES).

§

Time(IcalTime<'a>)

A time of day.

§

Uri(IcalUri<'a>)

A URI (URL, TZURL, SOURCE, …).

§

UtcOffset(IcalUtcOffset<'a>)

A UTC offset (TZOFFSETFROM, TZOFFSETTO).

§

Unknown(IcalUnknownValue<'a>)

Any value the model does not decode, kept as its raw components so it round-trips.

Implementations§

Source§

impl IcalValue<'_>

Source

pub fn kind(&self) -> Option<IcalValueKind>

The closed IcalValueKind of this value, or None for Unknown (which is outside the vocabulary).

Source

pub fn into_owned(self) -> IcalValue<'static>

The same value with every borrow replaced by an allocation.

The counterpart of Cow::into_owned for a whole value: a calendar read from a buffer that is about to go away, or rebuilt from data that was never one line, needs exactly this.

Trait Implementations§

Source§

impl<'a> Clone for IcalValue<'a>

Source§

fn clone(&self) -> IcalValue<'a>

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<'v> Codec<'v> for IcalValue<'v>

Available on crate feature parser only.
Source§

fn decode(node: &'v IcalValueNode<'_>) -> Self

Decode liberally as raw Unknown.

No value kind is known at this level, that being the spec’s job, so the version-divergent lenses whose target is IcalValue override the lens decode to resolve the real kind; this fallback is what others inherit.

Source§

fn encode(&self, escaper: Escaper) -> IcalValueNode<'static>

Encode by dispatching to the held value’s own codec.

Source§

impl<'a> Debug for IcalValue<'a>

Source§

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

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

impl<'a> Eq for IcalValue<'a>

Source§

impl<'a> PartialEq for IcalValue<'a>

Source§

fn eq(&self, other: &IcalValue<'a>) -> bool

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

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

Inequality operator !=. Read more
Source§

impl<'a> StructuralPartialEq for IcalValue<'a>

Auto Trait Implementations§

§

impl<'a> Freeze for IcalValue<'a>

§

impl<'a> RefUnwindSafe for IcalValue<'a>

§

impl<'a> Send for IcalValue<'a>

§

impl<'a> Sync for IcalValue<'a>

§

impl<'a> Unpin for IcalValue<'a>

§

impl<'a> UnsafeUnpin for IcalValue<'a>

§

impl<'a> UnwindSafe for IcalValue<'a>

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.