SwiftField

Trait SwiftField 

Source
pub trait SwiftField:
    Serialize
    + for<'de> Deserialize<'de>
    + Clone
    + Debug {
    // Required methods
    fn parse(value: &str) -> Result<Self>
       where Self: Sized;
    fn to_swift_string(&self) -> String;
    fn format_spec() -> &'static str;

    // Provided methods
    fn parse_with_variant(
        value: &str,
        _variant: Option<&str>,
        _field_tag: Option<&str>,
    ) -> Result<Self>
       where Self: Sized { ... }
    fn valid_variants() -> Option<Vec<&'static str>> { ... }
}
Expand description

Core trait for all Swift field types

Required Methods§

Source

fn parse(value: &str) -> Result<Self>
where Self: Sized,

Parse field value from string representation

Source

fn to_swift_string(&self) -> String

Convert field back to SWIFT string format

Source

fn format_spec() -> &'static str

Get field format specification

Provided Methods§

Source

fn parse_with_variant( value: &str, _variant: Option<&str>, _field_tag: Option<&str>, ) -> Result<Self>
where Self: Sized,

Parse field value with variant hint for enum fields Default implementation falls back to regular parse

Source

fn valid_variants() -> Option<Vec<&'static str>>

Get valid variant letters for enum fields Returns None for non-enum fields, Some(vec) for enum fields

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl SwiftField for Field11

Source§

impl SwiftField for Field25AccountIdentification

Source§

impl SwiftField for Field32

Source§

impl SwiftField for Field50Creditor

Source§

impl SwiftField for Field50InstructingParty

Source§

impl SwiftField for Field50OrderingCustomerAFK

Source§

impl SwiftField for Field50OrderingCustomerFGH

Source§

impl SwiftField for Field50OrderingCustomerNCF

Source§

impl SwiftField for Field52AccountServicingInstitution

Source§

impl SwiftField for Field52CreditorBank

Source§

impl SwiftField for Field52DrawerBank

Source§

impl SwiftField for Field52OrderingInstitution

Source§

impl SwiftField for Field53SenderCorrespondent

Source§

impl SwiftField for Field54ReceiverCorrespondent

Source§

impl SwiftField for Field55ThirdReimbursementInstitution

Source§

impl SwiftField for Field56Intermediary

Source§

impl SwiftField for Field56IntermediaryAD

Source§

impl SwiftField for Field57AccountWithInstitution

Source§

impl SwiftField for Field57DebtInstitution

Source§

impl SwiftField for Field57DebtorBank

Source§

impl SwiftField for Field58

Source§

impl SwiftField for Field59

Source§

impl SwiftField for Field59Debtor

Source§

impl SwiftField for Field60

Source§

impl SwiftField for Field62

Source§

impl SwiftField for Field11R

Source§

impl SwiftField for Field11S

Source§

impl SwiftField for Field12

Source§

impl SwiftField for Field13C

Source§

impl SwiftField for Field13D

Source§

impl SwiftField for Field19

Source§

impl SwiftField for Field20

Source§

impl SwiftField for Field21C

Source§

impl SwiftField for Field21D

Source§

impl SwiftField for Field21E

Source§

impl SwiftField for Field21F

Source§

impl SwiftField for Field21NoOption

Source§

impl SwiftField for Field21R

Source§

impl SwiftField for Field23

Source§

impl SwiftField for Field23B

Source§

impl SwiftField for Field23E

Source§

impl SwiftField for Field25A

Source§

impl SwiftField for Field25NoOption

Source§

impl SwiftField for Field25P

Source§

impl SwiftField for Field26T

Source§

impl SwiftField for Field28

Source§

impl SwiftField for Field28C

Source§

impl SwiftField for Field28D

Source§

impl SwiftField for Field30

Source§

impl SwiftField for Field32A

Source§

impl SwiftField for Field32B

Source§

impl SwiftField for Field32C

Source§

impl SwiftField for Field32D

Source§

impl SwiftField for Field33B

Source§

impl SwiftField for Field34F

Source§

impl SwiftField for Field36

Source§

impl SwiftField for Field37H

Source§

impl SwiftField for Field50A

Source§

impl SwiftField for Field50C

Source§

impl SwiftField for Field50F

Source§

impl SwiftField for Field50G

Source§

impl SwiftField for Field50H

Source§

impl SwiftField for Field50K

Source§

impl SwiftField for Field50L

Source§

impl SwiftField for Field50NoOption

Source§

impl SwiftField for Field51A

Source§

impl SwiftField for Field52A

Source§

impl SwiftField for Field52B

Source§

impl SwiftField for Field52C

Source§

impl SwiftField for Field52D

Source§

impl SwiftField for Field53A

Source§

impl SwiftField for Field53B

Source§

impl SwiftField for Field53D

Source§

impl SwiftField for Field54A

Source§

impl SwiftField for Field54B

Source§

impl SwiftField for Field54D

Source§

impl SwiftField for Field55A

Source§

impl SwiftField for Field55B

Source§

impl SwiftField for Field55D

Source§

impl SwiftField for Field56A

Source§

impl SwiftField for Field56C

Source§

impl SwiftField for Field56D

Source§

impl SwiftField for Field57A

Source§

impl SwiftField for Field57B

Source§

impl SwiftField for Field57C

Source§

impl SwiftField for Field57D

Source§

impl SwiftField for Field58A

Source§

impl SwiftField for Field58D

Source§

impl SwiftField for Field59A

Source§

impl SwiftField for Field59F

Source§

impl SwiftField for Field59NoOption

Source§

impl SwiftField for Field60F

Source§

impl SwiftField for Field60M

Source§

impl SwiftField for Field61

Source§

impl SwiftField for Field62F

Source§

impl SwiftField for Field62M

Source§

impl SwiftField for Field64

Source§

impl SwiftField for Field65

Source§

impl SwiftField for Field70

Source§

impl SwiftField for Field71A

Source§

impl SwiftField for Field71B

Source§

impl SwiftField for Field71F

Source§

impl SwiftField for Field71G

Source§

impl SwiftField for Field72

Source§

impl SwiftField for Field75

Source§

impl SwiftField for Field76

Source§

impl SwiftField for Field77A

Source§

impl SwiftField for Field77B

Source§

impl SwiftField for Field77T

Source§

impl SwiftField for Field79

Source§

impl SwiftField for Field86

Source§

impl SwiftField for Field90C

Source§

impl SwiftField for Field90D

Source§

impl SwiftField for MT101Transaction

Source§

impl SwiftField for MT104Transaction

Source§

impl SwiftField for MT107Transaction

Source§

impl SwiftField for MT110Cheque

Source§

impl SwiftField for MT204Transaction

Source§

impl SwiftField for MT210Sequence

Source§

impl SwiftField for MT920Sequence

Source§

impl SwiftField for MT935RateChange

Source§

impl SwiftField for MT940StatementLine

Source§

impl SwiftField for MT942StatementLine