in releases/go/encryption-sdk/EncryptDecryptHelpers/EncryptDecryptHelpers.go [915:954]
func (_static *CompanionStruct_Default___) ReadAndDecryptNonFramedMessageBody(buffer m_SerializeFunctions.ReadableBuffer, header m_Header.HeaderInfo, key _dafny.Sequence, crypto *m_AtomicPrimitives.AtomicPrimitivesClient) m_Wrappers.Result {
var res m_Wrappers.Result = m_Wrappers.Companion_Result_.Default(_dafny.TupleOf(_dafny.EmptySeq, m_SerializeFunctions.Companion_ReadableBuffer_.Default()))
_ = res
var _0_valueOrError0 m_Wrappers.Result = m_Wrappers.Result{}
_ = _0_valueOrError0
_0_valueOrError0 = (m_MessageBody.Companion_Default___.ReadNonFramedMessageBody(buffer, header)).MapFailure(func(coer29 func(m_SerializeFunctions.ReadProblems) m_AwsCryptographyEncryptionSdkTypes.Error) func(interface{}) interface{} {
return func(arg30 interface{}) interface{} {
return coer29(arg30.(m_SerializeFunctions.ReadProblems))
}
}(Companion_Default___.MapSerializeFailure(_dafny.SeqOfString(": ReadNonFramedMessageBody"))))
if (_0_valueOrError0).IsFailure() {
res = (_0_valueOrError0).PropagateFailure()
return res
}
var _1_messageBody m_SerializeFunctions.SuccessfulRead
_ = _1_messageBody
_1_messageBody = (_0_valueOrError0).Extract().(m_SerializeFunctions.SuccessfulRead)
var _2_frame m_Frames.Frame
_ = _2_frame
_2_frame = (_1_messageBody).Dtor_data().(m_Frames.Frame)
var _3_valueOrError1 m_Wrappers.Result = m_Wrappers.Companion_Result_.Default(_dafny.EmptySeq)
_ = _3_valueOrError1
var _out0 m_Wrappers.Result
_ = _out0
_out0 = m_MessageBody.Companion_Default___.DecryptFrame(_2_frame, key, crypto)
_3_valueOrError1 = _out0
if (_3_valueOrError1).IsFailure() {
res = (_3_valueOrError1).PropagateFailure()
return res
}
var _4_plaintext _dafny.Sequence
_ = _4_plaintext
_4_plaintext = (_3_valueOrError1).Extract().(_dafny.Sequence)
var _5_messageBodyTail m_SerializeFunctions.ReadableBuffer
_ = _5_messageBodyTail
_5_messageBodyTail = (_1_messageBody).Dtor_tail()
res = m_Wrappers.Companion_Result_.Create_Success_(_dafny.TupleOf(_4_plaintext, _5_messageBodyTail))
return res
return res
}