##// END OF EJS Templates
rust: exposing in parsers module...
rust: exposing in parsers module To build with the Rust code, set the HGWITHRUSTEXT environment variable. At this point, it's possible to instantiate and use a rustlazyancestors object from a Python interpreter. The changes in setup.py are obviously a quick hack, just good enough to test/bench without much refactoring. We'd be happy to improve on that with help from the community. Rust bindings crate gets compiled as a static library, which in turn gets linked within 'parsers.so' With respect to the plans at https://www.mercurial-scm.org/wiki/OxidationPlan this would probably qualify as "roll our own FFI". Also, it doesn't quite meet the target of getting rid of C code, since it brings actually more, yet: - the new C code does nothing else than parsing arguments and calling Rust functions. In particular, there's no complex allocation involved. - subsequent changes could rewrite more of revlog.c, this time resulting in an overall decrease of C code and unsafety.
Georges Racinet -
r40309:3b275f54 default
Show More
Name Size Modified Last Commit Author
/ rust / chg / src
attachio.rs Loading ...
clientext.rs Loading ...
lib.rs Loading ...
locator.rs Loading ...
main.rs Loading ...
message.rs Loading ...
procutil.rs Loading ...
runcommand.rs Loading ...
sendfds.c Loading ...
sighandlers.c Loading ...
uihandler.rs Loading ...