flapigen 0.11.0

Tool for connecting libraries written in Rust with other languages
Documentation
r##"#[unsafe(no_mangle)]
pub extern "C" fn Java_org_example_NavigationService_do_1subscribeOnUpdates(
    env: *mut JNIEnv,
    _: jclass,
    this: jlong,
    session: jlong,
) -> () {
    let session: *mut RefCell<Session> = unsafe {
        jlong_to_pointer::<RefCell<Session>>(session)
            .as_mut()
            .unwrap()
    };
    let session: Rc<RefCell<Session>> = unsafe { Rc::from_raw(session) };
    let tmp: Rc<RefCell<Session>> = session;
    let session: Rc<RefCell<Session>> = tmp.clone();
    ::std::mem::forget(tmp);
    let this: &mut RefCell<NavigationService> = unsafe {
        jlong_to_pointer::<RefCell<NavigationService>>(this)
            .as_mut()
            .unwrap()
    };
    let mut this: &RefCell<NavigationService> = this;
    let mut this: RefMut<NavigationService> = this.borrow_mut();
    let mut this: &mut NavigationService = &mut this;
    let mut ret: () = subscribeOnUpdates(this, session);
    ret
}"##;

r##"#[unsafe(no_mangle)]
pub extern "C" fn Java_org_example_Session_do_1setFoo(
    env: *mut JNIEnv,
    _: jclass,
    this: jlong,
    a0: jint,
) -> () {
    let mut a0: i32 = a0;
    let this: &mut RefCell<Session> =
        unsafe { jlong_to_pointer::<RefCell<Session>>(this).as_mut().unwrap() };
    let mut this: &RefCell<Session> = this;
    let mut this: RefMut<Session> = this.borrow_mut();
    let mut this: &mut Session = &mut this;
    let mut ret: () = setFoo(this, a0);
    ret
}"##;