Skip to main content

EdifactDelimiters

Struct EdifactDelimiters 

Source
pub struct EdifactDelimiters {
    pub component: u8,
    pub element: u8,
    pub decimal: u8,
    pub release: u8,
    pub segment: u8,
    pub reserved: u8,
}
Expand description

EDIFACT delimiter characters.

The six characters that control EDIFACT message structure. When no UNA service string advice is present, the standard defaults apply:

  • Component separator: : (colon)
  • Element separator: + (plus)
  • Decimal mark: . (period)
  • Release character: ? (question mark)
  • Segment terminator: ' (apostrophe)
  • Reserved: (space)

Fields§

§component: u8

Component data element separator (default: :).

§element: u8

Data element separator (default: +).

§decimal: u8

Decimal mark (default: .).

§release: u8

Release character / escape (default: ?).

§segment: u8

Segment terminator (default: ').

§reserved: u8

Reserved for future use (default: ).

Implementations§

Source§

impl EdifactDelimiters

Source

pub const STANDARD: Self

Standard EDIFACT delimiters (when no UNA segment is present).

Source

pub fn from_una(una: &[u8]) -> Result<Self, UnaParseError>

Parse delimiters from a UNA service string advice segment.

The UNA segment is exactly 9 bytes: UNA followed by 6 delimiter characters. Format: UNA<component><element><decimal><release><reserved><terminator>

§Errors

Returns an error if the input is not exactly 9 bytes or does not start with UNA.

Source

pub fn detect(input: &[u8]) -> (bool, Self)

Detect delimiters from an EDIFACT message.

If the message starts with a UNA segment, parses delimiters from it. Otherwise, returns the standard defaults.

Returns (has_una, delimiters).

Source

pub fn to_una_string(&self) -> String

Formats the delimiters as a UNA service string advice segment.

Returns the 9-byte UNA string: UNA:+.? '

Trait Implementations§

Source§

impl Clone for EdifactDelimiters

Source§

fn clone(&self) -> EdifactDelimiters

Returns a duplicate of the value. Read more
1.0.0 · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for EdifactDelimiters

Source§

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

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

impl Default for EdifactDelimiters

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl Display for EdifactDelimiters

Source§

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

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

impl Hash for EdifactDelimiters

Source§

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

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

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

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

impl PartialEq for EdifactDelimiters

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for EdifactDelimiters

Source§

impl Eq for EdifactDelimiters

Source§

impl StructuralPartialEq for EdifactDelimiters

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> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
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.