Browse Source

Rename type

tags/v0.0.0-test.4
Philipp Oppermann 3 years ago
parent
commit
933affaf16
Failed to extract signature
4 changed files with 9 additions and 9 deletions
  1. +1
    -1
      apis/rust/operator/macros/src/lib.rs
  2. +3
    -3
      apis/rust/operator/src/raw.rs
  3. +2
    -2
      apis/rust/operator/types/src/lib.rs
  4. +3
    -3
      binaries/runtime/src/operator/shared_lib.rs

+ 1
- 1
apis/rust/operator/macros/src/lib.rs View File

@@ -27,7 +27,7 @@ fn register_operator_impl(item: &TokenStream2) -> syn::Result<TokenStream2> {

let init = quote! {
#[no_mangle]
pub unsafe extern "C" fn dora_init_operator() -> dora_operator_api::types::InitResult {
pub unsafe extern "C" fn dora_init_operator() -> dora_operator_api::types::DoraInitResult {
dora_operator_api::raw::dora_init_operator::<#operator_ty>()
}



+ 3
- 3
apis/rust/operator/src/raw.rs View File

@@ -1,5 +1,5 @@
use crate::{DoraOperator, DoraOutputSender, DoraStatus};
use dora_operator_api_types::{DoraResult, InitResult, Input, OnInputResult, SendOutput};
use dora_operator_api_types::{DoraInitResult, DoraResult, Input, OnInputResult, SendOutput};
use std::ffi::c_void;

pub type OutputFnRaw = unsafe extern "C" fn(
@@ -10,11 +10,11 @@ pub type OutputFnRaw = unsafe extern "C" fn(
output_context: *const c_void,
) -> isize;

pub unsafe fn dora_init_operator<O: DoraOperator>() -> InitResult {
pub unsafe fn dora_init_operator<O: DoraOperator>() -> DoraInitResult {
let operator: O = Default::default();
let ptr: *mut O = Box::leak(Box::new(operator));
let operator_context: *mut c_void = ptr.cast();
InitResult {
DoraInitResult {
result: DoraResult { error: None },
operator_context,
}


+ 2
- 2
apis/rust/operator/types/src/lib.rs View File

@@ -8,14 +8,14 @@ use std::path::Path;
#[ffi_export]
#[repr(C)]
pub struct DoraInitOperator {
pub init_operator: unsafe extern "C" fn() -> InitResult,
pub init_operator: unsafe extern "C" fn() -> DoraInitResult,
}

#[derive_ReprC]
#[ffi_export]
#[repr(C)]
#[derive(Debug)]
pub struct InitResult {
pub struct DoraInitResult {
pub result: DoraResult,
pub operator_context: *mut std::ffi::c_void,
}


+ 3
- 3
binaries/runtime/src/operator/shared_lib.rs View File

@@ -1,7 +1,7 @@
use super::{OperatorEvent, OperatorInput};
use dora_operator_api_types::{
safer_ffi::closure::ArcDynFn1, DoraDropOperator, DoraInitOperator, DoraOnInput, DoraResult,
DoraStatus, InitResult, Metadata, OnInputResult, Output, SendOutput,
safer_ffi::closure::ArcDynFn1, DoraDropOperator, DoraInitOperator, DoraInitResult, DoraOnInput,
DoraResult, DoraStatus, Metadata, OnInputResult, Output, SendOutput,
};
use eyre::{bail, Context};
use libloading::Symbol;
@@ -62,7 +62,7 @@ struct SharedLibraryOperator<'lib> {
impl<'lib> SharedLibraryOperator<'lib> {
fn run(mut self) -> eyre::Result<()> {
let operator_context = {
let InitResult {
let DoraInitResult {
result,
operator_context,
} = unsafe { (self.bindings.init_operator.init_operator)() };


Loading…
Cancel
Save