Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Consider making objc no_std compatible #51

Open
SSheldon opened this issue Feb 5, 2017 · 1 comment
Open

Consider making objc no_std compatible #51

SSheldon opened this issue Feb 5, 2017 · 1 comment

Comments

@SSheldon
Copy link
Owner

SSheldon commented Feb 5, 2017

This crate is mainly just a wrapper around the objc runtime dylib, so it shouldn't need much else. If we can make it no_std then it might be usable in more places, perhaps even in the rust compiler itself.

The current std dependencies that aren't part of libcore are:

  • Nul-terminating &str via CString in the runtime module and the declare module
  • Reading the length of a C string via CStr in the runtime module and for Encoding
  • Using a String in Encoding to store dynamically-sized, runtime defined type encodings
  • Allocating a buffer via String when declaring methods to represent their type encodings in the declare module
  • Using a String in the representation of MessageError
  • Implementing the Error trait for MessageError
  • Using the std::os::raw types instead of the libc types in the runtime module and for implementing the Encode trait
@SSheldon
Copy link
Owner Author

SSheldon commented Feb 5, 2017

Current thoughts on how this could be possible:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant