1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
//! This crate aims to provide a full-featured, practical, and efficient Rust
//! reimplementation of [Scoop], the Windows command-line installer. It is a
//! library crate providing the core functionality of interacting with Scoop,
//! and is not intended to be used directly by end users. Developers who wish
//! to implement a Scoop frontend or make use of Scoop's functionality in their
//! own applications may use this crate. For end users, they may take a glance
//! at [Hok], a reference implementation built on top of this crate, which
//! provides a command-line interface similar to Scoop.
//!
//! # Overview
//!
//! The primary type in this crate is a [`Session`], which is an entry point to
//! this crate. A session instance is basically a handle to the global state of
//! libscoop. Most of the functions exposed by this crate take a session as
//! their first argument.
//!
//! ## Examples
//!
//! Initialize a Scoop session, get the configuration associated with the
//! session, and print the root path of Scoop to stdout:
//!
//! ```rust
//! use libscoop::Session;
//! let session = Session::new();
//! let config = session.config();
//! println!("{}", config.root_path().display());
//! ```
//!
//! [Scoop]: https://scoop.sh/
//! [Hok]: https://github.com/chawyehsu/hok
extern crate serde;
pub use Error;
pub use Event;
pub use ;
pub use Session;