add MountedBinaryResult

This commit is contained in:
vms 2021-02-19 17:14:50 +03:00
parent 8d427c0e72
commit a04f4ce4ba
3 changed files with 42 additions and 0 deletions

View File

@ -35,6 +35,7 @@ mod call_parameters;
mod export_allocator;
#[cfg(any(feature = "debug", feature = "logger"))]
mod logger;
mod mounted_binary_result;
mod result;
pub use call_parameters::CallParameters;
@ -52,6 +53,8 @@ pub use logger::TargetMap;
#[cfg(feature = "logger")]
pub use logger::WASM_LOG_ENV_NAME;
pub use mounted_binary_result::MountedBinaryResult;
pub use result::get_result_ptr;
pub use result::get_result_size;
pub use result::set_result_ptr;

View File

@ -0,0 +1,37 @@
/*
* Copyright 2020 Fluence Labs Limited
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
use fluence_sdk_macro::fce;
use serde::Serialize;
use serde::Deserialize;
pub const SUCCESS_CODE: i32 = 0;
/// Describes result of calling a CLI service.
#[fce]
#[derive(Clone, PartialEq, Default, Eq, Debug, Serialize, Deserialize)]
pub struct MountedBinaryResult {
/// Return code, where SUCCESS_CODE means succes.
pub ret_code: i32,
/// Contains error message if ret_code != SUCCESS_CODE.
pub error_message: String,
/// Contains an output of a CLI service. Note that it could be non-empty even if
/// there was an error.
pub result: String,
}

View File

@ -79,6 +79,8 @@ pub use fluence_sdk_main::WasmLoggerBuilder;
#[cfg(feature = "logger")]
pub use fluence_sdk_main::TargetMap;
pub use fluence_sdk_main::MountedBinaryResult;
/// These API functions are intended for internal usage in generated code.
/// Normally, you shouldn't use them.
pub mod internal {