##// END OF EJS Templates
discovery: only calculate closed branches if required...
discovery: only calculate closed branches if required The number of new closed branches is required for printing in error message. So let's only calculate them if we need to print error about new branches. Differential Revision: https://phab.mercurial-scm.org/D6314

File last commit:

r42356:13b64247 default
r42402:d0e773ad default
Show More
lib.rs
47 lines | 1.4 KiB | application/rls-services+xml | RustLexer
Georges Racinet
rust-cpython: start cpython crate bindings...
r41001 // lib.rs
//
// Copyright 2018 Georges Racinet <gracinet@anybox.fr>
//
// This software may be used and distributed according to the terms of the
// GNU General Public License version 2 or any later version.
//! Python bindings of `hg-core` objects using the `cpython` crate.
//! Once compiled, the resulting single shared library object can be placed in
//! the `mercurial` package directly as `rustext.so` or `rustext.dll`.
//! It holds several modules, so that from the point of view of Python,
//! it behaves as the `cext` package.
//!
//! Example:
Georges Racinet
rust-cpython: rustdoc improvements...
r41220 //!
//! ```text
Georges Racinet
rust-cpython: start cpython crate bindings...
r41001 //! >>> from mercurial.rustext import ancestor
//! >>> ancestor.__doc__
//! 'Generic DAG ancestor algorithms - Rust implementation'
//! ```
#[macro_use]
extern crate cpython;
extern crate hg;
Georges Racinet
rust-cpython: implement Graph using C parents function...
r41082 extern crate libc;
Georges Racinet
rust-cpython: start cpython crate bindings...
r41001
Georges Racinet
rust-cpython: rustdoc improvements...
r41220 pub mod ancestors;
Georges Racinet
rust-cpython: implement Graph using C parents function...
r41082 mod cindex;
Georges Racinet
rust-cpython: moved generic conversion fn out of ancestors module...
r41276 mod conversion;
Georges Racinet
rust-cpython: binding for headrevs()...
r41843 pub mod dagops;
Georges Racinet
rust-discovery: cpython bindings for the core logic...
r42356 pub mod discovery;
Georges Racinet
rust-cpython: rustdoc improvements...
r41220 pub mod exceptions;
Georges Racinet
rust-cpython: start cpython crate bindings...
r41001
py_module_initializer!(rustext, initrustext, PyInit_rustext, |py, m| {
m.add(
py,
"__doc__",
"Mercurial core concepts - Rust implementation",
)?;
let dotted_name: String = m.get(py, "__name__")?.extract(py)?;
m.add(py, "ancestor", ancestors::init_module(py, &dotted_name)?)?;
Georges Racinet
rust-cpython: binding for headrevs()...
r41843 m.add(py, "dagop", dagops::init_module(py, &dotted_name)?)?;
Georges Racinet
rust-discovery: cpython bindings for the core logic...
r42356 m.add(py, "discovery", discovery::init_module(py, &dotted_name)?)?;
Georges Racinet
rust-cpython: start cpython crate bindings...
r41001 m.add(py, "GraphError", py.get_type::<exceptions::GraphError>())?;
Ok(())
});