Module field_utils

Module field_utils 

Source
Expand description

§Field-Specific Utility Functions

Higher-level parsing utilities specific to SWIFT MT message fields. These utilities handle complex field patterns like party identifiers, multiline text, and field-specific validation logic.

Enums§

BankOperationCode
Bank operation codes used in Field 23 and similar fields
PaymentMethodCode
Payment method codes used in Field 57 and similar fields
TransactionTypeCode
Transaction type codes used in Field 61 and similar fields

Functions§

extract_field_number
Extract the numeric part from mixed alphanumeric field (e.g., “32A” -> “32”)
extract_field_option
Extract field option (e.g., “A” from “:50A:”)
is_numbered_line
Check if a line looks like a numbered field line (e.g., “1/” or “2/” at start)
parse_debit_credit_mark
Parse and validate debit/credit mark (D or C)
parse_field_tag
Parse a field tag with optional variant (e.g., “50A” -> (“50”, Some(‘A’)))
parse_field_with_suffix
Parse field with optional suffix (e.g., “20C” -> (“20”, Some(‘C’)))
parse_multiline_text
Parse multiline text (4*35x format) - simpler version for basic multiline fields
parse_name_and_address
Parse name and address lines (4*35x format) Used in fields 50-59 for party name and address information
parse_numbered_lines
Parse numbered lines format (e.g., “1/ACCOUNT”, “2/NAME”)
parse_party_identifier
Parse party identifier in format /1!a/34x, /2!a/34x, //XX, or /34x Used in fields 51-59 for institutional and party identification
parse_payment_method
Parse payment method from //XX format
validate_field_option
Validate that a field option (like 50A, 50K) matches expected options
validate_multiline_text
Validate multi-line text with specific constraints Returns validated lines as Vec