def _sdk_error_to_dafny_error()

in ComAmazonawsDynamodb/runtimes/python/src/aws_cryptography_internal_dynamodb/smithygenerated/com_amazonaws_dynamodb/shim.py [0:0]


def _sdk_error_to_dafny_error(e: ClientError):
    """Converts the provided native Smithy-modelled error into the
    corresponding Dafny error."""
    if e.response["Error"]["Code"] == "BackupInUseException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_BackupInUseException(
            e.response
        )

    elif e.response["Error"]["Code"] == "BackupNotFoundException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_BackupNotFoundException(
            e.response
        )

    elif e.response["Error"]["Code"] == "ConditionalCheckFailedException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_ConditionalCheckFailedException(
            e.response
        )

    elif e.response["Error"]["Code"] == "ContinuousBackupsUnavailableException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_ContinuousBackupsUnavailableException(
            e.response
        )

    elif e.response["Error"]["Code"] == "DuplicateItemException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_DuplicateItemException(
            e.response
        )

    elif e.response["Error"]["Code"] == "ExportConflictException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_ExportConflictException(
            e.response
        )

    elif e.response["Error"]["Code"] == "ExportNotFoundException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_ExportNotFoundException(
            e.response
        )

    elif e.response["Error"]["Code"] == "GlobalTableAlreadyExistsException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_GlobalTableAlreadyExistsException(
            e.response
        )

    elif e.response["Error"]["Code"] == "GlobalTableNotFoundException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_GlobalTableNotFoundException(
            e.response
        )

    elif e.response["Error"]["Code"] == "IdempotentParameterMismatchException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_IdempotentParameterMismatchException(
            e.response
        )

    elif e.response["Error"]["Code"] == "ImportConflictException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_ImportConflictException(
            e.response
        )

    elif e.response["Error"]["Code"] == "ImportNotFoundException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_ImportNotFoundException(
            e.response
        )

    elif e.response["Error"]["Code"] == "IndexNotFoundException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_IndexNotFoundException(
            e.response
        )

    elif e.response["Error"]["Code"] == "InternalServerError":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_InternalServerError(
            e.response
        )

    elif e.response["Error"]["Code"] == "InvalidEndpointException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_InvalidEndpointException(
            e.response
        )

    elif e.response["Error"]["Code"] == "InvalidExportTimeException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_InvalidExportTimeException(
            e.response
        )

    elif e.response["Error"]["Code"] == "InvalidRestoreTimeException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_InvalidRestoreTimeException(
            e.response
        )

    elif e.response["Error"]["Code"] == "ItemCollectionSizeLimitExceededException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_ItemCollectionSizeLimitExceededException(
            e.response
        )

    elif e.response["Error"]["Code"] == "LimitExceededException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_LimitExceededException(
            e.response
        )

    elif e.response["Error"]["Code"] == "PointInTimeRecoveryUnavailableException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_PointInTimeRecoveryUnavailableException(
            e.response
        )

    elif e.response["Error"]["Code"] == "PolicyNotFoundException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_PolicyNotFoundException(
            e.response
        )

    elif e.response["Error"]["Code"] == "ProvisionedThroughputExceededException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_ProvisionedThroughputExceededException(
            e.response
        )

    elif e.response["Error"]["Code"] == "ReplicaAlreadyExistsException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_ReplicaAlreadyExistsException(
            e.response
        )

    elif e.response["Error"]["Code"] == "ReplicaNotFoundException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_ReplicaNotFoundException(
            e.response
        )

    elif e.response["Error"]["Code"] == "RequestLimitExceeded":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_RequestLimitExceeded(
            e.response
        )

    elif e.response["Error"]["Code"] == "ResourceInUseException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_ResourceInUseException(
            e.response
        )

    elif e.response["Error"]["Code"] == "ResourceNotFoundException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_ResourceNotFoundException(
            e.response
        )

    elif e.response["Error"]["Code"] == "TableAlreadyExistsException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_TableAlreadyExistsException(
            e.response
        )

    elif e.response["Error"]["Code"] == "TableInUseException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_TableInUseException(
            e.response
        )

    elif e.response["Error"]["Code"] == "TableNotFoundException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_TableNotFoundException(
            e.response
        )

    elif e.response["Error"]["Code"] == "TransactionCanceledException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_TransactionCanceledException(
            e.response
        )

    elif e.response["Error"]["Code"] == "TransactionConflictException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_TransactionConflictException(
            e.response
        )

    elif e.response["Error"]["Code"] == "TransactionInProgressException":
        return aws_cryptography_internal_dynamodb.smithygenerated.com_amazonaws_dynamodb.aws_sdk_to_dafny.com_amazonaws_dynamodb_TransactionInProgressException(
            e.response
        )

    return aws_cryptography_internal_dynamodb.internaldafny.generated.ComAmazonawsDynamodbTypes.Error_OpaqueWithText(
        obj=e,
        objMessage=_dafny.Seq(
            "".join(
                [
                    chr(int.from_bytes(pair, "big"))
                    for pair in zip(*[iter(repr(e).encode("utf-16-be"))] * 2)
                ]
            )
        ),
    )