pub mod async_runtime;
pub mod error;
pub mod object_ref;
pub mod runtime;
pub mod serialize;
pub use rayrust_sys as sys;
pub use ctor;
pub use error::RayError;
pub use object_ref::ObjectRef;
pub use runtime::{ActorHandle, ActorLifetime, ActorOptions, Ray, RayConfig, TaskOptions};
pub use async_runtime::block_on_async;
pub use rmpv;
pub use rayrust_macros::{actor, remote};
pub use serialize::{deserialize, deserialize_value, deserialize_xlang, deserialize_xlang_value, serialize, serialize_xlang};
pub fn register_member_function(
func_name: &str,
callback: extern "C" fn(u64, *const rayrust_sys::RayBytes, usize) -> rayrust_sys::RayBytes,
) {
let name_c = rayrust_sys::to_cstring(func_name);
unsafe {
rayrust_sys::ray_register_member_function(name_c.as_ptr(), callback);
}
}
pub mod prelude {
pub use crate::error::RayError;
pub use crate::object_ref::ObjectRef;
pub use crate::runtime::{ActorHandle, ActorLifetime, ActorOptions, Ray, RayConfig, TaskOptions};
pub use crate::serialize::{
deserialize, deserialize_value, deserialize_xlang, deserialize_xlang_value,
serialize, serialize_xlang,
};
pub use crate::{register_member_function, rmpv};
pub use rayrust_macros::{actor, remote};
}