Struct dicom_encoding::text::SpecificCharacterSet

source ·
pub struct SpecificCharacterSet(/* private fields */);
Expand description

A descriptor for a specific character set, taking part in text encoding and decoding as per PS3.5 ch 6 6.1.

§Example

Use from_code or one of the associated constants to create a character set. From there, use the TextCodec trait to encode and decode text.

use dicom_encoding::text::{SpecificCharacterSet, TextCodec};

let character_set = SpecificCharacterSet::from_code("ISO_IR 100").unwrap();
assert_eq!(character_set, SpecificCharacterSet::ISO_IR_100);

Implementations§

source§

impl SpecificCharacterSet

source

pub const ISO_IR_6: SpecificCharacterSet = _

ISO IR 6: The default character set, as defined by the DICOM standard.

source

pub const ISO_IR_100: SpecificCharacterSet = _

source

pub const ISO_IR_192: SpecificCharacterSet = _

ISO IR 192: UTF-8 encoding

source

pub fn from_code(code: &str) -> Option<Self>

Obtain the specific character set identified by the given code string.

Supported code strings include the possible values in the respective DICOM element (0008, 0005).

§Example
use dicom_encoding::text::{SpecificCharacterSet, TextCodec};

let character_set = SpecificCharacterSet::from_code("ISO_IR 100").unwrap();
assert_eq!(character_set.name(), "ISO_IR 100");

Trait Implementations§

source§

impl Clone for SpecificCharacterSet

source§

fn clone(&self) -> SpecificCharacterSet

Returns a copy 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 SpecificCharacterSet

source§

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

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

impl Default for SpecificCharacterSet

source§

fn default() -> SpecificCharacterSet

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

impl PartialEq for SpecificCharacterSet

source§

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

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

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

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl TextCodec for SpecificCharacterSet

source§

fn name(&self) -> Cow<'static, str>

Obtain the defined term (unique name) of the text encoding, which may be used as the value of a Specific Character Set (0008, 0005) element to refer to this codec. Read more
source§

fn decode(&self, text: &[u8]) -> Result<String, DecodeTextError>

Decode the given byte buffer as a single string. The resulting string may contain backslash characters (’') to delimit individual values, and should be split later on if required.
source§

fn encode(&self, text: &str) -> Result<Vec<u8>, EncodeTextError>

Encode a text value into a byte vector. The input string can feature multiple text values by using the backslash character (’') as the value delimiter.
source§

impl StructuralPartialEq for SpecificCharacterSet

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> 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> IntoEither for T

source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
source§

impl<T> ToOwned for T
where T: Clone,

§

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>,

§

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>,

§

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.