Skip to content

Create and export rust C API from the runtime #1682

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Closed
brson opened this issue Jan 27, 2012 · 6 comments
Closed

Create and export rust C API from the runtime #1682

brson opened this issue Jan 27, 2012 · 6 comments
Labels
A-runtime Area: std's runtime and "pre-main" init for handling backtraces, unwinds, stack overflows E-easy Call for participation: Easy difficulty. Experience needed to fix: Not much. Good first issue.

Comments

@brson
Copy link
Contributor

brson commented Jan 27, 2012

More and more people are wanting to interop with the Rust runtime from C code. We need to create a suitable interface for doing such, and not encourage using the builtins or upcalls. I propose using the rust_client_ namespace or rust_api_.

Current functions being abused:

  • new_port
  • del_port
  • chan_id_send
  • upcall_s_shared_malloc
@brson
Copy link
Contributor Author

brson commented Jan 27, 2012

Will also need to start installing a header file

@ghost ghost assigned brson Jan 31, 2012
@brson
Copy link
Contributor Author

brson commented Feb 3, 2012

This may not be needed (at least yet) with #1732

@brson
Copy link
Contributor Author

brson commented Feb 14, 2012

Punting for now since we have callbacks from C.

@mzabaluev
Copy link
Contributor

I'm interested in integrating event loops and I/O channels with foreign code (GLib/Gio). #4419 would hopefully provide a solution to "get the global/thread-local event loop that the other libraries are using and hook into it".

Conversely, there could be an official way to get message channels from the Rust C API, and extract file descriptors/handles to add to an event loop in the foreign code.

@pcwalton
Copy link
Contributor

I don't believe this is backwards incompatible, renominating.

@graydon
Copy link
Contributor

graydon commented May 30, 2013

this seems more like a relic from days of stronger dependency on a specific runtime, closing

@graydon graydon closed this as completed May 30, 2013
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
A-runtime Area: std's runtime and "pre-main" init for handling backtraces, unwinds, stack overflows E-easy Call for participation: Easy difficulty. Experience needed to fix: Not much. Good first issue.
Projects
None yet
Development

No branches or pull requests

4 participants