1#![cfg_attr(feature = "dev", feature(plugin))]
2#![cfg_attr(feature = "dev", plugin(clippy))]
3
4#[macro_export]
7macro_rules! rustr_version{
8 () => (
9 {
10 let mar = 0 * 10000000;
11 let min = 1 * 100000;
12 let rev = 0 * 1000;
13 let dev = 0 * 1;
14 mar + min + rev + dev
15 })
16}
17
18#[macro_use]
21pub mod macros;
22
23#[allow(non_camel_case_types,non_upper_case_globals,non_snake_case)]
24#[cfg_attr(feature = "dev",allow(type_complexity,expl_impl_clone_on_copy,used_underscore_binding))]
25pub mod rdll;
26pub mod protect;
27pub mod storage;
28pub mod rtype;
29#[macro_use]
30pub mod util;
31
32pub mod traits;
33pub mod grow;
34pub mod lcons;
35pub mod rlang;
36pub mod formula;
37pub mod dotpair;
38
39pub mod impls;
40
41
42
43#[macro_use]
44#[allow(non_camel_case_types,non_upper_case_globals,non_snake_case)]
45pub mod rwrap;
46pub mod complex;
47pub mod rptr;
48pub mod rweak;
49pub mod result;
50pub mod error;
51pub mod eval;
52pub mod rcast;
53
54pub mod vector;
55pub mod vectorx;
56
57pub mod name_object;
58pub mod robject;
61pub mod symbol;
62pub mod promise;
63pub mod s4;
64pub mod reference;
65pub mod rmath;
66pub mod environment;
67pub mod rfunction;
68pub mod rchar;
69
70pub mod dll;
71pub use dll::*;
72pub mod rstatic;
73
74#[cfg(feature = "date")]
77extern crate chrono;
78
79#[cfg(feature = "random")]
80extern crate rand;
81
82#[cfg(feature = "logging")]
83extern crate log;
84
85pub mod feature {
86
87 #[cfg(feature = "date")]
94 pub mod date;
95 #[cfg(feature = "date")]
96 pub mod datetime;
97 #[cfg(feature = "engine")]
98 pub mod engine;
99 #[cfg(feature = "random")]
100 pub mod random;
101 #[cfg(feature = "logging")]
102 pub mod log;
103}
104
105#[cfg(feature = "ty_nalgebra")]
106extern crate nalgebra;
107
108#[cfg(any(feature = "ty_num",feature = "ty_nalgebra"))]
109extern crate num;
110
111pub mod types {
112
113 #[cfg(feature = "ty_nalgebra")]
118 pub mod nalgebra;
119 #[cfg(feature = "ty_num")]
120 pub mod num;
121}
122
123pub mod sugar {
124 use error::RResult;
126 pub type RR<T> = RResult<T>;
127}
128
129pub use traits::*;
130pub use error::*;
131pub use macros::*;
132pub use vector::*;
133pub use rtype::*;
134pub use rdll::*;
135pub use protect::stackp::*;
136pub use storage::*;
137pub use rfunction::*;
138pub use environment::*;
139pub use robject::*;
140pub use vectorx::*;
141pub use util::rprint;
142pub use rchar::*;
143