1pub use crate::{
46 Altrep,
48 AltrepComplex,
49 AltrepInteger,
50 AltrepList,
51 AltrepLogical,
52 AltrepRaw,
53 AltrepReal,
54 AltrepString,
55 ExternalPtr,
56 MatchArg,
57 RFactor,
58 list,
59 miniextendr,
60 typed_dataframe,
61 typed_list,
62};
63pub use crate::altrep::RegisterAltrep;
67pub use crate::{
69 AltComplexData, AltIntegerData, AltListData, AltLogicalData, AltRawData, AltRealData,
70 AltStringData, AltrepExtract, AltrepLen, Coerce, IntoR, IntoRAltrep, TryCoerce, TryFromSexp,
71};
72pub use crate::{
76 IntoList, Lazy, List, ListBuilder, ListMut, Missing, NamedVector, OwnedProtect, ProtectScope,
77 Protected, ProtectedStrVec, RCow, StrVec, StrVecBuilder,
78};
79pub use crate::{
88 BuiltDataFrame, ColumnarFrame, DataFrame, DataFrameError, DataFrameRow, FromDataFrame,
89 IntoDataFrame, IntoDataFrameSplit,
90};
91#[cfg(feature = "vctrs")]
103pub use crate::AsVctrsExt;
104pub use crate::{
105 AsDataFrameExt, AsExternalPtrExt, AsListExt, AsNamedListExt, AsNamedVectorExt, AsRNativeExt,
106};
107pub use crate::{Sendable, with_r_thread};
111pub use crate::{r_print, r_println, r_warning};
115pub use crate::expression::r_eval_str;
122pub use crate::{r, r_str};
123pub use crate::{SEXP, SexpExt};
138#[cfg(feature = "either")]
144pub use crate::{Either, Left, Right};
145
146#[cfg(feature = "either")]
147pub use either;
148
149#[cfg(feature = "uuid")]
151pub use crate::{RUuidOps, Uuid};
152#[cfg(feature = "uuid")]
153pub use uuid;
154
155#[cfg(feature = "regex")]
157pub use crate::{CaptureGroups, RRegexOps, Regex};
158#[cfg(feature = "regex")]
159pub use regex;
160
161#[cfg(feature = "url")]
163pub use crate::{RUrlOps, Url};
164#[cfg(feature = "url")]
165pub use url;
166
167#[cfg(feature = "time")]
169pub use crate::{Date, Duration, OffsetDateTime, RDuration};
170#[cfg(feature = "time")]
171pub use time;
172
173#[cfg(feature = "ordered-float")]
175pub use crate::{OrderedFloat, ROrderedFloatOps};
176#[cfg(feature = "ordered-float")]
177pub use ordered_float;
178
179#[cfg(feature = "num-bigint")]
181pub use crate::{BigInt, BigUint, RBigIntOps, RBigUintOps};
182#[cfg(feature = "num-bigint")]
183pub use num_bigint;
184
185#[cfg(feature = "rust_decimal")]
187pub use crate::{Decimal, RDecimalOps};
188#[cfg(feature = "rust_decimal")]
189pub use rust_decimal;
190
191#[cfg(feature = "num-complex")]
193pub use crate::{Complex, RComplexOps};
194#[cfg(feature = "num-complex")]
195pub use num_complex;
196
197#[cfg(feature = "num-traits")]
199pub use crate::{RFloat, RNum, RSigned};
200#[cfg(feature = "num-traits")]
201pub use num_traits;
202
203#[cfg(feature = "ndarray")]
205pub use crate::{
206 Array1, Array2, Array3, Array4, Array5, Array6, ArrayD, ArrayView1, ArrayView2, ArrayViewD,
207 ArrayViewMut1, ArrayViewMut2, ArrayViewMutD, RNdArrayOps,
208};
209#[cfg(feature = "ndarray")]
210pub use ndarray;
211
212#[cfg(feature = "nalgebra")]
214pub use crate::{DMatrix, DVector, RMatrixOps, RVectorOps, SMatrix, SVector};
215#[cfg(feature = "nalgebra")]
216pub use nalgebra;
217
218#[cfg(feature = "indexmap")]
220pub use crate::{IndexMap, RIndexMapOps};
221#[cfg(feature = "indexmap")]
222pub use indexmap;
223
224#[cfg(feature = "rayon")]
226pub use crate::{RParallelExtend, RParallelIterator};
227#[cfg(feature = "rayon")]
228pub use rayon;
229
230#[cfg(feature = "rand")]
232pub use crate::{RDistributionOps, RDistributions, RRng, RRngOps};
233#[cfg(feature = "rand")]
234pub use rand;
235#[cfg(feature = "rand_distr")]
236pub use rand_distr;
237
238#[cfg(feature = "serde")]
240pub use crate::serde::{AsSerialize, RDeserializeNative, RSerializeNative};
241#[cfg(feature = "serde")]
242pub use serde;
243
244#[cfg(feature = "serde_json")]
246pub use crate::{JsonOptions, JsonValue, RDeserialize, RSerialize};
247#[cfg(feature = "serde_json")]
248pub use serde_json;
249
250#[cfg(feature = "toml")]
252pub use crate::{TomlValue, toml_from_str, toml_to_string};
253#[cfg(feature = "toml")]
254pub use toml;
255
256#[cfg(feature = "bytes")]
258pub use crate::{Bytes, BytesMut, RBuf, RBufMut};
259#[cfg(feature = "bytes")]
260pub use bytes;
261
262#[cfg(feature = "aho-corasick")]
264pub use crate::{AhoCorasick, aho_compile};
265#[cfg(feature = "aho-corasick")]
266pub use aho_corasick;
267
268#[cfg(feature = "bitflags")]
270pub use crate::RFlags;
271#[cfg(feature = "bitflags")]
272pub use bitflags;
273
274#[cfg(feature = "bitvec")]
276pub use crate::RBitVec;
277#[cfg(feature = "bitvec")]
278pub use bitvec;
279
280#[cfg(feature = "borsh")]
282pub use crate::{Borsh, RBorshOps};
283#[cfg(feature = "borsh")]
284pub use borsh;
285
286#[cfg(feature = "raw_conversions")]
288pub use crate::{Pod, Raw, RawSlice, Zeroable};
289#[cfg(feature = "raw_conversions")]
290pub use bytemuck;
291
292#[cfg(feature = "sha2")]
294pub use crate::{sha256_bytes, sha256_str, sha512_bytes, sha512_str};
295#[cfg(feature = "sha2")]
296pub use sha2;
297
298#[cfg(feature = "tabled")]
300pub use crate::{Table, Tabled, table_to_string};
301#[cfg(feature = "tabled")]
302pub use tabled;
303
304#[cfg(feature = "tinyvec")]
306pub use crate::{ArrayVec, TinyVec};
307#[cfg(feature = "tinyvec")]
308pub use tinyvec;
309
310#[cfg(feature = "indicatif")]
312pub use crate::progress;
313#[cfg(feature = "indicatif")]
314pub use indicatif;
315
316#[cfg(feature = "vctrs")]
318pub use crate::{IntoVctrs, VctrsClass};
319