Skip to main content

fixer_fix/fix44/
collateral_response.rs

1// Code generated by fixer-gen. DO NOT EDIT.
2#![allow(clippy::new_without_default)]
3#![allow(clippy::needless_pass_by_value)]
4#![allow(clippy::too_many_arguments)]
5#![allow(unused_imports)]
6
7use fixer::message::Message;
8use fixer::fix_string::FIXString;
9use fixer::errors::MessageRejectErrorEnum;
10use fixer::session::session_id::SessionID;
11
12use rust_decimal::Decimal;
13
14
15use jiff::Timestamp;
16
17use crate::field;
18use crate::tag;
19
20/// `CollateralResponse` is the `fix44` `CollateralResponse` type, `MsgType` = AZ.
21pub struct CollateralResponse {
22    pub message: Message,
23}
24
25impl CollateralResponse {
26    /// Creates a new `CollateralResponse` with required fields.
27    pub fn new(coll_resp_id: field::CollRespIDField, coll_asgn_id: field::CollAsgnIDField, coll_asgn_reason: field::CollAsgnReasonField, coll_asgn_resp_type: field::CollAsgnRespTypeField, transact_time: field::TransactTimeField) -> Self {
28        let mut msg = Message::new();
29        msg.header.set_field(tag::MSG_TYPE, FIXString::from("AZ".to_string()));
30
31        msg.body.set_field(tag::COLL_RESP_ID, coll_resp_id.0);
32
33        msg.body.set_field(tag::COLL_ASGN_ID, coll_asgn_id.0);
34
35        msg.body.set_field(tag::COLL_ASGN_REASON, coll_asgn_reason.0);
36
37        msg.body.set_field(tag::COLL_ASGN_RESP_TYPE, coll_asgn_resp_type.0);
38
39        msg.body.set_field(tag::TRANSACT_TIME, transact_time.0);
40
41        Self { message: msg }
42    }
43
44    /// Creates a `CollateralResponse` from an existing `Message`.
45    pub fn from_message(msg: Message) -> Self {
46        Self { message: msg }
47    }
48
49    /// Returns the underlying `Message`.
50    pub fn to_message(self) -> Message {
51        self.message
52    }
53
54
55
56
57    /// Sets `Account`, Tag 1.
58    pub fn set_account(&mut self, v: String) {
59        self.message.body.set_field(tag::ACCOUNT, FIXString::from(v));
60    }
61
62    /// Gets `Account`, Tag 1.
63    pub fn get_account(&self) -> Result<String, MessageRejectErrorEnum> {
64        let mut fld = field::AccountField::new(String::new());
65        self.message.body.get_field(tag::ACCOUNT, &mut fld.0)?;
66        Ok(fld.value().to_string())
67    }
68
69
70    /// Returns true if `Account` is present, Tag 1.
71    pub fn has_account(&self) -> bool {
72        self.message.body.has(tag::ACCOUNT)
73    }
74
75
76
77
78    /// Sets `AccountType`, Tag 581.
79    pub fn set_account_type(&mut self, v: isize) {
80        self.message.body.set_field(tag::ACCOUNT_TYPE, fixer::fix_int::FIXInt::from(v));
81    }
82
83    /// Gets `AccountType`, Tag 581.
84    pub fn get_account_type(&self) -> Result<isize, MessageRejectErrorEnum> {
85        let mut fld = field::AccountTypeField::new(0);
86        self.message.body.get_field(tag::ACCOUNT_TYPE, &mut fld.0)?;
87        Ok(fld.value())
88    }
89
90
91    /// Returns true if `AccountType` is present, Tag 581.
92    pub fn has_account_type(&self) -> bool {
93        self.message.body.has(tag::ACCOUNT_TYPE)
94    }
95
96
97
98
99    /// Sets `AccruedInterestAmt`, Tag 159.
100    pub fn set_accrued_interest_amt(&mut self, val: Decimal, scale: i32) {
101        self.message.body.set_field(tag::ACCRUED_INTEREST_AMT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
102    }
103
104    /// Gets `AccruedInterestAmt`, Tag 159.
105    pub fn get_accrued_interest_amt(&self) -> Result<Decimal, MessageRejectErrorEnum> {
106        let mut fld = field::AccruedInterestAmtField::new(Decimal::ZERO, 0);
107        self.message.body.get_field(tag::ACCRUED_INTEREST_AMT, &mut fld.0)?;
108        Ok(fld.value())
109    }
110
111
112    /// Returns true if `AccruedInterestAmt` is present, Tag 159.
113    pub fn has_accrued_interest_amt(&self) -> bool {
114        self.message.body.has(tag::ACCRUED_INTEREST_AMT)
115    }
116
117
118
119
120    /// Sets `AgreementCurrency`, Tag 918.
121    pub fn set_agreement_currency(&mut self, v: String) {
122        self.message.body.set_field(tag::AGREEMENT_CURRENCY, FIXString::from(v));
123    }
124
125    /// Gets `AgreementCurrency`, Tag 918.
126    pub fn get_agreement_currency(&self) -> Result<String, MessageRejectErrorEnum> {
127        let mut fld = field::AgreementCurrencyField::new(String::new());
128        self.message.body.get_field(tag::AGREEMENT_CURRENCY, &mut fld.0)?;
129        Ok(fld.value().to_string())
130    }
131
132
133    /// Returns true if `AgreementCurrency` is present, Tag 918.
134    pub fn has_agreement_currency(&self) -> bool {
135        self.message.body.has(tag::AGREEMENT_CURRENCY)
136    }
137
138
139
140
141    /// Sets `AgreementDate`, Tag 915.
142    pub fn set_agreement_date(&mut self, v: String) {
143        self.message.body.set_field(tag::AGREEMENT_DATE, FIXString::from(v));
144    }
145
146    /// Gets `AgreementDate`, Tag 915.
147    pub fn get_agreement_date(&self) -> Result<String, MessageRejectErrorEnum> {
148        let mut fld = field::AgreementDateField::new(String::new());
149        self.message.body.get_field(tag::AGREEMENT_DATE, &mut fld.0)?;
150        Ok(fld.value().to_string())
151    }
152
153
154    /// Returns true if `AgreementDate` is present, Tag 915.
155    pub fn has_agreement_date(&self) -> bool {
156        self.message.body.has(tag::AGREEMENT_DATE)
157    }
158
159
160
161
162    /// Sets `AgreementDesc`, Tag 913.
163    pub fn set_agreement_desc(&mut self, v: String) {
164        self.message.body.set_field(tag::AGREEMENT_DESC, FIXString::from(v));
165    }
166
167    /// Gets `AgreementDesc`, Tag 913.
168    pub fn get_agreement_desc(&self) -> Result<String, MessageRejectErrorEnum> {
169        let mut fld = field::AgreementDescField::new(String::new());
170        self.message.body.get_field(tag::AGREEMENT_DESC, &mut fld.0)?;
171        Ok(fld.value().to_string())
172    }
173
174
175    /// Returns true if `AgreementDesc` is present, Tag 913.
176    pub fn has_agreement_desc(&self) -> bool {
177        self.message.body.has(tag::AGREEMENT_DESC)
178    }
179
180
181
182
183    /// Sets `AgreementID`, Tag 914.
184    pub fn set_agreement_id(&mut self, v: String) {
185        self.message.body.set_field(tag::AGREEMENT_ID, FIXString::from(v));
186    }
187
188    /// Gets `AgreementID`, Tag 914.
189    pub fn get_agreement_id(&self) -> Result<String, MessageRejectErrorEnum> {
190        let mut fld = field::AgreementIDField::new(String::new());
191        self.message.body.get_field(tag::AGREEMENT_ID, &mut fld.0)?;
192        Ok(fld.value().to_string())
193    }
194
195
196    /// Returns true if `AgreementID` is present, Tag 914.
197    pub fn has_agreement_id(&self) -> bool {
198        self.message.body.has(tag::AGREEMENT_ID)
199    }
200
201
202
203
204    /// Sets `BenchmarkCurveCurrency`, Tag 220.
205    pub fn set_benchmark_curve_currency(&mut self, v: String) {
206        self.message.body.set_field(tag::BENCHMARK_CURVE_CURRENCY, FIXString::from(v));
207    }
208
209    /// Gets `BenchmarkCurveCurrency`, Tag 220.
210    pub fn get_benchmark_curve_currency(&self) -> Result<String, MessageRejectErrorEnum> {
211        let mut fld = field::BenchmarkCurveCurrencyField::new(String::new());
212        self.message.body.get_field(tag::BENCHMARK_CURVE_CURRENCY, &mut fld.0)?;
213        Ok(fld.value().to_string())
214    }
215
216
217    /// Returns true if `BenchmarkCurveCurrency` is present, Tag 220.
218    pub fn has_benchmark_curve_currency(&self) -> bool {
219        self.message.body.has(tag::BENCHMARK_CURVE_CURRENCY)
220    }
221
222
223
224
225    /// Sets `BenchmarkCurveName`, Tag 221.
226    pub fn set_benchmark_curve_name(&mut self, v: String) {
227        self.message.body.set_field(tag::BENCHMARK_CURVE_NAME, FIXString::from(v));
228    }
229
230    /// Gets `BenchmarkCurveName`, Tag 221.
231    pub fn get_benchmark_curve_name(&self) -> Result<String, MessageRejectErrorEnum> {
232        let mut fld = field::BenchmarkCurveNameField::new(String::new());
233        self.message.body.get_field(tag::BENCHMARK_CURVE_NAME, &mut fld.0)?;
234        Ok(fld.value().to_string())
235    }
236
237
238    /// Returns true if `BenchmarkCurveName` is present, Tag 221.
239    pub fn has_benchmark_curve_name(&self) -> bool {
240        self.message.body.has(tag::BENCHMARK_CURVE_NAME)
241    }
242
243
244
245
246    /// Sets `BenchmarkCurvePoint`, Tag 222.
247    pub fn set_benchmark_curve_point(&mut self, v: String) {
248        self.message.body.set_field(tag::BENCHMARK_CURVE_POINT, FIXString::from(v));
249    }
250
251    /// Gets `BenchmarkCurvePoint`, Tag 222.
252    pub fn get_benchmark_curve_point(&self) -> Result<String, MessageRejectErrorEnum> {
253        let mut fld = field::BenchmarkCurvePointField::new(String::new());
254        self.message.body.get_field(tag::BENCHMARK_CURVE_POINT, &mut fld.0)?;
255        Ok(fld.value().to_string())
256    }
257
258
259    /// Returns true if `BenchmarkCurvePoint` is present, Tag 222.
260    pub fn has_benchmark_curve_point(&self) -> bool {
261        self.message.body.has(tag::BENCHMARK_CURVE_POINT)
262    }
263
264
265
266
267    /// Sets `BenchmarkPrice`, Tag 662.
268    pub fn set_benchmark_price(&mut self, val: Decimal, scale: i32) {
269        self.message.body.set_field(tag::BENCHMARK_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
270    }
271
272    /// Gets `BenchmarkPrice`, Tag 662.
273    pub fn get_benchmark_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
274        let mut fld = field::BenchmarkPriceField::new(Decimal::ZERO, 0);
275        self.message.body.get_field(tag::BENCHMARK_PRICE, &mut fld.0)?;
276        Ok(fld.value())
277    }
278
279
280    /// Returns true if `BenchmarkPrice` is present, Tag 662.
281    pub fn has_benchmark_price(&self) -> bool {
282        self.message.body.has(tag::BENCHMARK_PRICE)
283    }
284
285
286
287
288    /// Sets `BenchmarkPriceType`, Tag 663.
289    pub fn set_benchmark_price_type(&mut self, v: isize) {
290        self.message.body.set_field(tag::BENCHMARK_PRICE_TYPE, fixer::fix_int::FIXInt::from(v));
291    }
292
293    /// Gets `BenchmarkPriceType`, Tag 663.
294    pub fn get_benchmark_price_type(&self) -> Result<isize, MessageRejectErrorEnum> {
295        let mut fld = field::BenchmarkPriceTypeField::new(0);
296        self.message.body.get_field(tag::BENCHMARK_PRICE_TYPE, &mut fld.0)?;
297        Ok(fld.value())
298    }
299
300
301    /// Returns true if `BenchmarkPriceType` is present, Tag 663.
302    pub fn has_benchmark_price_type(&self) -> bool {
303        self.message.body.has(tag::BENCHMARK_PRICE_TYPE)
304    }
305
306
307
308
309    /// Sets `BenchmarkSecurityID`, Tag 699.
310    pub fn set_benchmark_security_id(&mut self, v: String) {
311        self.message.body.set_field(tag::BENCHMARK_SECURITY_ID, FIXString::from(v));
312    }
313
314    /// Gets `BenchmarkSecurityID`, Tag 699.
315    pub fn get_benchmark_security_id(&self) -> Result<String, MessageRejectErrorEnum> {
316        let mut fld = field::BenchmarkSecurityIDField::new(String::new());
317        self.message.body.get_field(tag::BENCHMARK_SECURITY_ID, &mut fld.0)?;
318        Ok(fld.value().to_string())
319    }
320
321
322    /// Returns true if `BenchmarkSecurityID` is present, Tag 699.
323    pub fn has_benchmark_security_id(&self) -> bool {
324        self.message.body.has(tag::BENCHMARK_SECURITY_ID)
325    }
326
327
328
329
330    /// Sets `BenchmarkSecurityIDSource`, Tag 761.
331    pub fn set_benchmark_security_id_source(&mut self, v: String) {
332        self.message.body.set_field(tag::BENCHMARK_SECURITY_ID_SOURCE, FIXString::from(v));
333    }
334
335    /// Gets `BenchmarkSecurityIDSource`, Tag 761.
336    pub fn get_benchmark_security_id_source(&self) -> Result<String, MessageRejectErrorEnum> {
337        let mut fld = field::BenchmarkSecurityIDSourceField::new(String::new());
338        self.message.body.get_field(tag::BENCHMARK_SECURITY_ID_SOURCE, &mut fld.0)?;
339        Ok(fld.value().to_string())
340    }
341
342
343    /// Returns true if `BenchmarkSecurityIDSource` is present, Tag 761.
344    pub fn has_benchmark_security_id_source(&self) -> bool {
345        self.message.body.has(tag::BENCHMARK_SECURITY_ID_SOURCE)
346    }
347
348
349
350
351    /// Sets `CFICode`, Tag 461.
352    pub fn set_cfi_code(&mut self, v: String) {
353        self.message.body.set_field(tag::CFI_CODE, FIXString::from(v));
354    }
355
356    /// Gets `CFICode`, Tag 461.
357    pub fn get_cfi_code(&self) -> Result<String, MessageRejectErrorEnum> {
358        let mut fld = field::CFICodeField::new(String::new());
359        self.message.body.get_field(tag::CFI_CODE, &mut fld.0)?;
360        Ok(fld.value().to_string())
361    }
362
363
364    /// Returns true if `CFICode` is present, Tag 461.
365    pub fn has_cfi_code(&self) -> bool {
366        self.message.body.has(tag::CFI_CODE)
367    }
368
369
370
371
372    /// Sets `CPProgram`, Tag 875.
373    pub fn set_cp_program(&mut self, v: isize) {
374        self.message.body.set_field(tag::CP_PROGRAM, fixer::fix_int::FIXInt::from(v));
375    }
376
377    /// Gets `CPProgram`, Tag 875.
378    pub fn get_cp_program(&self) -> Result<isize, MessageRejectErrorEnum> {
379        let mut fld = field::CPProgramField::new(0);
380        self.message.body.get_field(tag::CP_PROGRAM, &mut fld.0)?;
381        Ok(fld.value())
382    }
383
384
385    /// Returns true if `CPProgram` is present, Tag 875.
386    pub fn has_cp_program(&self) -> bool {
387        self.message.body.has(tag::CP_PROGRAM)
388    }
389
390
391
392
393    /// Sets `CPRegType`, Tag 876.
394    pub fn set_cp_reg_type(&mut self, v: String) {
395        self.message.body.set_field(tag::CP_REG_TYPE, FIXString::from(v));
396    }
397
398    /// Gets `CPRegType`, Tag 876.
399    pub fn get_cp_reg_type(&self) -> Result<String, MessageRejectErrorEnum> {
400        let mut fld = field::CPRegTypeField::new(String::new());
401        self.message.body.get_field(tag::CP_REG_TYPE, &mut fld.0)?;
402        Ok(fld.value().to_string())
403    }
404
405
406    /// Returns true if `CPRegType` is present, Tag 876.
407    pub fn has_cp_reg_type(&self) -> bool {
408        self.message.body.has(tag::CP_REG_TYPE)
409    }
410
411
412
413
414    /// Sets `CashOutstanding`, Tag 901.
415    pub fn set_cash_outstanding(&mut self, val: Decimal, scale: i32) {
416        self.message.body.set_field(tag::CASH_OUTSTANDING, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
417    }
418
419    /// Gets `CashOutstanding`, Tag 901.
420    pub fn get_cash_outstanding(&self) -> Result<Decimal, MessageRejectErrorEnum> {
421        let mut fld = field::CashOutstandingField::new(Decimal::ZERO, 0);
422        self.message.body.get_field(tag::CASH_OUTSTANDING, &mut fld.0)?;
423        Ok(fld.value())
424    }
425
426
427    /// Returns true if `CashOutstanding` is present, Tag 901.
428    pub fn has_cash_outstanding(&self) -> bool {
429        self.message.body.has(tag::CASH_OUTSTANDING)
430    }
431
432
433
434
435    /// Sets `ClOrdID`, Tag 11.
436    pub fn set_cl_ord_id(&mut self, v: String) {
437        self.message.body.set_field(tag::CL_ORD_ID, FIXString::from(v));
438    }
439
440    /// Gets `ClOrdID`, Tag 11.
441    pub fn get_cl_ord_id(&self) -> Result<String, MessageRejectErrorEnum> {
442        let mut fld = field::ClOrdIDField::new(String::new());
443        self.message.body.get_field(tag::CL_ORD_ID, &mut fld.0)?;
444        Ok(fld.value().to_string())
445    }
446
447
448    /// Returns true if `ClOrdID` is present, Tag 11.
449    pub fn has_cl_ord_id(&self) -> bool {
450        self.message.body.has(tag::CL_ORD_ID)
451    }
452
453
454
455
456    /// Sets `CollAsgnID`, Tag 902.
457    pub fn set_coll_asgn_id(&mut self, v: String) {
458        self.message.body.set_field(tag::COLL_ASGN_ID, FIXString::from(v));
459    }
460
461    /// Gets `CollAsgnID`, Tag 902.
462    pub fn get_coll_asgn_id(&self) -> Result<String, MessageRejectErrorEnum> {
463        let mut fld = field::CollAsgnIDField::new(String::new());
464        self.message.body.get_field(tag::COLL_ASGN_ID, &mut fld.0)?;
465        Ok(fld.value().to_string())
466    }
467
468
469    /// Returns true if `CollAsgnID` is present, Tag 902.
470    pub fn has_coll_asgn_id(&self) -> bool {
471        self.message.body.has(tag::COLL_ASGN_ID)
472    }
473
474
475
476
477    /// Sets `CollAsgnReason`, Tag 895.
478    pub fn set_coll_asgn_reason(&mut self, v: isize) {
479        self.message.body.set_field(tag::COLL_ASGN_REASON, fixer::fix_int::FIXInt::from(v));
480    }
481
482    /// Gets `CollAsgnReason`, Tag 895.
483    pub fn get_coll_asgn_reason(&self) -> Result<isize, MessageRejectErrorEnum> {
484        let mut fld = field::CollAsgnReasonField::new(0);
485        self.message.body.get_field(tag::COLL_ASGN_REASON, &mut fld.0)?;
486        Ok(fld.value())
487    }
488
489
490    /// Returns true if `CollAsgnReason` is present, Tag 895.
491    pub fn has_coll_asgn_reason(&self) -> bool {
492        self.message.body.has(tag::COLL_ASGN_REASON)
493    }
494
495
496
497
498    /// Sets `CollAsgnRejectReason`, Tag 906.
499    pub fn set_coll_asgn_reject_reason(&mut self, v: isize) {
500        self.message.body.set_field(tag::COLL_ASGN_REJECT_REASON, fixer::fix_int::FIXInt::from(v));
501    }
502
503    /// Gets `CollAsgnRejectReason`, Tag 906.
504    pub fn get_coll_asgn_reject_reason(&self) -> Result<isize, MessageRejectErrorEnum> {
505        let mut fld = field::CollAsgnRejectReasonField::new(0);
506        self.message.body.get_field(tag::COLL_ASGN_REJECT_REASON, &mut fld.0)?;
507        Ok(fld.value())
508    }
509
510
511    /// Returns true if `CollAsgnRejectReason` is present, Tag 906.
512    pub fn has_coll_asgn_reject_reason(&self) -> bool {
513        self.message.body.has(tag::COLL_ASGN_REJECT_REASON)
514    }
515
516
517
518
519    /// Sets `CollAsgnRespType`, Tag 905.
520    pub fn set_coll_asgn_resp_type(&mut self, v: isize) {
521        self.message.body.set_field(tag::COLL_ASGN_RESP_TYPE, fixer::fix_int::FIXInt::from(v));
522    }
523
524    /// Gets `CollAsgnRespType`, Tag 905.
525    pub fn get_coll_asgn_resp_type(&self) -> Result<isize, MessageRejectErrorEnum> {
526        let mut fld = field::CollAsgnRespTypeField::new(0);
527        self.message.body.get_field(tag::COLL_ASGN_RESP_TYPE, &mut fld.0)?;
528        Ok(fld.value())
529    }
530
531
532    /// Returns true if `CollAsgnRespType` is present, Tag 905.
533    pub fn has_coll_asgn_resp_type(&self) -> bool {
534        self.message.body.has(tag::COLL_ASGN_RESP_TYPE)
535    }
536
537
538
539
540    /// Sets `CollAsgnTransType`, Tag 903.
541    pub fn set_coll_asgn_trans_type(&mut self, v: isize) {
542        self.message.body.set_field(tag::COLL_ASGN_TRANS_TYPE, fixer::fix_int::FIXInt::from(v));
543    }
544
545    /// Gets `CollAsgnTransType`, Tag 903.
546    pub fn get_coll_asgn_trans_type(&self) -> Result<isize, MessageRejectErrorEnum> {
547        let mut fld = field::CollAsgnTransTypeField::new(0);
548        self.message.body.get_field(tag::COLL_ASGN_TRANS_TYPE, &mut fld.0)?;
549        Ok(fld.value())
550    }
551
552
553    /// Returns true if `CollAsgnTransType` is present, Tag 903.
554    pub fn has_coll_asgn_trans_type(&self) -> bool {
555        self.message.body.has(tag::COLL_ASGN_TRANS_TYPE)
556    }
557
558
559
560
561    /// Sets `CollReqID`, Tag 894.
562    pub fn set_coll_req_id(&mut self, v: String) {
563        self.message.body.set_field(tag::COLL_REQ_ID, FIXString::from(v));
564    }
565
566    /// Gets `CollReqID`, Tag 894.
567    pub fn get_coll_req_id(&self) -> Result<String, MessageRejectErrorEnum> {
568        let mut fld = field::CollReqIDField::new(String::new());
569        self.message.body.get_field(tag::COLL_REQ_ID, &mut fld.0)?;
570        Ok(fld.value().to_string())
571    }
572
573
574    /// Returns true if `CollReqID` is present, Tag 894.
575    pub fn has_coll_req_id(&self) -> bool {
576        self.message.body.has(tag::COLL_REQ_ID)
577    }
578
579
580
581
582    /// Sets `CollRespID`, Tag 904.
583    pub fn set_coll_resp_id(&mut self, v: String) {
584        self.message.body.set_field(tag::COLL_RESP_ID, FIXString::from(v));
585    }
586
587    /// Gets `CollRespID`, Tag 904.
588    pub fn get_coll_resp_id(&self) -> Result<String, MessageRejectErrorEnum> {
589        let mut fld = field::CollRespIDField::new(String::new());
590        self.message.body.get_field(tag::COLL_RESP_ID, &mut fld.0)?;
591        Ok(fld.value().to_string())
592    }
593
594
595    /// Returns true if `CollRespID` is present, Tag 904.
596    pub fn has_coll_resp_id(&self) -> bool {
597        self.message.body.has(tag::COLL_RESP_ID)
598    }
599
600
601
602
603    /// Sets `ContractMultiplier`, Tag 231.
604    pub fn set_contract_multiplier(&mut self, val: Decimal, scale: i32) {
605        self.message.body.set_field(tag::CONTRACT_MULTIPLIER, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
606    }
607
608    /// Gets `ContractMultiplier`, Tag 231.
609    pub fn get_contract_multiplier(&self) -> Result<Decimal, MessageRejectErrorEnum> {
610        let mut fld = field::ContractMultiplierField::new(Decimal::ZERO, 0);
611        self.message.body.get_field(tag::CONTRACT_MULTIPLIER, &mut fld.0)?;
612        Ok(fld.value())
613    }
614
615
616    /// Returns true if `ContractMultiplier` is present, Tag 231.
617    pub fn has_contract_multiplier(&self) -> bool {
618        self.message.body.has(tag::CONTRACT_MULTIPLIER)
619    }
620
621
622
623
624    /// Sets `ContractSettlMonth`, Tag 667.
625    pub fn set_contract_settl_month(&mut self, v: String) {
626        self.message.body.set_field(tag::CONTRACT_SETTL_MONTH, FIXString::from(v));
627    }
628
629    /// Gets `ContractSettlMonth`, Tag 667.
630    pub fn get_contract_settl_month(&self) -> Result<String, MessageRejectErrorEnum> {
631        let mut fld = field::ContractSettlMonthField::new(String::new());
632        self.message.body.get_field(tag::CONTRACT_SETTL_MONTH, &mut fld.0)?;
633        Ok(fld.value().to_string())
634    }
635
636
637    /// Returns true if `ContractSettlMonth` is present, Tag 667.
638    pub fn has_contract_settl_month(&self) -> bool {
639        self.message.body.has(tag::CONTRACT_SETTL_MONTH)
640    }
641
642
643
644
645    /// Sets `CountryOfIssue`, Tag 470.
646    pub fn set_country_of_issue(&mut self, v: String) {
647        self.message.body.set_field(tag::COUNTRY_OF_ISSUE, FIXString::from(v));
648    }
649
650    /// Gets `CountryOfIssue`, Tag 470.
651    pub fn get_country_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
652        let mut fld = field::CountryOfIssueField::new(String::new());
653        self.message.body.get_field(tag::COUNTRY_OF_ISSUE, &mut fld.0)?;
654        Ok(fld.value().to_string())
655    }
656
657
658    /// Returns true if `CountryOfIssue` is present, Tag 470.
659    pub fn has_country_of_issue(&self) -> bool {
660        self.message.body.has(tag::COUNTRY_OF_ISSUE)
661    }
662
663
664
665
666    /// Sets `CouponPaymentDate`, Tag 224.
667    pub fn set_coupon_payment_date(&mut self, v: String) {
668        self.message.body.set_field(tag::COUPON_PAYMENT_DATE, FIXString::from(v));
669    }
670
671    /// Gets `CouponPaymentDate`, Tag 224.
672    pub fn get_coupon_payment_date(&self) -> Result<String, MessageRejectErrorEnum> {
673        let mut fld = field::CouponPaymentDateField::new(String::new());
674        self.message.body.get_field(tag::COUPON_PAYMENT_DATE, &mut fld.0)?;
675        Ok(fld.value().to_string())
676    }
677
678
679    /// Returns true if `CouponPaymentDate` is present, Tag 224.
680    pub fn has_coupon_payment_date(&self) -> bool {
681        self.message.body.has(tag::COUPON_PAYMENT_DATE)
682    }
683
684
685
686
687    /// Sets `CouponRate`, Tag 223.
688    pub fn set_coupon_rate(&mut self, val: Decimal, scale: i32) {
689        self.message.body.set_field(tag::COUPON_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
690    }
691
692    /// Gets `CouponRate`, Tag 223.
693    pub fn get_coupon_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
694        let mut fld = field::CouponRateField::new(Decimal::ZERO, 0);
695        self.message.body.get_field(tag::COUPON_RATE, &mut fld.0)?;
696        Ok(fld.value())
697    }
698
699
700    /// Returns true if `CouponRate` is present, Tag 223.
701    pub fn has_coupon_rate(&self) -> bool {
702        self.message.body.has(tag::COUPON_RATE)
703    }
704
705
706
707
708    /// Sets `CreditRating`, Tag 255.
709    pub fn set_credit_rating(&mut self, v: String) {
710        self.message.body.set_field(tag::CREDIT_RATING, FIXString::from(v));
711    }
712
713    /// Gets `CreditRating`, Tag 255.
714    pub fn get_credit_rating(&self) -> Result<String, MessageRejectErrorEnum> {
715        let mut fld = field::CreditRatingField::new(String::new());
716        self.message.body.get_field(tag::CREDIT_RATING, &mut fld.0)?;
717        Ok(fld.value().to_string())
718    }
719
720
721    /// Returns true if `CreditRating` is present, Tag 255.
722    pub fn has_credit_rating(&self) -> bool {
723        self.message.body.has(tag::CREDIT_RATING)
724    }
725
726
727
728
729    /// Sets `Currency`, Tag 15.
730    pub fn set_currency(&mut self, v: String) {
731        self.message.body.set_field(tag::CURRENCY, FIXString::from(v));
732    }
733
734    /// Gets `Currency`, Tag 15.
735    pub fn get_currency(&self) -> Result<String, MessageRejectErrorEnum> {
736        let mut fld = field::CurrencyField::new(String::new());
737        self.message.body.get_field(tag::CURRENCY, &mut fld.0)?;
738        Ok(fld.value().to_string())
739    }
740
741
742    /// Returns true if `Currency` is present, Tag 15.
743    pub fn has_currency(&self) -> bool {
744        self.message.body.has(tag::CURRENCY)
745    }
746
747
748
749
750    /// Sets `DatedDate`, Tag 873.
751    pub fn set_dated_date(&mut self, v: String) {
752        self.message.body.set_field(tag::DATED_DATE, FIXString::from(v));
753    }
754
755    /// Gets `DatedDate`, Tag 873.
756    pub fn get_dated_date(&self) -> Result<String, MessageRejectErrorEnum> {
757        let mut fld = field::DatedDateField::new(String::new());
758        self.message.body.get_field(tag::DATED_DATE, &mut fld.0)?;
759        Ok(fld.value().to_string())
760    }
761
762
763    /// Returns true if `DatedDate` is present, Tag 873.
764    pub fn has_dated_date(&self) -> bool {
765        self.message.body.has(tag::DATED_DATE)
766    }
767
768
769
770
771    /// Sets `DeliveryType`, Tag 919.
772    pub fn set_delivery_type(&mut self, v: isize) {
773        self.message.body.set_field(tag::DELIVERY_TYPE, fixer::fix_int::FIXInt::from(v));
774    }
775
776    /// Gets `DeliveryType`, Tag 919.
777    pub fn get_delivery_type(&self) -> Result<isize, MessageRejectErrorEnum> {
778        let mut fld = field::DeliveryTypeField::new(0);
779        self.message.body.get_field(tag::DELIVERY_TYPE, &mut fld.0)?;
780        Ok(fld.value())
781    }
782
783
784    /// Returns true if `DeliveryType` is present, Tag 919.
785    pub fn has_delivery_type(&self) -> bool {
786        self.message.body.has(tag::DELIVERY_TYPE)
787    }
788
789
790
791
792    /// Sets `EncodedIssuer`, Tag 349.
793    pub fn set_encoded_issuer(&mut self, v: String) {
794        self.message.body.set_field(tag::ENCODED_ISSUER, FIXString::from(v));
795    }
796
797    /// Gets `EncodedIssuer`, Tag 349.
798    pub fn get_encoded_issuer(&self) -> Result<String, MessageRejectErrorEnum> {
799        let mut fld = field::EncodedIssuerField::new(String::new());
800        self.message.body.get_field(tag::ENCODED_ISSUER, &mut fld.0)?;
801        Ok(fld.value().to_string())
802    }
803
804
805    /// Returns true if `EncodedIssuer` is present, Tag 349.
806    pub fn has_encoded_issuer(&self) -> bool {
807        self.message.body.has(tag::ENCODED_ISSUER)
808    }
809
810
811
812
813    /// Sets `EncodedIssuerLen`, Tag 348.
814    pub fn set_encoded_issuer_len(&mut self, v: isize) {
815        self.message.body.set_field(tag::ENCODED_ISSUER_LEN, fixer::fix_int::FIXInt::from(v));
816    }
817
818    /// Gets `EncodedIssuerLen`, Tag 348.
819    pub fn get_encoded_issuer_len(&self) -> Result<isize, MessageRejectErrorEnum> {
820        let mut fld = field::EncodedIssuerLenField::new(0);
821        self.message.body.get_field(tag::ENCODED_ISSUER_LEN, &mut fld.0)?;
822        Ok(fld.value())
823    }
824
825
826    /// Returns true if `EncodedIssuerLen` is present, Tag 348.
827    pub fn has_encoded_issuer_len(&self) -> bool {
828        self.message.body.has(tag::ENCODED_ISSUER_LEN)
829    }
830
831
832
833
834    /// Sets `EncodedSecurityDesc`, Tag 351.
835    pub fn set_encoded_security_desc(&mut self, v: String) {
836        self.message.body.set_field(tag::ENCODED_SECURITY_DESC, FIXString::from(v));
837    }
838
839    /// Gets `EncodedSecurityDesc`, Tag 351.
840    pub fn get_encoded_security_desc(&self) -> Result<String, MessageRejectErrorEnum> {
841        let mut fld = field::EncodedSecurityDescField::new(String::new());
842        self.message.body.get_field(tag::ENCODED_SECURITY_DESC, &mut fld.0)?;
843        Ok(fld.value().to_string())
844    }
845
846
847    /// Returns true if `EncodedSecurityDesc` is present, Tag 351.
848    pub fn has_encoded_security_desc(&self) -> bool {
849        self.message.body.has(tag::ENCODED_SECURITY_DESC)
850    }
851
852
853
854
855    /// Sets `EncodedSecurityDescLen`, Tag 350.
856    pub fn set_encoded_security_desc_len(&mut self, v: isize) {
857        self.message.body.set_field(tag::ENCODED_SECURITY_DESC_LEN, fixer::fix_int::FIXInt::from(v));
858    }
859
860    /// Gets `EncodedSecurityDescLen`, Tag 350.
861    pub fn get_encoded_security_desc_len(&self) -> Result<isize, MessageRejectErrorEnum> {
862        let mut fld = field::EncodedSecurityDescLenField::new(0);
863        self.message.body.get_field(tag::ENCODED_SECURITY_DESC_LEN, &mut fld.0)?;
864        Ok(fld.value())
865    }
866
867
868    /// Returns true if `EncodedSecurityDescLen` is present, Tag 350.
869    pub fn has_encoded_security_desc_len(&self) -> bool {
870        self.message.body.has(tag::ENCODED_SECURITY_DESC_LEN)
871    }
872
873
874
875
876    /// Sets `EncodedText`, Tag 355.
877    pub fn set_encoded_text(&mut self, v: String) {
878        self.message.body.set_field(tag::ENCODED_TEXT, FIXString::from(v));
879    }
880
881    /// Gets `EncodedText`, Tag 355.
882    pub fn get_encoded_text(&self) -> Result<String, MessageRejectErrorEnum> {
883        let mut fld = field::EncodedTextField::new(String::new());
884        self.message.body.get_field(tag::ENCODED_TEXT, &mut fld.0)?;
885        Ok(fld.value().to_string())
886    }
887
888
889    /// Returns true if `EncodedText` is present, Tag 355.
890    pub fn has_encoded_text(&self) -> bool {
891        self.message.body.has(tag::ENCODED_TEXT)
892    }
893
894
895
896
897    /// Sets `EncodedTextLen`, Tag 354.
898    pub fn set_encoded_text_len(&mut self, v: isize) {
899        self.message.body.set_field(tag::ENCODED_TEXT_LEN, fixer::fix_int::FIXInt::from(v));
900    }
901
902    /// Gets `EncodedTextLen`, Tag 354.
903    pub fn get_encoded_text_len(&self) -> Result<isize, MessageRejectErrorEnum> {
904        let mut fld = field::EncodedTextLenField::new(0);
905        self.message.body.get_field(tag::ENCODED_TEXT_LEN, &mut fld.0)?;
906        Ok(fld.value())
907    }
908
909
910    /// Returns true if `EncodedTextLen` is present, Tag 354.
911    pub fn has_encoded_text_len(&self) -> bool {
912        self.message.body.has(tag::ENCODED_TEXT_LEN)
913    }
914
915
916
917
918    /// Sets `EndAccruedInterestAmt`, Tag 920.
919    pub fn set_end_accrued_interest_amt(&mut self, val: Decimal, scale: i32) {
920        self.message.body.set_field(tag::END_ACCRUED_INTEREST_AMT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
921    }
922
923    /// Gets `EndAccruedInterestAmt`, Tag 920.
924    pub fn get_end_accrued_interest_amt(&self) -> Result<Decimal, MessageRejectErrorEnum> {
925        let mut fld = field::EndAccruedInterestAmtField::new(Decimal::ZERO, 0);
926        self.message.body.get_field(tag::END_ACCRUED_INTEREST_AMT, &mut fld.0)?;
927        Ok(fld.value())
928    }
929
930
931    /// Returns true if `EndAccruedInterestAmt` is present, Tag 920.
932    pub fn has_end_accrued_interest_amt(&self) -> bool {
933        self.message.body.has(tag::END_ACCRUED_INTEREST_AMT)
934    }
935
936
937
938
939    /// Sets `EndCash`, Tag 922.
940    pub fn set_end_cash(&mut self, val: Decimal, scale: i32) {
941        self.message.body.set_field(tag::END_CASH, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
942    }
943
944    /// Gets `EndCash`, Tag 922.
945    pub fn get_end_cash(&self) -> Result<Decimal, MessageRejectErrorEnum> {
946        let mut fld = field::EndCashField::new(Decimal::ZERO, 0);
947        self.message.body.get_field(tag::END_CASH, &mut fld.0)?;
948        Ok(fld.value())
949    }
950
951
952    /// Returns true if `EndCash` is present, Tag 922.
953    pub fn has_end_cash(&self) -> bool {
954        self.message.body.has(tag::END_CASH)
955    }
956
957
958
959
960    /// Sets `EndDate`, Tag 917.
961    pub fn set_end_date(&mut self, v: String) {
962        self.message.body.set_field(tag::END_DATE, FIXString::from(v));
963    }
964
965    /// Gets `EndDate`, Tag 917.
966    pub fn get_end_date(&self) -> Result<String, MessageRejectErrorEnum> {
967        let mut fld = field::EndDateField::new(String::new());
968        self.message.body.get_field(tag::END_DATE, &mut fld.0)?;
969        Ok(fld.value().to_string())
970    }
971
972
973    /// Returns true if `EndDate` is present, Tag 917.
974    pub fn has_end_date(&self) -> bool {
975        self.message.body.has(tag::END_DATE)
976    }
977
978
979
980
981    /// Sets `Factor`, Tag 228.
982    pub fn set_factor(&mut self, val: Decimal, scale: i32) {
983        self.message.body.set_field(tag::FACTOR, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
984    }
985
986    /// Gets `Factor`, Tag 228.
987    pub fn get_factor(&self) -> Result<Decimal, MessageRejectErrorEnum> {
988        let mut fld = field::FactorField::new(Decimal::ZERO, 0);
989        self.message.body.get_field(tag::FACTOR, &mut fld.0)?;
990        Ok(fld.value())
991    }
992
993
994    /// Returns true if `Factor` is present, Tag 228.
995    pub fn has_factor(&self) -> bool {
996        self.message.body.has(tag::FACTOR)
997    }
998
999
1000
1001
1002    /// Sets `InstrRegistry`, Tag 543.
1003    pub fn set_instr_registry(&mut self, v: String) {
1004        self.message.body.set_field(tag::INSTR_REGISTRY, FIXString::from(v));
1005    }
1006
1007    /// Gets `InstrRegistry`, Tag 543.
1008    pub fn get_instr_registry(&self) -> Result<String, MessageRejectErrorEnum> {
1009        let mut fld = field::InstrRegistryField::new(String::new());
1010        self.message.body.get_field(tag::INSTR_REGISTRY, &mut fld.0)?;
1011        Ok(fld.value().to_string())
1012    }
1013
1014
1015    /// Returns true if `InstrRegistry` is present, Tag 543.
1016    pub fn has_instr_registry(&self) -> bool {
1017        self.message.body.has(tag::INSTR_REGISTRY)
1018    }
1019
1020
1021
1022
1023    /// Sets `InterestAccrualDate`, Tag 874.
1024    pub fn set_interest_accrual_date(&mut self, v: String) {
1025        self.message.body.set_field(tag::INTEREST_ACCRUAL_DATE, FIXString::from(v));
1026    }
1027
1028    /// Gets `InterestAccrualDate`, Tag 874.
1029    pub fn get_interest_accrual_date(&self) -> Result<String, MessageRejectErrorEnum> {
1030        let mut fld = field::InterestAccrualDateField::new(String::new());
1031        self.message.body.get_field(tag::INTEREST_ACCRUAL_DATE, &mut fld.0)?;
1032        Ok(fld.value().to_string())
1033    }
1034
1035
1036    /// Returns true if `InterestAccrualDate` is present, Tag 874.
1037    pub fn has_interest_accrual_date(&self) -> bool {
1038        self.message.body.has(tag::INTEREST_ACCRUAL_DATE)
1039    }
1040
1041
1042
1043
1044    /// Sets `IssueDate`, Tag 225.
1045    pub fn set_issue_date(&mut self, v: String) {
1046        self.message.body.set_field(tag::ISSUE_DATE, FIXString::from(v));
1047    }
1048
1049    /// Gets `IssueDate`, Tag 225.
1050    pub fn get_issue_date(&self) -> Result<String, MessageRejectErrorEnum> {
1051        let mut fld = field::IssueDateField::new(String::new());
1052        self.message.body.get_field(tag::ISSUE_DATE, &mut fld.0)?;
1053        Ok(fld.value().to_string())
1054    }
1055
1056
1057    /// Returns true if `IssueDate` is present, Tag 225.
1058    pub fn has_issue_date(&self) -> bool {
1059        self.message.body.has(tag::ISSUE_DATE)
1060    }
1061
1062
1063
1064
1065    /// Sets `Issuer`, Tag 106.
1066    pub fn set_issuer(&mut self, v: String) {
1067        self.message.body.set_field(tag::ISSUER, FIXString::from(v));
1068    }
1069
1070    /// Gets `Issuer`, Tag 106.
1071    pub fn get_issuer(&self) -> Result<String, MessageRejectErrorEnum> {
1072        let mut fld = field::IssuerField::new(String::new());
1073        self.message.body.get_field(tag::ISSUER, &mut fld.0)?;
1074        Ok(fld.value().to_string())
1075    }
1076
1077
1078    /// Returns true if `Issuer` is present, Tag 106.
1079    pub fn has_issuer(&self) -> bool {
1080        self.message.body.has(tag::ISSUER)
1081    }
1082
1083
1084
1085
1086    /// Sets `LocaleOfIssue`, Tag 472.
1087    pub fn set_locale_of_issue(&mut self, v: String) {
1088        self.message.body.set_field(tag::LOCALE_OF_ISSUE, FIXString::from(v));
1089    }
1090
1091    /// Gets `LocaleOfIssue`, Tag 472.
1092    pub fn get_locale_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
1093        let mut fld = field::LocaleOfIssueField::new(String::new());
1094        self.message.body.get_field(tag::LOCALE_OF_ISSUE, &mut fld.0)?;
1095        Ok(fld.value().to_string())
1096    }
1097
1098
1099    /// Returns true if `LocaleOfIssue` is present, Tag 472.
1100    pub fn has_locale_of_issue(&self) -> bool {
1101        self.message.body.has(tag::LOCALE_OF_ISSUE)
1102    }
1103
1104
1105
1106
1107    /// Sets `MarginExcess`, Tag 899.
1108    pub fn set_margin_excess(&mut self, val: Decimal, scale: i32) {
1109        self.message.body.set_field(tag::MARGIN_EXCESS, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1110    }
1111
1112    /// Gets `MarginExcess`, Tag 899.
1113    pub fn get_margin_excess(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1114        let mut fld = field::MarginExcessField::new(Decimal::ZERO, 0);
1115        self.message.body.get_field(tag::MARGIN_EXCESS, &mut fld.0)?;
1116        Ok(fld.value())
1117    }
1118
1119
1120    /// Returns true if `MarginExcess` is present, Tag 899.
1121    pub fn has_margin_excess(&self) -> bool {
1122        self.message.body.has(tag::MARGIN_EXCESS)
1123    }
1124
1125
1126
1127
1128    /// Sets `MarginRatio`, Tag 898.
1129    pub fn set_margin_ratio(&mut self, val: Decimal, scale: i32) {
1130        self.message.body.set_field(tag::MARGIN_RATIO, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1131    }
1132
1133    /// Gets `MarginRatio`, Tag 898.
1134    pub fn get_margin_ratio(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1135        let mut fld = field::MarginRatioField::new(Decimal::ZERO, 0);
1136        self.message.body.get_field(tag::MARGIN_RATIO, &mut fld.0)?;
1137        Ok(fld.value())
1138    }
1139
1140
1141    /// Returns true if `MarginRatio` is present, Tag 898.
1142    pub fn has_margin_ratio(&self) -> bool {
1143        self.message.body.has(tag::MARGIN_RATIO)
1144    }
1145
1146
1147
1148
1149    /// Sets `MaturityDate`, Tag 541.
1150    pub fn set_maturity_date(&mut self, v: String) {
1151        self.message.body.set_field(tag::MATURITY_DATE, FIXString::from(v));
1152    }
1153
1154    /// Gets `MaturityDate`, Tag 541.
1155    pub fn get_maturity_date(&self) -> Result<String, MessageRejectErrorEnum> {
1156        let mut fld = field::MaturityDateField::new(String::new());
1157        self.message.body.get_field(tag::MATURITY_DATE, &mut fld.0)?;
1158        Ok(fld.value().to_string())
1159    }
1160
1161
1162    /// Returns true if `MaturityDate` is present, Tag 541.
1163    pub fn has_maturity_date(&self) -> bool {
1164        self.message.body.has(tag::MATURITY_DATE)
1165    }
1166
1167
1168
1169
1170    /// Sets `MaturityMonthYear`, Tag 200.
1171    pub fn set_maturity_month_year(&mut self, v: String) {
1172        self.message.body.set_field(tag::MATURITY_MONTH_YEAR, FIXString::from(v));
1173    }
1174
1175    /// Gets `MaturityMonthYear`, Tag 200.
1176    pub fn get_maturity_month_year(&self) -> Result<String, MessageRejectErrorEnum> {
1177        let mut fld = field::MaturityMonthYearField::new(String::new());
1178        self.message.body.get_field(tag::MATURITY_MONTH_YEAR, &mut fld.0)?;
1179        Ok(fld.value().to_string())
1180    }
1181
1182
1183    /// Returns true if `MaturityMonthYear` is present, Tag 200.
1184    pub fn has_maturity_month_year(&self) -> bool {
1185        self.message.body.has(tag::MATURITY_MONTH_YEAR)
1186    }
1187
1188
1189
1190
1191    /// Sets `NoEvents`, Tag 864.
1192    pub fn set_no_events(&mut self, v: isize) {
1193        self.message.body.set_field(tag::NO_EVENTS, fixer::fix_int::FIXInt::from(v));
1194    }
1195
1196    /// Gets `NoEvents`, Tag 864.
1197    pub fn get_no_events(&self) -> Result<isize, MessageRejectErrorEnum> {
1198        let mut fld = field::NoEventsField::new(0);
1199        self.message.body.get_field(tag::NO_EVENTS, &mut fld.0)?;
1200        Ok(fld.value())
1201    }
1202
1203
1204    /// Returns true if `NoEvents` is present, Tag 864.
1205    pub fn has_no_events(&self) -> bool {
1206        self.message.body.has(tag::NO_EVENTS)
1207    }
1208
1209
1210
1211
1212    /// Sets `NoExecs`, Tag 124.
1213    pub fn set_no_execs(&mut self, v: isize) {
1214        self.message.body.set_field(tag::NO_EXECS, fixer::fix_int::FIXInt::from(v));
1215    }
1216
1217    /// Gets `NoExecs`, Tag 124.
1218    pub fn get_no_execs(&self) -> Result<isize, MessageRejectErrorEnum> {
1219        let mut fld = field::NoExecsField::new(0);
1220        self.message.body.get_field(tag::NO_EXECS, &mut fld.0)?;
1221        Ok(fld.value())
1222    }
1223
1224
1225    /// Returns true if `NoExecs` is present, Tag 124.
1226    pub fn has_no_execs(&self) -> bool {
1227        self.message.body.has(tag::NO_EXECS)
1228    }
1229
1230
1231
1232
1233    /// Sets `NoLegs`, Tag 555.
1234    pub fn set_no_legs(&mut self, v: isize) {
1235        self.message.body.set_field(tag::NO_LEGS, fixer::fix_int::FIXInt::from(v));
1236    }
1237
1238    /// Gets `NoLegs`, Tag 555.
1239    pub fn get_no_legs(&self) -> Result<isize, MessageRejectErrorEnum> {
1240        let mut fld = field::NoLegsField::new(0);
1241        self.message.body.get_field(tag::NO_LEGS, &mut fld.0)?;
1242        Ok(fld.value())
1243    }
1244
1245
1246    /// Returns true if `NoLegs` is present, Tag 555.
1247    pub fn has_no_legs(&self) -> bool {
1248        self.message.body.has(tag::NO_LEGS)
1249    }
1250
1251
1252
1253
1254    /// Sets `NoMiscFees`, Tag 136.
1255    pub fn set_no_misc_fees(&mut self, v: isize) {
1256        self.message.body.set_field(tag::NO_MISC_FEES, fixer::fix_int::FIXInt::from(v));
1257    }
1258
1259    /// Gets `NoMiscFees`, Tag 136.
1260    pub fn get_no_misc_fees(&self) -> Result<isize, MessageRejectErrorEnum> {
1261        let mut fld = field::NoMiscFeesField::new(0);
1262        self.message.body.get_field(tag::NO_MISC_FEES, &mut fld.0)?;
1263        Ok(fld.value())
1264    }
1265
1266
1267    /// Returns true if `NoMiscFees` is present, Tag 136.
1268    pub fn has_no_misc_fees(&self) -> bool {
1269        self.message.body.has(tag::NO_MISC_FEES)
1270    }
1271
1272
1273
1274
1275    /// Sets `NoPartyIDs`, Tag 453.
1276    pub fn set_no_party_i_ds(&mut self, v: isize) {
1277        self.message.body.set_field(tag::NO_PARTY_I_DS, fixer::fix_int::FIXInt::from(v));
1278    }
1279
1280    /// Gets `NoPartyIDs`, Tag 453.
1281    pub fn get_no_party_i_ds(&self) -> Result<isize, MessageRejectErrorEnum> {
1282        let mut fld = field::NoPartyIDsField::new(0);
1283        self.message.body.get_field(tag::NO_PARTY_I_DS, &mut fld.0)?;
1284        Ok(fld.value())
1285    }
1286
1287
1288    /// Returns true if `NoPartyIDs` is present, Tag 453.
1289    pub fn has_no_party_i_ds(&self) -> bool {
1290        self.message.body.has(tag::NO_PARTY_I_DS)
1291    }
1292
1293
1294
1295
1296    /// Sets `NoSecurityAltID`, Tag 454.
1297    pub fn set_no_security_alt_id(&mut self, v: isize) {
1298        self.message.body.set_field(tag::NO_SECURITY_ALT_ID, fixer::fix_int::FIXInt::from(v));
1299    }
1300
1301    /// Gets `NoSecurityAltID`, Tag 454.
1302    pub fn get_no_security_alt_id(&self) -> Result<isize, MessageRejectErrorEnum> {
1303        let mut fld = field::NoSecurityAltIDField::new(0);
1304        self.message.body.get_field(tag::NO_SECURITY_ALT_ID, &mut fld.0)?;
1305        Ok(fld.value())
1306    }
1307
1308
1309    /// Returns true if `NoSecurityAltID` is present, Tag 454.
1310    pub fn has_no_security_alt_id(&self) -> bool {
1311        self.message.body.has(tag::NO_SECURITY_ALT_ID)
1312    }
1313
1314
1315
1316
1317    /// Sets `NoStipulations`, Tag 232.
1318    pub fn set_no_stipulations(&mut self, v: isize) {
1319        self.message.body.set_field(tag::NO_STIPULATIONS, fixer::fix_int::FIXInt::from(v));
1320    }
1321
1322    /// Gets `NoStipulations`, Tag 232.
1323    pub fn get_no_stipulations(&self) -> Result<isize, MessageRejectErrorEnum> {
1324        let mut fld = field::NoStipulationsField::new(0);
1325        self.message.body.get_field(tag::NO_STIPULATIONS, &mut fld.0)?;
1326        Ok(fld.value())
1327    }
1328
1329
1330    /// Returns true if `NoStipulations` is present, Tag 232.
1331    pub fn has_no_stipulations(&self) -> bool {
1332        self.message.body.has(tag::NO_STIPULATIONS)
1333    }
1334
1335
1336
1337
1338    /// Sets `NoTrades`, Tag 897.
1339    pub fn set_no_trades(&mut self, v: isize) {
1340        self.message.body.set_field(tag::NO_TRADES, fixer::fix_int::FIXInt::from(v));
1341    }
1342
1343    /// Gets `NoTrades`, Tag 897.
1344    pub fn get_no_trades(&self) -> Result<isize, MessageRejectErrorEnum> {
1345        let mut fld = field::NoTradesField::new(0);
1346        self.message.body.get_field(tag::NO_TRADES, &mut fld.0)?;
1347        Ok(fld.value())
1348    }
1349
1350
1351    /// Returns true if `NoTrades` is present, Tag 897.
1352    pub fn has_no_trades(&self) -> bool {
1353        self.message.body.has(tag::NO_TRADES)
1354    }
1355
1356
1357
1358
1359    /// Sets `NoTrdRegTimestamps`, Tag 768.
1360    pub fn set_no_trd_reg_timestamps(&mut self, v: isize) {
1361        self.message.body.set_field(tag::NO_TRD_REG_TIMESTAMPS, fixer::fix_int::FIXInt::from(v));
1362    }
1363
1364    /// Gets `NoTrdRegTimestamps`, Tag 768.
1365    pub fn get_no_trd_reg_timestamps(&self) -> Result<isize, MessageRejectErrorEnum> {
1366        let mut fld = field::NoTrdRegTimestampsField::new(0);
1367        self.message.body.get_field(tag::NO_TRD_REG_TIMESTAMPS, &mut fld.0)?;
1368        Ok(fld.value())
1369    }
1370
1371
1372    /// Returns true if `NoTrdRegTimestamps` is present, Tag 768.
1373    pub fn has_no_trd_reg_timestamps(&self) -> bool {
1374        self.message.body.has(tag::NO_TRD_REG_TIMESTAMPS)
1375    }
1376
1377
1378
1379
1380    /// Sets `NoUnderlyings`, Tag 711.
1381    pub fn set_no_underlyings(&mut self, v: isize) {
1382        self.message.body.set_field(tag::NO_UNDERLYINGS, fixer::fix_int::FIXInt::from(v));
1383    }
1384
1385    /// Gets `NoUnderlyings`, Tag 711.
1386    pub fn get_no_underlyings(&self) -> Result<isize, MessageRejectErrorEnum> {
1387        let mut fld = field::NoUnderlyingsField::new(0);
1388        self.message.body.get_field(tag::NO_UNDERLYINGS, &mut fld.0)?;
1389        Ok(fld.value())
1390    }
1391
1392
1393    /// Returns true if `NoUnderlyings` is present, Tag 711.
1394    pub fn has_no_underlyings(&self) -> bool {
1395        self.message.body.has(tag::NO_UNDERLYINGS)
1396    }
1397
1398
1399
1400
1401    /// Sets `OptAttribute`, Tag 206.
1402    pub fn set_opt_attribute(&mut self, v: String) {
1403        self.message.body.set_field(tag::OPT_ATTRIBUTE, FIXString::from(v));
1404    }
1405
1406    /// Gets `OptAttribute`, Tag 206.
1407    pub fn get_opt_attribute(&self) -> Result<String, MessageRejectErrorEnum> {
1408        let mut fld = field::OptAttributeField::new(String::new());
1409        self.message.body.get_field(tag::OPT_ATTRIBUTE, &mut fld.0)?;
1410        Ok(fld.value().to_string())
1411    }
1412
1413
1414    /// Returns true if `OptAttribute` is present, Tag 206.
1415    pub fn has_opt_attribute(&self) -> bool {
1416        self.message.body.has(tag::OPT_ATTRIBUTE)
1417    }
1418
1419
1420
1421
1422    /// Sets `OrderID`, Tag 37.
1423    pub fn set_order_id(&mut self, v: String) {
1424        self.message.body.set_field(tag::ORDER_ID, FIXString::from(v));
1425    }
1426
1427    /// Gets `OrderID`, Tag 37.
1428    pub fn get_order_id(&self) -> Result<String, MessageRejectErrorEnum> {
1429        let mut fld = field::OrderIDField::new(String::new());
1430        self.message.body.get_field(tag::ORDER_ID, &mut fld.0)?;
1431        Ok(fld.value().to_string())
1432    }
1433
1434
1435    /// Returns true if `OrderID` is present, Tag 37.
1436    pub fn has_order_id(&self) -> bool {
1437        self.message.body.has(tag::ORDER_ID)
1438    }
1439
1440
1441
1442
1443    /// Sets `Pool`, Tag 691.
1444    pub fn set_pool(&mut self, v: String) {
1445        self.message.body.set_field(tag::POOL, FIXString::from(v));
1446    }
1447
1448    /// Gets `Pool`, Tag 691.
1449    pub fn get_pool(&self) -> Result<String, MessageRejectErrorEnum> {
1450        let mut fld = field::PoolField::new(String::new());
1451        self.message.body.get_field(tag::POOL, &mut fld.0)?;
1452        Ok(fld.value().to_string())
1453    }
1454
1455
1456    /// Returns true if `Pool` is present, Tag 691.
1457    pub fn has_pool(&self) -> bool {
1458        self.message.body.has(tag::POOL)
1459    }
1460
1461
1462
1463
1464    /// Sets `Price`, Tag 44.
1465    pub fn set_price(&mut self, val: Decimal, scale: i32) {
1466        self.message.body.set_field(tag::PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1467    }
1468
1469    /// Gets `Price`, Tag 44.
1470    pub fn get_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1471        let mut fld = field::PriceField::new(Decimal::ZERO, 0);
1472        self.message.body.get_field(tag::PRICE, &mut fld.0)?;
1473        Ok(fld.value())
1474    }
1475
1476
1477    /// Returns true if `Price` is present, Tag 44.
1478    pub fn has_price(&self) -> bool {
1479        self.message.body.has(tag::PRICE)
1480    }
1481
1482
1483
1484
1485    /// Sets `PriceType`, Tag 423.
1486    pub fn set_price_type(&mut self, v: isize) {
1487        self.message.body.set_field(tag::PRICE_TYPE, fixer::fix_int::FIXInt::from(v));
1488    }
1489
1490    /// Gets `PriceType`, Tag 423.
1491    pub fn get_price_type(&self) -> Result<isize, MessageRejectErrorEnum> {
1492        let mut fld = field::PriceTypeField::new(0);
1493        self.message.body.get_field(tag::PRICE_TYPE, &mut fld.0)?;
1494        Ok(fld.value())
1495    }
1496
1497
1498    /// Returns true if `PriceType` is present, Tag 423.
1499    pub fn has_price_type(&self) -> bool {
1500        self.message.body.has(tag::PRICE_TYPE)
1501    }
1502
1503
1504
1505
1506    /// Sets `Product`, Tag 460.
1507    pub fn set_product(&mut self, v: isize) {
1508        self.message.body.set_field(tag::PRODUCT, fixer::fix_int::FIXInt::from(v));
1509    }
1510
1511    /// Gets `Product`, Tag 460.
1512    pub fn get_product(&self) -> Result<isize, MessageRejectErrorEnum> {
1513        let mut fld = field::ProductField::new(0);
1514        self.message.body.get_field(tag::PRODUCT, &mut fld.0)?;
1515        Ok(fld.value())
1516    }
1517
1518
1519    /// Returns true if `Product` is present, Tag 460.
1520    pub fn has_product(&self) -> bool {
1521        self.message.body.has(tag::PRODUCT)
1522    }
1523
1524
1525
1526
1527    /// Sets `QtyType`, Tag 854.
1528    pub fn set_qty_type(&mut self, v: isize) {
1529        self.message.body.set_field(tag::QTY_TYPE, fixer::fix_int::FIXInt::from(v));
1530    }
1531
1532    /// Gets `QtyType`, Tag 854.
1533    pub fn get_qty_type(&self) -> Result<isize, MessageRejectErrorEnum> {
1534        let mut fld = field::QtyTypeField::new(0);
1535        self.message.body.get_field(tag::QTY_TYPE, &mut fld.0)?;
1536        Ok(fld.value())
1537    }
1538
1539
1540    /// Returns true if `QtyType` is present, Tag 854.
1541    pub fn has_qty_type(&self) -> bool {
1542        self.message.body.has(tag::QTY_TYPE)
1543    }
1544
1545
1546
1547
1548    /// Sets `Quantity`, Tag 53.
1549    pub fn set_quantity(&mut self, val: Decimal, scale: i32) {
1550        self.message.body.set_field(tag::QUANTITY, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1551    }
1552
1553    /// Gets `Quantity`, Tag 53.
1554    pub fn get_quantity(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1555        let mut fld = field::QuantityField::new(Decimal::ZERO, 0);
1556        self.message.body.get_field(tag::QUANTITY, &mut fld.0)?;
1557        Ok(fld.value())
1558    }
1559
1560
1561    /// Returns true if `Quantity` is present, Tag 53.
1562    pub fn has_quantity(&self) -> bool {
1563        self.message.body.has(tag::QUANTITY)
1564    }
1565
1566
1567
1568
1569    /// Sets `RedemptionDate`, Tag 240.
1570    pub fn set_redemption_date(&mut self, v: String) {
1571        self.message.body.set_field(tag::REDEMPTION_DATE, FIXString::from(v));
1572    }
1573
1574    /// Gets `RedemptionDate`, Tag 240.
1575    pub fn get_redemption_date(&self) -> Result<String, MessageRejectErrorEnum> {
1576        let mut fld = field::RedemptionDateField::new(String::new());
1577        self.message.body.get_field(tag::REDEMPTION_DATE, &mut fld.0)?;
1578        Ok(fld.value().to_string())
1579    }
1580
1581
1582    /// Returns true if `RedemptionDate` is present, Tag 240.
1583    pub fn has_redemption_date(&self) -> bool {
1584        self.message.body.has(tag::REDEMPTION_DATE)
1585    }
1586
1587
1588
1589
1590    /// Sets `RepoCollateralSecurityType`, Tag 239.
1591    pub fn set_repo_collateral_security_type(&mut self, v: isize) {
1592        self.message.body.set_field(tag::REPO_COLLATERAL_SECURITY_TYPE, fixer::fix_int::FIXInt::from(v));
1593    }
1594
1595    /// Gets `RepoCollateralSecurityType`, Tag 239.
1596    pub fn get_repo_collateral_security_type(&self) -> Result<isize, MessageRejectErrorEnum> {
1597        let mut fld = field::RepoCollateralSecurityTypeField::new(0);
1598        self.message.body.get_field(tag::REPO_COLLATERAL_SECURITY_TYPE, &mut fld.0)?;
1599        Ok(fld.value())
1600    }
1601
1602
1603    /// Returns true if `RepoCollateralSecurityType` is present, Tag 239.
1604    pub fn has_repo_collateral_security_type(&self) -> bool {
1605        self.message.body.has(tag::REPO_COLLATERAL_SECURITY_TYPE)
1606    }
1607
1608
1609
1610
1611    /// Sets `RepurchaseRate`, Tag 227.
1612    pub fn set_repurchase_rate(&mut self, val: Decimal, scale: i32) {
1613        self.message.body.set_field(tag::REPURCHASE_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1614    }
1615
1616    /// Gets `RepurchaseRate`, Tag 227.
1617    pub fn get_repurchase_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1618        let mut fld = field::RepurchaseRateField::new(Decimal::ZERO, 0);
1619        self.message.body.get_field(tag::REPURCHASE_RATE, &mut fld.0)?;
1620        Ok(fld.value())
1621    }
1622
1623
1624    /// Returns true if `RepurchaseRate` is present, Tag 227.
1625    pub fn has_repurchase_rate(&self) -> bool {
1626        self.message.body.has(tag::REPURCHASE_RATE)
1627    }
1628
1629
1630
1631
1632    /// Sets `RepurchaseTerm`, Tag 226.
1633    pub fn set_repurchase_term(&mut self, v: isize) {
1634        self.message.body.set_field(tag::REPURCHASE_TERM, fixer::fix_int::FIXInt::from(v));
1635    }
1636
1637    /// Gets `RepurchaseTerm`, Tag 226.
1638    pub fn get_repurchase_term(&self) -> Result<isize, MessageRejectErrorEnum> {
1639        let mut fld = field::RepurchaseTermField::new(0);
1640        self.message.body.get_field(tag::REPURCHASE_TERM, &mut fld.0)?;
1641        Ok(fld.value())
1642    }
1643
1644
1645    /// Returns true if `RepurchaseTerm` is present, Tag 226.
1646    pub fn has_repurchase_term(&self) -> bool {
1647        self.message.body.has(tag::REPURCHASE_TERM)
1648    }
1649
1650
1651
1652
1653    /// Sets `SecondaryClOrdID`, Tag 526.
1654    pub fn set_secondary_cl_ord_id(&mut self, v: String) {
1655        self.message.body.set_field(tag::SECONDARY_CL_ORD_ID, FIXString::from(v));
1656    }
1657
1658    /// Gets `SecondaryClOrdID`, Tag 526.
1659    pub fn get_secondary_cl_ord_id(&self) -> Result<String, MessageRejectErrorEnum> {
1660        let mut fld = field::SecondaryClOrdIDField::new(String::new());
1661        self.message.body.get_field(tag::SECONDARY_CL_ORD_ID, &mut fld.0)?;
1662        Ok(fld.value().to_string())
1663    }
1664
1665
1666    /// Returns true if `SecondaryClOrdID` is present, Tag 526.
1667    pub fn has_secondary_cl_ord_id(&self) -> bool {
1668        self.message.body.has(tag::SECONDARY_CL_ORD_ID)
1669    }
1670
1671
1672
1673
1674    /// Sets `SecondaryOrderID`, Tag 198.
1675    pub fn set_secondary_order_id(&mut self, v: String) {
1676        self.message.body.set_field(tag::SECONDARY_ORDER_ID, FIXString::from(v));
1677    }
1678
1679    /// Gets `SecondaryOrderID`, Tag 198.
1680    pub fn get_secondary_order_id(&self) -> Result<String, MessageRejectErrorEnum> {
1681        let mut fld = field::SecondaryOrderIDField::new(String::new());
1682        self.message.body.get_field(tag::SECONDARY_ORDER_ID, &mut fld.0)?;
1683        Ok(fld.value().to_string())
1684    }
1685
1686
1687    /// Returns true if `SecondaryOrderID` is present, Tag 198.
1688    pub fn has_secondary_order_id(&self) -> bool {
1689        self.message.body.has(tag::SECONDARY_ORDER_ID)
1690    }
1691
1692
1693
1694
1695    /// Sets `SecurityDesc`, Tag 107.
1696    pub fn set_security_desc(&mut self, v: String) {
1697        self.message.body.set_field(tag::SECURITY_DESC, FIXString::from(v));
1698    }
1699
1700    /// Gets `SecurityDesc`, Tag 107.
1701    pub fn get_security_desc(&self) -> Result<String, MessageRejectErrorEnum> {
1702        let mut fld = field::SecurityDescField::new(String::new());
1703        self.message.body.get_field(tag::SECURITY_DESC, &mut fld.0)?;
1704        Ok(fld.value().to_string())
1705    }
1706
1707
1708    /// Returns true if `SecurityDesc` is present, Tag 107.
1709    pub fn has_security_desc(&self) -> bool {
1710        self.message.body.has(tag::SECURITY_DESC)
1711    }
1712
1713
1714
1715
1716    /// Sets `SecurityExchange`, Tag 207.
1717    pub fn set_security_exchange(&mut self, v: String) {
1718        self.message.body.set_field(tag::SECURITY_EXCHANGE, FIXString::from(v));
1719    }
1720
1721    /// Gets `SecurityExchange`, Tag 207.
1722    pub fn get_security_exchange(&self) -> Result<String, MessageRejectErrorEnum> {
1723        let mut fld = field::SecurityExchangeField::new(String::new());
1724        self.message.body.get_field(tag::SECURITY_EXCHANGE, &mut fld.0)?;
1725        Ok(fld.value().to_string())
1726    }
1727
1728
1729    /// Returns true if `SecurityExchange` is present, Tag 207.
1730    pub fn has_security_exchange(&self) -> bool {
1731        self.message.body.has(tag::SECURITY_EXCHANGE)
1732    }
1733
1734
1735
1736
1737    /// Sets `SecurityID`, Tag 48.
1738    pub fn set_security_id(&mut self, v: String) {
1739        self.message.body.set_field(tag::SECURITY_ID, FIXString::from(v));
1740    }
1741
1742    /// Gets `SecurityID`, Tag 48.
1743    pub fn get_security_id(&self) -> Result<String, MessageRejectErrorEnum> {
1744        let mut fld = field::SecurityIDField::new(String::new());
1745        self.message.body.get_field(tag::SECURITY_ID, &mut fld.0)?;
1746        Ok(fld.value().to_string())
1747    }
1748
1749
1750    /// Returns true if `SecurityID` is present, Tag 48.
1751    pub fn has_security_id(&self) -> bool {
1752        self.message.body.has(tag::SECURITY_ID)
1753    }
1754
1755
1756
1757
1758    /// Sets `SecurityIDSource`, Tag 22.
1759    pub fn set_security_id_source(&mut self, v: String) {
1760        self.message.body.set_field(tag::SECURITY_ID_SOURCE, FIXString::from(v));
1761    }
1762
1763    /// Gets `SecurityIDSource`, Tag 22.
1764    pub fn get_security_id_source(&self) -> Result<String, MessageRejectErrorEnum> {
1765        let mut fld = field::SecurityIDSourceField::new(String::new());
1766        self.message.body.get_field(tag::SECURITY_ID_SOURCE, &mut fld.0)?;
1767        Ok(fld.value().to_string())
1768    }
1769
1770
1771    /// Returns true if `SecurityIDSource` is present, Tag 22.
1772    pub fn has_security_id_source(&self) -> bool {
1773        self.message.body.has(tag::SECURITY_ID_SOURCE)
1774    }
1775
1776
1777
1778
1779    /// Sets `SecuritySubType`, Tag 762.
1780    pub fn set_security_sub_type(&mut self, v: String) {
1781        self.message.body.set_field(tag::SECURITY_SUB_TYPE, FIXString::from(v));
1782    }
1783
1784    /// Gets `SecuritySubType`, Tag 762.
1785    pub fn get_security_sub_type(&self) -> Result<String, MessageRejectErrorEnum> {
1786        let mut fld = field::SecuritySubTypeField::new(String::new());
1787        self.message.body.get_field(tag::SECURITY_SUB_TYPE, &mut fld.0)?;
1788        Ok(fld.value().to_string())
1789    }
1790
1791
1792    /// Returns true if `SecuritySubType` is present, Tag 762.
1793    pub fn has_security_sub_type(&self) -> bool {
1794        self.message.body.has(tag::SECURITY_SUB_TYPE)
1795    }
1796
1797
1798
1799
1800    /// Sets `SecurityType`, Tag 167.
1801    pub fn set_security_type(&mut self, v: String) {
1802        self.message.body.set_field(tag::SECURITY_TYPE, FIXString::from(v));
1803    }
1804
1805    /// Gets `SecurityType`, Tag 167.
1806    pub fn get_security_type(&self) -> Result<String, MessageRejectErrorEnum> {
1807        let mut fld = field::SecurityTypeField::new(String::new());
1808        self.message.body.get_field(tag::SECURITY_TYPE, &mut fld.0)?;
1809        Ok(fld.value().to_string())
1810    }
1811
1812
1813    /// Returns true if `SecurityType` is present, Tag 167.
1814    pub fn has_security_type(&self) -> bool {
1815        self.message.body.has(tag::SECURITY_TYPE)
1816    }
1817
1818
1819
1820
1821    /// Sets `SettlDate`, Tag 64.
1822    pub fn set_settl_date(&mut self, v: String) {
1823        self.message.body.set_field(tag::SETTL_DATE, FIXString::from(v));
1824    }
1825
1826    /// Gets `SettlDate`, Tag 64.
1827    pub fn get_settl_date(&self) -> Result<String, MessageRejectErrorEnum> {
1828        let mut fld = field::SettlDateField::new(String::new());
1829        self.message.body.get_field(tag::SETTL_DATE, &mut fld.0)?;
1830        Ok(fld.value().to_string())
1831    }
1832
1833
1834    /// Returns true if `SettlDate` is present, Tag 64.
1835    pub fn has_settl_date(&self) -> bool {
1836        self.message.body.has(tag::SETTL_DATE)
1837    }
1838
1839
1840
1841
1842    /// Sets `Side`, Tag 54.
1843    pub fn set_side(&mut self, v: String) {
1844        self.message.body.set_field(tag::SIDE, FIXString::from(v));
1845    }
1846
1847    /// Gets `Side`, Tag 54.
1848    pub fn get_side(&self) -> Result<String, MessageRejectErrorEnum> {
1849        let mut fld = field::SideField::new(String::new());
1850        self.message.body.get_field(tag::SIDE, &mut fld.0)?;
1851        Ok(fld.value().to_string())
1852    }
1853
1854
1855    /// Returns true if `Side` is present, Tag 54.
1856    pub fn has_side(&self) -> bool {
1857        self.message.body.has(tag::SIDE)
1858    }
1859
1860
1861
1862
1863    /// Sets `Spread`, Tag 218.
1864    pub fn set_spread(&mut self, val: Decimal, scale: i32) {
1865        self.message.body.set_field(tag::SPREAD, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1866    }
1867
1868    /// Gets `Spread`, Tag 218.
1869    pub fn get_spread(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1870        let mut fld = field::SpreadField::new(Decimal::ZERO, 0);
1871        self.message.body.get_field(tag::SPREAD, &mut fld.0)?;
1872        Ok(fld.value())
1873    }
1874
1875
1876    /// Returns true if `Spread` is present, Tag 218.
1877    pub fn has_spread(&self) -> bool {
1878        self.message.body.has(tag::SPREAD)
1879    }
1880
1881
1882
1883
1884    /// Sets `StartCash`, Tag 921.
1885    pub fn set_start_cash(&mut self, val: Decimal, scale: i32) {
1886        self.message.body.set_field(tag::START_CASH, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1887    }
1888
1889    /// Gets `StartCash`, Tag 921.
1890    pub fn get_start_cash(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1891        let mut fld = field::StartCashField::new(Decimal::ZERO, 0);
1892        self.message.body.get_field(tag::START_CASH, &mut fld.0)?;
1893        Ok(fld.value())
1894    }
1895
1896
1897    /// Returns true if `StartCash` is present, Tag 921.
1898    pub fn has_start_cash(&self) -> bool {
1899        self.message.body.has(tag::START_CASH)
1900    }
1901
1902
1903
1904
1905    /// Sets `StartDate`, Tag 916.
1906    pub fn set_start_date(&mut self, v: String) {
1907        self.message.body.set_field(tag::START_DATE, FIXString::from(v));
1908    }
1909
1910    /// Gets `StartDate`, Tag 916.
1911    pub fn get_start_date(&self) -> Result<String, MessageRejectErrorEnum> {
1912        let mut fld = field::StartDateField::new(String::new());
1913        self.message.body.get_field(tag::START_DATE, &mut fld.0)?;
1914        Ok(fld.value().to_string())
1915    }
1916
1917
1918    /// Returns true if `StartDate` is present, Tag 916.
1919    pub fn has_start_date(&self) -> bool {
1920        self.message.body.has(tag::START_DATE)
1921    }
1922
1923
1924
1925
1926    /// Sets `StateOrProvinceOfIssue`, Tag 471.
1927    pub fn set_state_or_province_of_issue(&mut self, v: String) {
1928        self.message.body.set_field(tag::STATE_OR_PROVINCE_OF_ISSUE, FIXString::from(v));
1929    }
1930
1931    /// Gets `StateOrProvinceOfIssue`, Tag 471.
1932    pub fn get_state_or_province_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
1933        let mut fld = field::StateOrProvinceOfIssueField::new(String::new());
1934        self.message.body.get_field(tag::STATE_OR_PROVINCE_OF_ISSUE, &mut fld.0)?;
1935        Ok(fld.value().to_string())
1936    }
1937
1938
1939    /// Returns true if `StateOrProvinceOfIssue` is present, Tag 471.
1940    pub fn has_state_or_province_of_issue(&self) -> bool {
1941        self.message.body.has(tag::STATE_OR_PROVINCE_OF_ISSUE)
1942    }
1943
1944
1945
1946
1947    /// Sets `StrikeCurrency`, Tag 947.
1948    pub fn set_strike_currency(&mut self, v: String) {
1949        self.message.body.set_field(tag::STRIKE_CURRENCY, FIXString::from(v));
1950    }
1951
1952    /// Gets `StrikeCurrency`, Tag 947.
1953    pub fn get_strike_currency(&self) -> Result<String, MessageRejectErrorEnum> {
1954        let mut fld = field::StrikeCurrencyField::new(String::new());
1955        self.message.body.get_field(tag::STRIKE_CURRENCY, &mut fld.0)?;
1956        Ok(fld.value().to_string())
1957    }
1958
1959
1960    /// Returns true if `StrikeCurrency` is present, Tag 947.
1961    pub fn has_strike_currency(&self) -> bool {
1962        self.message.body.has(tag::STRIKE_CURRENCY)
1963    }
1964
1965
1966
1967
1968    /// Sets `StrikePrice`, Tag 202.
1969    pub fn set_strike_price(&mut self, val: Decimal, scale: i32) {
1970        self.message.body.set_field(tag::STRIKE_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1971    }
1972
1973    /// Gets `StrikePrice`, Tag 202.
1974    pub fn get_strike_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1975        let mut fld = field::StrikePriceField::new(Decimal::ZERO, 0);
1976        self.message.body.get_field(tag::STRIKE_PRICE, &mut fld.0)?;
1977        Ok(fld.value())
1978    }
1979
1980
1981    /// Returns true if `StrikePrice` is present, Tag 202.
1982    pub fn has_strike_price(&self) -> bool {
1983        self.message.body.has(tag::STRIKE_PRICE)
1984    }
1985
1986
1987
1988
1989    /// Sets `Symbol`, Tag 55.
1990    pub fn set_symbol(&mut self, v: String) {
1991        self.message.body.set_field(tag::SYMBOL, FIXString::from(v));
1992    }
1993
1994    /// Gets `Symbol`, Tag 55.
1995    pub fn get_symbol(&self) -> Result<String, MessageRejectErrorEnum> {
1996        let mut fld = field::SymbolField::new(String::new());
1997        self.message.body.get_field(tag::SYMBOL, &mut fld.0)?;
1998        Ok(fld.value().to_string())
1999    }
2000
2001
2002    /// Returns true if `Symbol` is present, Tag 55.
2003    pub fn has_symbol(&self) -> bool {
2004        self.message.body.has(tag::SYMBOL)
2005    }
2006
2007
2008
2009
2010    /// Sets `SymbolSfx`, Tag 65.
2011    pub fn set_symbol_sfx(&mut self, v: String) {
2012        self.message.body.set_field(tag::SYMBOL_SFX, FIXString::from(v));
2013    }
2014
2015    /// Gets `SymbolSfx`, Tag 65.
2016    pub fn get_symbol_sfx(&self) -> Result<String, MessageRejectErrorEnum> {
2017        let mut fld = field::SymbolSfxField::new(String::new());
2018        self.message.body.get_field(tag::SYMBOL_SFX, &mut fld.0)?;
2019        Ok(fld.value().to_string())
2020    }
2021
2022
2023    /// Returns true if `SymbolSfx` is present, Tag 65.
2024    pub fn has_symbol_sfx(&self) -> bool {
2025        self.message.body.has(tag::SYMBOL_SFX)
2026    }
2027
2028
2029
2030
2031    /// Sets `TerminationType`, Tag 788.
2032    pub fn set_termination_type(&mut self, v: isize) {
2033        self.message.body.set_field(tag::TERMINATION_TYPE, fixer::fix_int::FIXInt::from(v));
2034    }
2035
2036    /// Gets `TerminationType`, Tag 788.
2037    pub fn get_termination_type(&self) -> Result<isize, MessageRejectErrorEnum> {
2038        let mut fld = field::TerminationTypeField::new(0);
2039        self.message.body.get_field(tag::TERMINATION_TYPE, &mut fld.0)?;
2040        Ok(fld.value())
2041    }
2042
2043
2044    /// Returns true if `TerminationType` is present, Tag 788.
2045    pub fn has_termination_type(&self) -> bool {
2046        self.message.body.has(tag::TERMINATION_TYPE)
2047    }
2048
2049
2050
2051
2052    /// Sets `Text`, Tag 58.
2053    pub fn set_text(&mut self, v: String) {
2054        self.message.body.set_field(tag::TEXT, FIXString::from(v));
2055    }
2056
2057    /// Gets `Text`, Tag 58.
2058    pub fn get_text(&self) -> Result<String, MessageRejectErrorEnum> {
2059        let mut fld = field::TextField::new(String::new());
2060        self.message.body.get_field(tag::TEXT, &mut fld.0)?;
2061        Ok(fld.value().to_string())
2062    }
2063
2064
2065    /// Returns true if `Text` is present, Tag 58.
2066    pub fn has_text(&self) -> bool {
2067        self.message.body.has(tag::TEXT)
2068    }
2069
2070
2071
2072
2073    /// Sets `TotalNetValue`, Tag 900.
2074    pub fn set_total_net_value(&mut self, val: Decimal, scale: i32) {
2075        self.message.body.set_field(tag::TOTAL_NET_VALUE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2076    }
2077
2078    /// Gets `TotalNetValue`, Tag 900.
2079    pub fn get_total_net_value(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2080        let mut fld = field::TotalNetValueField::new(Decimal::ZERO, 0);
2081        self.message.body.get_field(tag::TOTAL_NET_VALUE, &mut fld.0)?;
2082        Ok(fld.value())
2083    }
2084
2085
2086    /// Returns true if `TotalNetValue` is present, Tag 900.
2087    pub fn has_total_net_value(&self) -> bool {
2088        self.message.body.has(tag::TOTAL_NET_VALUE)
2089    }
2090
2091
2092
2093
2094    /// Sets `TransactTime`, Tag 60.
2095    pub fn set_transact_time(&mut self, v: Timestamp) {
2096        self.message.body.set_field(tag::TRANSACT_TIME, fixer::fix_utc_timestamp::FIXUTCTimestamp {
2097            time: v,
2098            precision: fixer::fix_utc_timestamp::TimestampPrecision::Millis,
2099        });
2100    }
2101
2102    /// Gets `TransactTime`, Tag 60.
2103    pub fn get_transact_time(&self) -> Result<Timestamp, MessageRejectErrorEnum> {
2104        let mut fld = field::TransactTimeField::new(Timestamp::UNIX_EPOCH);
2105        self.message.body.get_field(tag::TRANSACT_TIME, &mut fld.0)?;
2106        Ok(fld.value())
2107    }
2108
2109
2110    /// Returns true if `TransactTime` is present, Tag 60.
2111    pub fn has_transact_time(&self) -> bool {
2112        self.message.body.has(tag::TRANSACT_TIME)
2113    }
2114
2115
2116}
2117
2118/// `RouteOut` is the callback type for routing `CollateralResponse` messages.
2119pub type RouteOut = fn(msg: CollateralResponse, session_id: SessionID) -> Result<(), MessageRejectErrorEnum>;
2120
2121/// Route type returned by the `route` function.
2122pub type Route = (&'static str, &'static str, Box<dyn Fn(&Message, SessionID) -> Result<(), MessageRejectErrorEnum> + Send>);
2123
2124/// Returns the begin string, message type, and route function for `CollateralResponse`.
2125pub fn route(router: RouteOut) -> Route {
2126    let r = move |msg: &Message, session_id: SessionID| -> Result<(), MessageRejectErrorEnum> {
2127        router(CollateralResponse::from_message(msg.clone()), session_id)
2128    };
2129    ("FIX.4.4", "AZ", Box::new(r))
2130}