aws_db_esdk/deps/aws_cryptography_materialProviders/conversions/
error.rs

1// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.
2// SPDX-License-Identifier: Apache-2.0
3// Do not modify this file. This file is machine generated, and any changes to it will be overwritten.
4/// Wraps up an arbitrary Rust Error value as a Dafny Error
5pub fn to_opaque_error(
6    value: String,
7) -> ::dafny_runtime::Rc<
8    crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error,
9> {
10    let error_msg = value.clone();
11    let error_msg =
12        ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::string_to_dafny_string(
13            &error_msg,
14        );
15    let error_obj: ::dafny_runtime::Object<::dafny_runtime::DynAny> =
16        ::dafny_runtime::Object(Some(::dafny_runtime::Rc::new(
17            ::dafny_runtime::UnsafeCell::new(value),
18        )));
19    ::dafny_runtime::Rc::new(
20        crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::OpaqueWithText {
21            obj: error_obj,
22	    objMessage: error_msg
23        },
24    )
25}
26
27/// Wraps up an arbitrary Rust Error value as a Dafny Result<T, Error>.Failure
28pub fn to_opaque_error_result<T: ::dafny_runtime::DafnyType>(
29    value: String,
30) -> ::dafny_runtime::Rc<
31    crate::_Wrappers_Compile::Result<
32        T,
33        ::dafny_runtime::Rc<
34            crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error,
35        >,
36    >,
37> {
38    ::dafny_runtime::Rc::new(crate::_Wrappers_Compile::Result::Failure {
39        error: to_opaque_error(value),
40    })
41}
42pub fn to_dafny(
43    value: crate::deps::aws_cryptography_materialProviders::types::error::Error,
44) -> ::dafny_runtime::Rc<
45    crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error,
46> {
47    ::dafny_runtime::Rc::new(match value {
48        crate::deps::aws_cryptography_materialProviders::types::error::Error::AwsCryptographicMaterialProvidersException { message } =>
49    crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::AwsCryptographicMaterialProvidersException {
50        message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::string_to_dafny_string(&message),
51    },
52crate::deps::aws_cryptography_materialProviders::types::error::Error::EntryAlreadyExists { message } =>
53    crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::EntryAlreadyExists {
54        message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::string_to_dafny_string(&message),
55    },
56crate::deps::aws_cryptography_materialProviders::types::error::Error::EntryDoesNotExist { message } =>
57    crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::EntryDoesNotExist {
58        message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::string_to_dafny_string(&message),
59    },
60crate::deps::aws_cryptography_materialProviders::types::error::Error::InFlightTtlExceeded { message } =>
61    crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::InFlightTTLExceeded {
62        message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::string_to_dafny_string(&message),
63    },
64crate::deps::aws_cryptography_materialProviders::types::error::Error::InvalidAlgorithmSuiteInfo { message } =>
65    crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::InvalidAlgorithmSuiteInfo {
66        message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::string_to_dafny_string(&message),
67    },
68crate::deps::aws_cryptography_materialProviders::types::error::Error::InvalidAlgorithmSuiteInfoOnDecrypt { message } =>
69    crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::InvalidAlgorithmSuiteInfoOnDecrypt {
70        message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::string_to_dafny_string(&message),
71    },
72crate::deps::aws_cryptography_materialProviders::types::error::Error::InvalidAlgorithmSuiteInfoOnEncrypt { message } =>
73    crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::InvalidAlgorithmSuiteInfoOnEncrypt {
74        message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::string_to_dafny_string(&message),
75    },
76crate::deps::aws_cryptography_materialProviders::types::error::Error::InvalidDecryptionMaterials { message } =>
77    crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::InvalidDecryptionMaterials {
78        message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::string_to_dafny_string(&message),
79    },
80crate::deps::aws_cryptography_materialProviders::types::error::Error::InvalidDecryptionMaterialsTransition { message } =>
81    crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::InvalidDecryptionMaterialsTransition {
82        message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::string_to_dafny_string(&message),
83    },
84crate::deps::aws_cryptography_materialProviders::types::error::Error::InvalidEncryptionMaterials { message } =>
85    crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::InvalidEncryptionMaterials {
86        message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::string_to_dafny_string(&message),
87    },
88crate::deps::aws_cryptography_materialProviders::types::error::Error::InvalidEncryptionMaterialsTransition { message } =>
89    crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::InvalidEncryptionMaterialsTransition {
90        message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::string_to_dafny_string(&message),
91    },
92crate::deps::aws_cryptography_materialProviders::types::error::Error::AwsCryptographicPrimitivesError { error } =>
93    crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::AwsCryptographyPrimitives {
94        AwsCryptographyPrimitives: crate::deps::aws_cryptography_primitives::conversions::error::to_dafny(error),
95    },
96crate::deps::aws_cryptography_materialProviders::types::error::Error::DynamoDB_20120810Error { error } =>
97    crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::ComAmazonawsDynamodb {
98        ComAmazonawsDynamodb: crate::deps::com_amazonaws_dynamodb::conversions::error::to_dafny(error),
99    },
100crate::deps::aws_cryptography_materialProviders::types::error::Error::TrentServiceError { error } =>
101    crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::ComAmazonawsKms {
102        ComAmazonawsKms: crate::deps::com_amazonaws_kms::conversions::error::to_dafny(error),
103    },
104crate::deps::aws_cryptography_materialProviders::types::error::Error::KeyStoreError { error } =>
105    crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::AwsCryptographyKeyStore {
106        AwsCryptographyKeyStore: crate::deps::aws_cryptography_keyStore::conversions::error::to_dafny(error),
107    },
108        crate::deps::aws_cryptography_materialProviders::types::error::Error::CollectionOfErrors { list, message } =>
109            crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::CollectionOfErrors {
110                message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::string_to_dafny_string(&message),
111                list: ::dafny_runtime::dafny_runtime_conversions::vec_to_dafny_sequence(&list, |e| to_dafny(e.clone()))
112            },
113        crate::deps::aws_cryptography_materialProviders::types::error::Error::ValidationError(inner) =>
114            crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::Opaque {
115                obj: {
116                    let rc = ::dafny_runtime::Rc::new(inner) as ::dafny_runtime::Rc<::dafny_runtime::DynAny>;
117                    // safety: `rc` is new, ensuring it has refcount 1 and is uniquely owned.
118                    // we should use `dafny_runtime_conversions::rc_struct_to_dafny_class` once it
119                    // accepts unsized types (https://github.com/dafny-lang/dafny/pull/5769)
120                    unsafe { ::dafny_runtime::Object::from_rc(rc) }
121                },
122            },
123            crate::deps::aws_cryptography_materialProviders::types::error::Error::Opaque { obj } =>
124            crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::Opaque {
125                obj: ::dafny_runtime::Object(obj.0)
126            },
127            crate::deps::aws_cryptography_materialProviders::types::error::Error::OpaqueWithText { obj, objMessage } =>
128            crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::OpaqueWithText {
129                obj: ::dafny_runtime::Object(obj.0),
130                objMessage: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::string_to_dafny_string(&objMessage),
131            },
132    })
133}
134
135#[allow(dead_code)]
136pub fn from_dafny(
137    dafny_value: ::dafny_runtime::Rc<
138        crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error,
139    >,
140) -> crate::deps::aws_cryptography_materialProviders::types::error::Error {
141    match ::std::borrow::Borrow::borrow(&dafny_value) {
142        crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::AwsCryptographicMaterialProvidersException { message } =>
143    crate::deps::aws_cryptography_materialProviders::types::error::Error::AwsCryptographicMaterialProvidersException {
144        message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::dafny_string_to_string(&message),
145    },
146crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::EntryAlreadyExists { message } =>
147    crate::deps::aws_cryptography_materialProviders::types::error::Error::EntryAlreadyExists {
148        message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::dafny_string_to_string(&message),
149    },
150crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::EntryDoesNotExist { message } =>
151    crate::deps::aws_cryptography_materialProviders::types::error::Error::EntryDoesNotExist {
152        message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::dafny_string_to_string(&message),
153    },
154crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::InFlightTTLExceeded { message } =>
155    crate::deps::aws_cryptography_materialProviders::types::error::Error::InFlightTtlExceeded {
156        message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::dafny_string_to_string(&message),
157    },
158crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::InvalidAlgorithmSuiteInfo { message } =>
159    crate::deps::aws_cryptography_materialProviders::types::error::Error::InvalidAlgorithmSuiteInfo {
160        message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::dafny_string_to_string(&message),
161    },
162crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::InvalidAlgorithmSuiteInfoOnDecrypt { message } =>
163    crate::deps::aws_cryptography_materialProviders::types::error::Error::InvalidAlgorithmSuiteInfoOnDecrypt {
164        message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::dafny_string_to_string(&message),
165    },
166crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::InvalidAlgorithmSuiteInfoOnEncrypt { message } =>
167    crate::deps::aws_cryptography_materialProviders::types::error::Error::InvalidAlgorithmSuiteInfoOnEncrypt {
168        message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::dafny_string_to_string(&message),
169    },
170crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::InvalidDecryptionMaterials { message } =>
171    crate::deps::aws_cryptography_materialProviders::types::error::Error::InvalidDecryptionMaterials {
172        message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::dafny_string_to_string(&message),
173    },
174crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::InvalidDecryptionMaterialsTransition { message } =>
175    crate::deps::aws_cryptography_materialProviders::types::error::Error::InvalidDecryptionMaterialsTransition {
176        message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::dafny_string_to_string(&message),
177    },
178crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::InvalidEncryptionMaterials { message } =>
179    crate::deps::aws_cryptography_materialProviders::types::error::Error::InvalidEncryptionMaterials {
180        message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::dafny_string_to_string(&message),
181    },
182crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::InvalidEncryptionMaterialsTransition { message } =>
183    crate::deps::aws_cryptography_materialProviders::types::error::Error::InvalidEncryptionMaterialsTransition {
184        message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::dafny_string_to_string(&message),
185    },
186crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::AwsCryptographyPrimitives { AwsCryptographyPrimitives } =>
187    crate::deps::aws_cryptography_materialProviders::types::error::Error::AwsCryptographicPrimitivesError {
188        error: crate::deps::aws_cryptography_primitives::conversions::error::from_dafny(AwsCryptographyPrimitives.clone()),
189    },
190crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::ComAmazonawsDynamodb { ComAmazonawsDynamodb } =>
191    crate::deps::aws_cryptography_materialProviders::types::error::Error::DynamoDB_20120810Error {
192        error: crate::deps::com_amazonaws_dynamodb::conversions::error::from_dafny(ComAmazonawsDynamodb.clone()),
193    },
194crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::ComAmazonawsKms { ComAmazonawsKms } =>
195    crate::deps::aws_cryptography_materialProviders::types::error::Error::TrentServiceError {
196        error: crate::deps::com_amazonaws_kms::conversions::error::from_dafny(ComAmazonawsKms.clone()),
197    },
198crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::AwsCryptographyKeyStore { AwsCryptographyKeyStore } =>
199    crate::deps::aws_cryptography_materialProviders::types::error::Error::KeyStoreError {
200        error: crate::deps::aws_cryptography_keyStore::conversions::error::from_dafny(AwsCryptographyKeyStore.clone()),
201    },
202        crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::CollectionOfErrors { list, message } =>
203            crate::deps::aws_cryptography_materialProviders::types::error::Error::CollectionOfErrors {
204                message: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::dafny_string_to_string(&message),
205                list: ::dafny_runtime::dafny_runtime_conversions::dafny_sequence_to_vec(&list, |e| from_dafny(e.clone()))
206            },
207        crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::Opaque { obj } =>
208            crate::deps::aws_cryptography_materialProviders::types::error::Error::Opaque {
209                obj: obj.clone()
210            },
211            crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::Opaque { obj } =>
212            {
213                use ::std::any::Any;
214                if ::dafny_runtime::is_object!(obj, crate::deps::aws_cryptography_materialProviders::types::error::ValidationError) {
215                    let typed = ::dafny_runtime::cast_object!(obj.clone(), crate::deps::aws_cryptography_materialProviders::types::error::ValidationError);
216                    crate::deps::aws_cryptography_materialProviders::types::error::Error::ValidationError(
217                        // safety: dafny_class_to_struct will increment ValidationError's Rc
218                        unsafe {
219                            ::dafny_runtime::dafny_runtime_conversions::object::dafny_class_to_struct(typed)
220                        }
221                    )
222                } else {
223                    crate::deps::aws_cryptography_materialProviders::types::error::Error::Opaque {
224                        obj: obj.clone()
225                    }
226                }
227            },
228            crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::Error::OpaqueWithText { obj, objMessage } =>
229            {
230                use ::std::any::Any;
231                if ::dafny_runtime::is_object!(obj, crate::deps::aws_cryptography_materialProviders::types::error::ValidationError) {
232                    let typed = ::dafny_runtime::cast_object!(obj.clone(), crate::deps::aws_cryptography_materialProviders::types::error::ValidationError);
233                    crate::deps::aws_cryptography_materialProviders::types::error::Error::ValidationError(
234                        // safety: dafny_class_to_struct will increment ValidationError's Rc
235                        unsafe {
236                            ::dafny_runtime::dafny_runtime_conversions::object::dafny_class_to_struct(typed)
237                        }
238                    )
239                } else {
240                    crate::deps::aws_cryptography_materialProviders::types::error::Error::OpaqueWithText {
241                        obj: obj.clone(),
242                        objMessage: ::dafny_runtime::dafny_runtime_conversions::unicode_chars_false::dafny_string_to_string(&objMessage),
243                    }
244                }
245            },
246    }
247}