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