dpp/errors/consensus/basic/
basic_error.rs

1use crate::errors::ProtocolError;
2use bincode::{Decode, Encode};
3use platform_serialization_derive::{PlatformDeserialize, PlatformSerialize};
4use thiserror::Error;
5
6use crate::consensus::basic::data_contract::data_contract_max_depth_exceed_error::DataContractMaxDepthExceedError;
7use crate::consensus::basic::data_contract::{
8    ContestedUniqueIndexOnMutableDocumentTypeError, ContestedUniqueIndexWithUniqueIndexError,
9    DataContractHaveNewUniqueIndexError, DataContractImmutablePropertiesUpdateError,
10    DataContractInvalidIndexDefinitionUpdateError, DataContractTokenConfigurationUpdateError,
11    DataContractUniqueIndicesChangedError, DecimalsOverLimitError, DuplicateIndexError,
12    DuplicateIndexNameError, GroupExceedsMaxMembersError, GroupHasTooFewMembersError,
13    GroupMemberHasPowerOfZeroError, GroupMemberHasPowerOverLimitError,
14    GroupNonUnilateralMemberPowerHasLessThanRequiredPowerError, GroupPositionDoesNotExistError,
15    GroupRequiredPowerIsInvalidError, GroupTotalPowerLessThanRequiredError,
16    IncompatibleDataContractSchemaError, IncompatibleDocumentTypeSchemaError,
17    IncompatibleRe2PatternError, InvalidCompoundIndexError, InvalidDataContractIdError,
18    InvalidDataContractVersionError, InvalidDocumentTypeNameError,
19    InvalidDocumentTypeRequiredSecurityLevelError, InvalidIndexPropertyTypeError,
20    InvalidIndexedPropertyConstraintError, InvalidKeywordCharacterError,
21    InvalidTokenBaseSupplyError, InvalidTokenDistributionFunctionDivideByZeroError,
22    InvalidTokenDistributionFunctionIncoherenceError,
23    InvalidTokenDistributionFunctionInvalidParameterError,
24    InvalidTokenDistributionFunctionInvalidParameterTupleError, InvalidTokenLanguageCodeError,
25    InvalidTokenNameCharacterError, InvalidTokenNameLengthError, MainGroupIsNotDefinedError,
26    NewTokensDestinationIdentityOptionRequiredError, NonContiguousContractGroupPositionsError,
27    NonContiguousContractTokenPositionsError, RedundantDocumentPaidForByTokenWithContractId,
28    SystemPropertyIndexAlreadyPresentError, UndefinedIndexPropertyError,
29    UniqueIndicesLimitReachedError, UnknownDocumentCreationRestrictionModeError,
30    UnknownGasFeesPaidByError, UnknownSecurityLevelError, UnknownStorageKeyRequirementsError,
31    UnknownTradeModeError, UnknownTransferableTypeError,
32};
33use crate::consensus::basic::data_contract::{
34    InvalidJsonSchemaRefError, TokenPaymentByBurningOnlyAllowedOnInternalTokenError,
35    UnknownDocumentActionTokenEffectError,
36};
37use crate::consensus::basic::decode::{
38    ProtocolVersionParsingError, SerializedObjectParsingError, VersionError,
39};
40use crate::consensus::basic::document::{
41    ContestedDocumentsTemporarilyNotAllowedError, DataContractNotPresentError,
42    DocumentCreationNotAllowedError, DocumentFieldMaxSizeExceededError,
43    DocumentTransitionsAreAbsentError, DuplicateDocumentTransitionsWithIdsError,
44    DuplicateDocumentTransitionsWithIndicesError, InconsistentCompoundIndexDataError,
45    InvalidDocumentTransitionActionError, InvalidDocumentTransitionIdError,
46    InvalidDocumentTypeError, MaxDocumentsTransitionsExceededError,
47    MissingDataContractIdBasicError, MissingDocumentTransitionActionError,
48    MissingDocumentTransitionTypeError, MissingDocumentTypeError,
49    MissingPositionsInDocumentTypePropertiesError, NonceOutOfBoundsError,
50};
51use crate::consensus::basic::identity::{
52    DataContractBoundsNotPresentError, DisablingKeyIdAlsoBeingAddedInSameTransitionError,
53    DuplicatedIdentityPublicKeyBasicError, DuplicatedIdentityPublicKeyIdBasicError,
54    IdentityAssetLockProofLockedTransactionMismatchError,
55    IdentityAssetLockStateTransitionReplayError, IdentityAssetLockTransactionIsNotFoundError,
56    IdentityAssetLockTransactionOutPointAlreadyConsumedError,
57    IdentityAssetLockTransactionOutPointNotEnoughBalanceError,
58    IdentityAssetLockTransactionOutputNotFoundError, IdentityCreditTransferToSelfError,
59    InvalidAssetLockProofCoreChainHeightError, InvalidAssetLockProofTransactionHeightError,
60    InvalidAssetLockTransactionOutputReturnSizeError,
61    InvalidCreditWithdrawalTransitionCoreFeeError,
62    InvalidCreditWithdrawalTransitionOutputScriptError,
63    InvalidIdentityAssetLockProofChainLockValidationError,
64    InvalidIdentityAssetLockTransactionError, InvalidIdentityAssetLockTransactionOutputError,
65    InvalidIdentityCreditTransferAmountError, InvalidIdentityCreditWithdrawalTransitionAmountError,
66    InvalidIdentityKeySignatureError, InvalidIdentityPublicKeyDataError,
67    InvalidIdentityPublicKeySecurityLevelError, InvalidIdentityUpdateTransitionDisableKeysError,
68    InvalidIdentityUpdateTransitionEmptyError, InvalidInstantAssetLockProofError,
69    InvalidInstantAssetLockProofSignatureError, InvalidKeyPurposeForContractBoundsError,
70    MissingMasterPublicKeyError, NotImplementedCreditWithdrawalTransitionPoolingError,
71    TooManyMasterPublicKeyError, WithdrawalOutputScriptNotAllowedWhenSigningWithOwnerKeyError,
72};
73use crate::consensus::basic::invalid_identifier_error::InvalidIdentifierError;
74use crate::consensus::basic::state_transition::{
75    FeeStrategyDuplicateError, FeeStrategyEmptyError, FeeStrategyIndexOutOfBoundsError,
76    FeeStrategyTooManyStepsError, InputBelowMinimumError, InputOutputBalanceMismatchError,
77    InputWitnessCountMismatchError, InputsNotLessThanOutputsError, InsufficientFundingAmountError,
78    InvalidRemainderOutputCountError, InvalidStateTransitionTypeError,
79    MissingStateTransitionTypeError, OutputAddressAlsoInputError, OutputBelowMinimumError,
80    OutputsNotGreaterThanInputsError, ShieldedEmptyProofError,
81    ShieldedEncryptedNoteSizeMismatchError, ShieldedInvalidValueBalanceError,
82    ShieldedNoActionsError, ShieldedTooManyActionsError, ShieldedZeroAnchorError,
83    StateTransitionMaxSizeExceededError, StateTransitionNotActiveError, TransitionNoInputsError,
84    TransitionNoOutputsError, TransitionOverMaxInputsError, TransitionOverMaxOutputsError,
85    WithdrawalBalanceMismatchError, WithdrawalBelowMinAmountError,
86};
87use crate::consensus::basic::{
88    IncompatibleProtocolVersionError, UnsupportedFeatureError, UnsupportedProtocolVersionError,
89};
90use crate::consensus::ConsensusError;
91
92use super::data_contract::{
93    DuplicateKeywordsError, InvalidDescriptionLengthError, InvalidKeywordLengthError,
94    TooManyKeywordsError,
95};
96use crate::consensus::basic::group::GroupActionNotAllowedOnTransitionError;
97use crate::consensus::basic::overflow_error::OverflowError;
98use crate::consensus::basic::token::{
99    ChoosingTokenMintRecipientNotAllowedError, ContractHasNoTokensError,
100    DestinationIdentityForTokenMintingNotSetError, InvalidActionIdError, InvalidTokenAmountError,
101    InvalidTokenConfigUpdateNoChangeError, InvalidTokenDistributionBlockIntervalTooShortError,
102    InvalidTokenDistributionTimeIntervalNotMinuteAlignedError,
103    InvalidTokenDistributionTimeIntervalTooShortError, InvalidTokenIdError,
104    InvalidTokenNoteTooBigError, InvalidTokenPositionError, MissingDefaultLocalizationError,
105    TokenNoteOnlyAllowedWhenProposerError, TokenTransferToOurselfError,
106};
107use crate::consensus::basic::unsupported_version_error::UnsupportedVersionError;
108use crate::consensus::basic::value_error::ValueError;
109use crate::consensus::basic::{
110    json_schema_compilation_error::JsonSchemaCompilationError, json_schema_error::JsonSchemaError,
111};
112use crate::consensus::state::identity::master_public_key_update_error::MasterPublicKeyUpdateError;
113use crate::data_contract::errors::DataContractError;
114
115#[allow(clippy::large_enum_variant)]
116#[derive(
117    Error, Debug, PlatformSerialize, PlatformDeserialize, Encode, Decode, PartialEq, Clone,
118)]
119pub enum BasicError {
120    /*
121
122    DO NOT CHANGE ORDER OF VARIANTS WITHOUT INTRODUCING OF NEW VERSION
123
124    */
125    // Decoding
126    #[error(transparent)]
127    ProtocolVersionParsingError(ProtocolVersionParsingError),
128
129    #[error(transparent)]
130    VersionError(VersionError),
131
132    #[error(transparent)]
133    ContractError(DataContractError),
134
135    #[error(transparent)]
136    UnknownSecurityLevelError(UnknownSecurityLevelError),
137
138    #[error(transparent)]
139    UnknownStorageKeyRequirementsError(UnknownStorageKeyRequirementsError),
140
141    #[error(transparent)]
142    UnknownTransferableTypeError(UnknownTransferableTypeError),
143
144    #[error(transparent)]
145    UnknownTradeModeError(UnknownTradeModeError),
146
147    #[error(transparent)]
148    UnknownDocumentCreationRestrictionModeError(UnknownDocumentCreationRestrictionModeError),
149
150    #[error(transparent)]
151    SerializedObjectParsingError(SerializedObjectParsingError),
152
153    #[error(transparent)]
154    UnsupportedProtocolVersionError(UnsupportedProtocolVersionError),
155
156    #[error(transparent)]
157    UnsupportedVersionError(UnsupportedVersionError),
158
159    #[error(transparent)]
160    IncompatibleProtocolVersionError(IncompatibleProtocolVersionError),
161
162    // Structure error
163    #[error(transparent)]
164    JsonSchemaCompilationError(JsonSchemaCompilationError),
165
166    #[error(transparent)]
167    JsonSchemaError(JsonSchemaError),
168
169    #[error(transparent)]
170    InvalidIdentifierError(InvalidIdentifierError),
171
172    #[error(transparent)]
173    ValueError(ValueError),
174
175    // DataContract
176    #[error(transparent)]
177    DataContractMaxDepthExceedError(DataContractMaxDepthExceedError),
178
179    #[error(transparent)]
180    DuplicateIndexError(DuplicateIndexError),
181
182    #[error(transparent)]
183    IncompatibleRe2PatternError(IncompatibleRe2PatternError),
184
185    #[error(transparent)]
186    InvalidCompoundIndexError(InvalidCompoundIndexError),
187
188    #[error(transparent)]
189    InvalidDataContractIdError(InvalidDataContractIdError),
190
191    #[error(transparent)]
192    InvalidIndexedPropertyConstraintError(InvalidIndexedPropertyConstraintError),
193
194    #[error(transparent)]
195    InvalidIndexPropertyTypeError(InvalidIndexPropertyTypeError),
196
197    #[error(transparent)]
198    InvalidJsonSchemaRefError(InvalidJsonSchemaRefError),
199
200    #[error(transparent)]
201    SystemPropertyIndexAlreadyPresentError(SystemPropertyIndexAlreadyPresentError),
202
203    #[error(transparent)]
204    UndefinedIndexPropertyError(UndefinedIndexPropertyError),
205
206    #[error(transparent)]
207    UniqueIndicesLimitReachedError(UniqueIndicesLimitReachedError),
208
209    #[error(transparent)]
210    DuplicateIndexNameError(DuplicateIndexNameError),
211
212    #[error(transparent)]
213    InvalidDataContractVersionError(InvalidDataContractVersionError),
214
215    #[error(transparent)]
216    IncompatibleDataContractSchemaError(IncompatibleDataContractSchemaError),
217
218    #[error(transparent)]
219    DataContractImmutablePropertiesUpdateError(DataContractImmutablePropertiesUpdateError),
220
221    #[error(transparent)]
222    DataContractUniqueIndicesChangedError(DataContractUniqueIndicesChangedError),
223
224    #[error(transparent)]
225    DataContractInvalidIndexDefinitionUpdateError(DataContractInvalidIndexDefinitionUpdateError),
226
227    #[error(transparent)]
228    DataContractHaveNewUniqueIndexError(DataContractHaveNewUniqueIndexError),
229
230    // Document
231    #[error(transparent)]
232    DataContractNotPresentError(DataContractNotPresentError),
233
234    #[error(transparent)]
235    DocumentCreationNotAllowedError(DocumentCreationNotAllowedError),
236
237    #[error(transparent)]
238    DataContractBoundsNotPresentError(DataContractBoundsNotPresentError),
239
240    #[error(transparent)]
241    DuplicateDocumentTransitionsWithIdsError(DuplicateDocumentTransitionsWithIdsError),
242
243    #[error(transparent)]
244    DuplicateDocumentTransitionsWithIndicesError(DuplicateDocumentTransitionsWithIndicesError),
245
246    #[error(transparent)]
247    NonceOutOfBoundsError(NonceOutOfBoundsError),
248
249    #[error(transparent)]
250    InconsistentCompoundIndexDataError(InconsistentCompoundIndexDataError),
251
252    #[error(transparent)]
253    InvalidDocumentTransitionActionError(InvalidDocumentTransitionActionError),
254
255    #[error(transparent)]
256    InvalidDocumentTransitionIdError(InvalidDocumentTransitionIdError),
257
258    #[error(transparent)]
259    InvalidDocumentTypeError(InvalidDocumentTypeError),
260
261    #[error(transparent)]
262    MissingPositionsInDocumentTypePropertiesError(MissingPositionsInDocumentTypePropertiesError),
263
264    #[error(transparent)]
265    MissingDataContractIdBasicError(MissingDataContractIdBasicError),
266
267    #[error(transparent)]
268    MissingDocumentTransitionActionError(MissingDocumentTransitionActionError),
269
270    #[error(transparent)]
271    MissingDocumentTransitionTypeError(MissingDocumentTransitionTypeError),
272
273    #[error(transparent)]
274    MissingDocumentTypeError(MissingDocumentTypeError),
275
276    #[error(transparent)]
277    MaxDocumentsTransitionsExceededError(MaxDocumentsTransitionsExceededError),
278
279    // Identity
280    #[error(transparent)]
281    DuplicatedIdentityPublicKeyBasicError(DuplicatedIdentityPublicKeyBasicError),
282
283    #[error(transparent)]
284    DuplicatedIdentityPublicKeyIdBasicError(DuplicatedIdentityPublicKeyIdBasicError),
285
286    #[error(transparent)]
287    DisablingKeyIdAlsoBeingAddedInSameTransitionError(
288        DisablingKeyIdAlsoBeingAddedInSameTransitionError,
289    ),
290
291    #[error(transparent)]
292    IdentityAssetLockProofLockedTransactionMismatchError(
293        IdentityAssetLockProofLockedTransactionMismatchError,
294    ),
295
296    #[error(transparent)]
297    IdentityAssetLockTransactionIsNotFoundError(IdentityAssetLockTransactionIsNotFoundError),
298
299    #[error(transparent)]
300    IdentityAssetLockTransactionOutPointAlreadyConsumedError(
301        IdentityAssetLockTransactionOutPointAlreadyConsumedError,
302    ),
303
304    #[error(transparent)]
305    IdentityAssetLockTransactionOutPointNotEnoughBalanceError(
306        IdentityAssetLockTransactionOutPointNotEnoughBalanceError,
307    ),
308
309    #[error(transparent)]
310    IdentityAssetLockStateTransitionReplayError(IdentityAssetLockStateTransitionReplayError),
311
312    #[error(transparent)]
313    IdentityAssetLockTransactionOutputNotFoundError(
314        IdentityAssetLockTransactionOutputNotFoundError,
315    ),
316
317    #[error(transparent)]
318    InvalidAssetLockProofCoreChainHeightError(InvalidAssetLockProofCoreChainHeightError),
319
320    #[error(transparent)]
321    InvalidIdentityAssetLockProofChainLockValidationError(
322        InvalidIdentityAssetLockProofChainLockValidationError,
323    ),
324
325    #[error(transparent)]
326    InvalidAssetLockProofTransactionHeightError(InvalidAssetLockProofTransactionHeightError),
327
328    #[error(transparent)]
329    InvalidAssetLockTransactionOutputReturnSizeError(
330        InvalidAssetLockTransactionOutputReturnSizeError,
331    ),
332
333    #[error(transparent)]
334    InvalidIdentityAssetLockTransactionError(InvalidIdentityAssetLockTransactionError),
335
336    #[error(transparent)]
337    InvalidIdentityAssetLockTransactionOutputError(InvalidIdentityAssetLockTransactionOutputError),
338
339    #[error(transparent)]
340    InvalidIdentityPublicKeyDataError(InvalidIdentityPublicKeyDataError),
341
342    #[error(transparent)]
343    InvalidInstantAssetLockProofError(InvalidInstantAssetLockProofError),
344
345    #[error(transparent)]
346    InvalidInstantAssetLockProofSignatureError(InvalidInstantAssetLockProofSignatureError),
347
348    #[error(transparent)]
349    MissingMasterPublicKeyError(MissingMasterPublicKeyError),
350
351    #[error(transparent)]
352    TooManyMasterPublicKeyError(TooManyMasterPublicKeyError),
353
354    #[error(transparent)]
355    MasterPublicKeyUpdateError(MasterPublicKeyUpdateError),
356
357    #[error(transparent)]
358    InvalidDocumentTypeRequiredSecurityLevelError(InvalidDocumentTypeRequiredSecurityLevelError),
359
360    #[error(transparent)]
361    InvalidIdentityPublicKeySecurityLevelError(InvalidIdentityPublicKeySecurityLevelError),
362
363    #[error(transparent)]
364    InvalidIdentityKeySignatureError(InvalidIdentityKeySignatureError),
365
366    #[error(transparent)]
367    InvalidIdentityCreditTransferAmountError(InvalidIdentityCreditTransferAmountError),
368
369    #[error(transparent)]
370    InvalidCreditWithdrawalTransitionOutputScriptError(
371        InvalidCreditWithdrawalTransitionOutputScriptError,
372    ),
373
374    #[error(transparent)]
375    WithdrawalOutputScriptNotAllowedWhenSigningWithOwnerKeyError(
376        WithdrawalOutputScriptNotAllowedWhenSigningWithOwnerKeyError,
377    ),
378
379    #[error(transparent)]
380    InvalidCreditWithdrawalTransitionCoreFeeError(InvalidCreditWithdrawalTransitionCoreFeeError),
381
382    #[error(transparent)]
383    InvalidIdentityCreditWithdrawalTransitionAmountError(
384        InvalidIdentityCreditWithdrawalTransitionAmountError,
385    ),
386
387    #[error(transparent)]
388    InvalidIdentityUpdateTransitionEmptyError(InvalidIdentityUpdateTransitionEmptyError),
389
390    #[error(transparent)]
391    InvalidIdentityUpdateTransitionDisableKeysError(
392        InvalidIdentityUpdateTransitionDisableKeysError,
393    ),
394
395    #[error(transparent)]
396    NotImplementedCreditWithdrawalTransitionPoolingError(
397        NotImplementedCreditWithdrawalTransitionPoolingError,
398    ),
399
400    // State Transition
401    #[error(transparent)]
402    InvalidStateTransitionTypeError(InvalidStateTransitionTypeError),
403
404    #[error(transparent)]
405    MissingStateTransitionTypeError(MissingStateTransitionTypeError),
406
407    #[error(transparent)]
408    DocumentFieldMaxSizeExceededError(DocumentFieldMaxSizeExceededError),
409
410    #[error(transparent)]
411    StateTransitionMaxSizeExceededError(StateTransitionMaxSizeExceededError),
412
413    #[error(transparent)]
414    DocumentTransitionsAreAbsentError(DocumentTransitionsAreAbsentError),
415
416    #[error(transparent)]
417    IdentityCreditTransferToSelfError(IdentityCreditTransferToSelfError),
418
419    #[error(transparent)]
420    InvalidDocumentTypeNameError(InvalidDocumentTypeNameError),
421
422    #[error(transparent)]
423    IncompatibleDocumentTypeSchemaError(IncompatibleDocumentTypeSchemaError),
424
425    #[error(transparent)]
426    ContestedUniqueIndexOnMutableDocumentTypeError(ContestedUniqueIndexOnMutableDocumentTypeError),
427
428    #[error(transparent)]
429    ContestedUniqueIndexWithUniqueIndexError(ContestedUniqueIndexWithUniqueIndexError),
430
431    #[error(transparent)]
432    OverflowError(OverflowError),
433
434    #[error(transparent)]
435    UnsupportedFeatureError(UnsupportedFeatureError),
436
437    #[error(transparent)]
438    ContestedDocumentsTemporarilyNotAllowedError(ContestedDocumentsTemporarilyNotAllowedError),
439
440    #[error(transparent)]
441    DataContractTokenConfigurationUpdateError(DataContractTokenConfigurationUpdateError),
442
443    #[error(transparent)]
444    NonContiguousContractTokenPositionsError(NonContiguousContractTokenPositionsError),
445
446    #[error(transparent)]
447    NonContiguousContractGroupPositionsError(NonContiguousContractGroupPositionsError),
448
449    #[error(transparent)]
450    InvalidTokenBaseSupplyError(InvalidTokenBaseSupplyError),
451
452    #[error(transparent)]
453    InvalidTokenIdError(InvalidTokenIdError),
454
455    #[error(transparent)]
456    InvalidTokenAmountError(InvalidTokenAmountError),
457
458    #[error(transparent)]
459    InvalidTokenPositionError(InvalidTokenPositionError),
460
461    #[error(transparent)]
462    InvalidTokenConfigUpdateNoChangeError(InvalidTokenConfigUpdateNoChangeError),
463
464    #[error(transparent)]
465    InvalidTokenDistributionFunctionDivideByZeroError(
466        InvalidTokenDistributionFunctionDivideByZeroError,
467    ),
468
469    #[error(transparent)]
470    InvalidTokenDistributionFunctionInvalidParameterError(
471        InvalidTokenDistributionFunctionInvalidParameterError,
472    ),
473
474    #[error(transparent)]
475    InvalidTokenDistributionFunctionInvalidParameterTupleError(
476        InvalidTokenDistributionFunctionInvalidParameterTupleError,
477    ),
478
479    #[error(transparent)]
480    InvalidTokenDistributionFunctionIncoherenceError(
481        InvalidTokenDistributionFunctionIncoherenceError,
482    ),
483
484    #[error(transparent)]
485    TokenTransferToOurselfError(TokenTransferToOurselfError),
486
487    #[error(transparent)]
488    InvalidTokenNoteTooBigError(InvalidTokenNoteTooBigError),
489
490    #[error(transparent)]
491    ContractHasNoTokensError(ContractHasNoTokensError),
492
493    #[error(transparent)]
494    GroupPositionDoesNotExistError(GroupPositionDoesNotExistError),
495
496    #[error(transparent)]
497    InvalidActionIdError(InvalidActionIdError),
498
499    #[error(transparent)]
500    DestinationIdentityForTokenMintingNotSetError(DestinationIdentityForTokenMintingNotSetError),
501
502    #[error(transparent)]
503    ChoosingTokenMintRecipientNotAllowedError(ChoosingTokenMintRecipientNotAllowedError),
504
505    #[error(transparent)]
506    GroupActionNotAllowedOnTransitionError(GroupActionNotAllowedOnTransitionError),
507
508    #[error(transparent)]
509    GroupExceedsMaxMembersError(GroupExceedsMaxMembersError),
510
511    #[error(transparent)]
512    GroupMemberHasPowerOfZeroError(GroupMemberHasPowerOfZeroError),
513
514    #[error(transparent)]
515    GroupMemberHasPowerOverLimitError(GroupMemberHasPowerOverLimitError),
516
517    #[error(transparent)]
518    GroupTotalPowerLessThanRequiredError(GroupTotalPowerLessThanRequiredError),
519
520    #[error(transparent)]
521    GroupNonUnilateralMemberPowerHasLessThanRequiredPowerError(
522        GroupNonUnilateralMemberPowerHasLessThanRequiredPowerError,
523    ),
524
525    #[error(transparent)]
526    MissingDefaultLocalizationError(MissingDefaultLocalizationError),
527
528    #[error(transparent)]
529    UnknownGasFeesPaidByError(UnknownGasFeesPaidByError),
530
531    #[error(transparent)]
532    UnknownDocumentActionTokenEffectError(UnknownDocumentActionTokenEffectError),
533
534    #[error(transparent)]
535    TokenPaymentByBurningOnlyAllowedOnInternalTokenError(
536        TokenPaymentByBurningOnlyAllowedOnInternalTokenError,
537    ),
538
539    #[error(transparent)]
540    TooManyKeywordsError(TooManyKeywordsError),
541
542    #[error(transparent)]
543    DuplicateKeywordsError(DuplicateKeywordsError),
544
545    #[error(transparent)]
546    InvalidKeywordLengthError(InvalidKeywordLengthError),
547
548    #[error(transparent)]
549    InvalidDescriptionLengthError(InvalidDescriptionLengthError),
550
551    #[error(transparent)]
552    NewTokensDestinationIdentityOptionRequiredError(
553        NewTokensDestinationIdentityOptionRequiredError,
554    ),
555
556    #[error(transparent)]
557    InvalidKeywordCharacterError(InvalidKeywordCharacterError),
558
559    #[error(transparent)]
560    InvalidTokenNameCharacterError(InvalidTokenNameCharacterError),
561
562    #[error(transparent)]
563    DecimalsOverLimitError(DecimalsOverLimitError),
564
565    #[error(transparent)]
566    InvalidTokenNameLengthError(InvalidTokenNameLengthError),
567
568    #[error(transparent)]
569    InvalidTokenLanguageCodeError(InvalidTokenLanguageCodeError),
570
571    #[error(transparent)]
572    MainGroupIsNotDefinedError(MainGroupIsNotDefinedError),
573
574    #[error(transparent)]
575    GroupRequiredPowerIsInvalidError(GroupRequiredPowerIsInvalidError),
576
577    #[error(transparent)]
578    TokenNoteOnlyAllowedWhenProposerError(TokenNoteOnlyAllowedWhenProposerError),
579
580    #[error(transparent)]
581    InvalidTokenDistributionBlockIntervalTooShortError(
582        InvalidTokenDistributionBlockIntervalTooShortError,
583    ),
584
585    #[error(transparent)]
586    InvalidTokenDistributionTimeIntervalTooShortError(
587        InvalidTokenDistributionTimeIntervalTooShortError,
588    ),
589
590    #[error(transparent)]
591    InvalidTokenDistributionTimeIntervalNotMinuteAlignedError(
592        InvalidTokenDistributionTimeIntervalNotMinuteAlignedError,
593    ),
594    #[error(transparent)]
595    RedundantDocumentPaidForByTokenWithContractId(RedundantDocumentPaidForByTokenWithContractId),
596
597    #[error(transparent)]
598    GroupHasTooFewMembersError(GroupHasTooFewMembersError),
599
600    #[error(transparent)]
601    InvalidKeyPurposeForContractBoundsError(InvalidKeyPurposeForContractBoundsError),
602
603    #[error(transparent)]
604    StateTransitionNotActiveError(StateTransitionNotActiveError),
605
606    #[error(transparent)]
607    TransitionOverMaxInputsError(TransitionOverMaxInputsError),
608
609    #[error(transparent)]
610    TransitionOverMaxOutputsError(TransitionOverMaxOutputsError),
611
612    #[error(transparent)]
613    InputWitnessCountMismatchError(InputWitnessCountMismatchError),
614
615    #[error(transparent)]
616    TransitionNoInputsError(TransitionNoInputsError),
617
618    #[error(transparent)]
619    TransitionNoOutputsError(TransitionNoOutputsError),
620
621    #[error(transparent)]
622    InvalidRemainderOutputCountError(InvalidRemainderOutputCountError),
623
624    #[error(transparent)]
625    FeeStrategyEmptyError(FeeStrategyEmptyError),
626
627    #[error(transparent)]
628    FeeStrategyDuplicateError(FeeStrategyDuplicateError),
629
630    #[error(transparent)]
631    FeeStrategyIndexOutOfBoundsError(FeeStrategyIndexOutOfBoundsError),
632
633    #[error(transparent)]
634    FeeStrategyTooManyStepsError(FeeStrategyTooManyStepsError),
635
636    #[error(transparent)]
637    InputBelowMinimumError(InputBelowMinimumError),
638
639    #[error(transparent)]
640    OutputBelowMinimumError(OutputBelowMinimumError),
641
642    #[error(transparent)]
643    InputOutputBalanceMismatchError(InputOutputBalanceMismatchError),
644
645    #[error(transparent)]
646    OutputsNotGreaterThanInputsError(OutputsNotGreaterThanInputsError),
647
648    #[error(transparent)]
649    WithdrawalBalanceMismatchError(WithdrawalBalanceMismatchError),
650
651    #[error(transparent)]
652    WithdrawalBelowMinAmountError(WithdrawalBelowMinAmountError),
653
654    #[error(transparent)]
655    InsufficientFundingAmountError(InsufficientFundingAmountError),
656
657    #[error(transparent)]
658    InputsNotLessThanOutputsError(InputsNotLessThanOutputsError),
659
660    #[error(transparent)]
661    OutputAddressAlsoInputError(OutputAddressAlsoInputError),
662
663    #[error(transparent)]
664    ShieldedNoActionsError(ShieldedNoActionsError),
665
666    #[error(transparent)]
667    ShieldedTooManyActionsError(ShieldedTooManyActionsError),
668
669    #[error(transparent)]
670    ShieldedEmptyProofError(ShieldedEmptyProofError),
671
672    #[error(transparent)]
673    ShieldedZeroAnchorError(ShieldedZeroAnchorError),
674
675    #[error(transparent)]
676    ShieldedInvalidValueBalanceError(ShieldedInvalidValueBalanceError),
677
678    #[error(transparent)]
679    ShieldedEncryptedNoteSizeMismatchError(ShieldedEncryptedNoteSizeMismatchError),
680}
681
682impl From<BasicError> for ConsensusError {
683    fn from(error: BasicError) -> Self {
684        Self::BasicError(error)
685    }
686}