Enum nu_protocol::value::primitive::Primitive[][src]

pub enum Primitive {
Show variants Nothing, Int(BigInt), Decimal(BigDecimal), Filesize(BigInt), String(String), ColumnPath(ColumnPath), GlobPattern(String), Boolean(bool), Date(DateTime<FixedOffset>), Duration(BigInt), Range(Box<Range>), FilePath(PathBuf), Binary(Vec<u8>), BeginningOfStream, EndOfStream,
}
Expand description

The most fundamental of structured values in Nu are the Primitive values. These values represent types like integers, strings, booleans, dates, etc that are then used as the building blocks of more complex structures.

Primitives also include marker values BeginningOfStream and EndOfStream which denote a change of condition in the stream

Variants

Nothing
Expand description

An empty value

Int(BigInt)
Expand description

A “big int”, an integer with arbitrarily large size (aka not limited to 64-bit)

Decimal(BigDecimal)
Expand description

A “big decimal”, an decimal number with arbitrarily large size (aka not limited to 64-bit)

Filesize(BigInt)
Expand description

A count in the number of bytes, used as a filesize

String(String)
Expand description

A string value

ColumnPath(ColumnPath)
Expand description

A path to travel to reach a value in a table

GlobPattern(String)
Expand description

A glob pattern, eg foo*

Boolean(bool)
Expand description

A boolean value

Expand description

A date value

Duration(BigInt)
Expand description

A count in the number of nanoseconds

Range(Box<Range>)
Expand description

A range of values

FilePath(PathBuf)
Expand description

A file path

Binary(Vec<u8>)
Expand description

A vector of raw binary data

BeginningOfStream
Expand description

Beginning of stream marker, a pseudo-value not intended for tables

EndOfStream
Expand description

End of stream marker, a pseudo-value not intended for tables

Implementations

impl Primitive[src]

pub fn as_char(&self, span: Span) -> Result<char, ShellError>[src]

Converts a primitive value to a char, if possible. Uses a span to build an error if the conversion isn’t possible.

pub fn as_usize(&self, span: Span) -> Result<usize, ShellError>[src]

Converts a primitive value to a u64, if possible. Uses a span to build an error if the conversion isn’t possible.

pub fn as_u64(&self, span: Span) -> Result<u64, ShellError>[src]

Converts a primitive value to a u64, if possible. Uses a span to build an error if the conversion isn’t possible.

pub fn as_f64(&self, span: Span) -> Result<f64, ShellError>[src]

Converts a primitive value to a f64, if possible. Uses a span to build an error if the conversion isn’t possible.

pub fn as_i64(&self, span: Span) -> Result<i64, ShellError>[src]

Converts a primitive value to a i64, if possible. Uses a span to build an error if the conversion isn’t possible.

pub fn as_u32(&self, span: Span) -> Result<u32, ShellError>[src]

Converts a primitive value to a u32, if possible. Uses a span to build an error if the conversion isn’t possible.

pub fn as_i32(&self, span: Span) -> Result<i32, ShellError>[src]

pub fn as_i16(&self, span: Span) -> Result<i16, ShellError>[src]

pub fn into_chrono_duration(self, span: Span) -> Result<Duration, ShellError>[src]

pub fn into_string(self, span: Span) -> Result<String, ShellError>[src]

pub fn is_empty(&self) -> bool[src]

Returns true if the value is empty

Trait Implementations

impl Clone for Primitive[src]

fn clone(&self) -> Primitive[src]

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Debug for Primitive[src]

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

Formats the value using the given formatter. Read more

impl<'de> Deserialize<'de> for Primitive[src]

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
    __D: Deserializer<'de>, 
[src]

Deserialize this value from the given Serde deserializer. Read more

impl Display for Primitive[src]

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

Formats the value using the given formatter. Read more

impl From<&'_ str> for Primitive[src]

fn from(s: &str) -> Primitive[src]

Helper to convert from string slices to a primitive

impl From<BigDecimal> for Primitive[src]

fn from(decimal: BigDecimal) -> Primitive[src]

Helper to convert from decimals to a Primitive value

impl From<BigInt> for Primitive[src]

fn from(int: BigInt) -> Primitive[src]

Helper to convert from integers to a Primitive value

impl From<Duration> for Primitive[src]

fn from(duration: Duration) -> Primitive[src]

Performs the conversion.

impl From<String> for Primitive[src]

fn from(s: String) -> Primitive[src]

Helper to convert from Strings to a primitive

impl From<bool> for Primitive[src]

fn from(b: bool) -> Primitive[src]

Helper to convert from boolean to a primitive

impl From<f64> for Primitive[src]

fn from(float: f64) -> Primitive[src]

Helper to convert from 64-bit float to a Primitive value

impl Hash for Primitive[src]

fn hash<__H: Hasher>(&self, state: &mut __H)[src]

Feeds this value into the given Hasher. Read more

fn hash_slice<H>(data: &[Self], state: &mut H) where
    H: Hasher
1.3.0[src]

Feeds a slice of this type into the given Hasher. Read more

impl Ord for Primitive[src]

fn cmp(&self, other: &Primitive) -> Ordering[src]

This method returns an Ordering between self and other. Read more

#[must_use]
fn max(self, other: Self) -> Self
1.21.0[src]

Compares and returns the maximum of two values. Read more

#[must_use]
fn min(self, other: Self) -> Self
1.21.0[src]

Compares and returns the minimum of two values. Read more

#[must_use]
fn clamp(self, min: Self, max: Self) -> Self
1.50.0[src]

Restrict a value to a certain interval. Read more

impl PartialEq<Primitive> for Primitive[src]

fn eq(&self, other: &Primitive) -> bool[src]

This method tests for self and other values to be equal, and is used by ==. Read more

fn ne(&self, other: &Primitive) -> bool[src]

This method tests for !=.

impl PartialOrd<Primitive> for Primitive[src]

fn partial_cmp(&self, other: &Primitive) -> Option<Ordering>[src]

This method returns an ordering between self and other values if one exists. Read more

#[must_use]
fn lt(&self, other: &Rhs) -> bool
1.0.0[src]

This method tests less than (for self and other) and is used by the < operator. Read more

#[must_use]
fn le(&self, other: &Rhs) -> bool
1.0.0[src]

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

#[must_use]
fn gt(&self, other: &Rhs) -> bool
1.0.0[src]

This method tests greater than (for self and other) and is used by the > operator. Read more

#[must_use]
fn ge(&self, other: &Rhs) -> bool
1.0.0[src]

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

impl PrettyDebug for Primitive[src]

fn pretty(&self) -> DebugDocBuilder[src]

Get a Primitive value ready to be pretty-printed

fn to_doc(&self) -> DebugDoc[src]

fn pretty_doc(
    &self
) -> Doc<'static, BoxDoc<'static, ShellAnnotation>, ShellAnnotation>
[src]

fn pretty_builder(&self) -> DocBuilder<'static, BoxAllocator, ShellAnnotation>[src]

fn display(&self) -> String[src]

A convenience method that prints out the document without colors in 70 columns. Generally, you should use plain_string or colored_string if possible, but display() can be useful for trace lines and things like that, where you don’t have control over the terminal. Read more

fn plain_string(&self, width: usize) -> String[src]

fn colored_string(&self, width: usize) -> String[src]

impl PrettyType for Primitive[src]

fn pretty_type(&self) -> DebugDocBuilder[src]

Find the type of the Value and prepare it for pretty-printing

impl Serialize for Primitive[src]

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error> where
    __S: Serializer
[src]

Serialize this value into the given Serde serializer. Read more

impl ShellTypeName for Primitive[src]

fn type_name(&self) -> &'static str[src]

Get the name of the type of a Primitive value

impl Eq for Primitive[src]

impl StructuralEq for Primitive[src]

impl StructuralPartialEq for Primitive[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

pub fn equivalent(&self, key: &K) -> bool[src]

Compare self to key and return true if they are equal.

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

impl<T> PrettyDebugWithSource for T where
    T: PrettyDebug
[src]

pub fn pretty_debug(&self, _source: &str) -> DebugDocBuilder[src]

fn refined_pretty_debug(
    &self,
    _refine: PrettyDebugRefineKind,
    source: &str
) -> DebugDocBuilder
[src]

fn debug(&self, source: impl Into<Text>) -> String where
    Self: Clone
[src]

fn debuggable(self, source: impl Into<Text>) -> DebuggableWithSource<Self>[src]

impl<T> SpannedItem for T[src]

fn spanned(self, span: impl Into<Span>) -> Spanned<Self>[src]

Converts a value into a Spanned value

fn spanned_unknown(self) -> Spanned<Self>[src]

Converts a value into a Spanned value, using an unknown Span

impl<T> TaggedItem for T[src]

fn tagged(self, tag: impl Into<Tag>) -> Tagged<Self>[src]

fn tagged_unknown(self) -> Tagged<Self>[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

pub fn to_owned(&self) -> T[src]

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

pub fn clone_into(&self, target: &mut T)[src]

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

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

impl<T> ToString for T where
    T: Display + ?Sized
[src]

pub default fn to_string(&self) -> String[src]

Converts the given value to a String. Read more

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

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

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

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

Performs the conversion.

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]