Added num/malachite features for format crate (#109)

This commit is contained in:
Harsha Teja Kanna 2023-12-27 21:52:22 -06:00 committed by GitHub
parent 29c4728dbe
commit 8731e9fc50
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 14 additions and 5 deletions

View file

@ -20,7 +20,7 @@ rustpython-parser-vendored = { path = "vendored", version = "0.3.0" }
rustpython-ast = { path = "ast", default-features = false, version = "0.3.0" } rustpython-ast = { path = "ast", default-features = false, version = "0.3.0" }
rustpython-parser-core = { path = "core", features = [], version = "0.3.0" } rustpython-parser-core = { path = "core", features = [], version = "0.3.0" }
rustpython-literal = { path = "literal", version = "0.3.0" } rustpython-literal = { path = "literal", version = "0.3.0" }
rustpython-format = { path = "format", version = "0.3.0" } rustpython-format = { path = "format", default-features = false, version = "0.3.0" }
rustpython-parser = { path = "parser", default-features = false, version = "0.3.0" } rustpython-parser = { path = "parser", default-features = false, version = "0.3.0" }
anyhow = "1.0.45" anyhow = "1.0.45"

View file

@ -8,10 +8,14 @@ repository = { workspace = true }
license = { workspace = true } license = { workspace = true }
rust-version = { workspace = true } rust-version = { workspace = true }
[features]
default = ["malachite-bigint"]
[dependencies] [dependencies]
rustpython-literal = { workspace = true } rustpython-literal = { workspace = true }
bitflags = { workspace = true } bitflags = { workspace = true }
itertools = { workspace = true } itertools = { workspace = true }
malachite-bigint = { workspace = true } malachite-bigint = { workspace = true, optional = true }
num-bigint = { workspace = true, optional = true }
num-traits = { workspace = true } num-traits = { workspace = true }

4
format/src/bigint.rs Normal file
View file

@ -0,0 +1,4 @@
#[cfg(feature = "malachite-bigint")]
pub use malachite_bigint::{BigInt, Sign};
#[cfg(feature = "num-bigint")]
pub use num_bigint::{BigInt, Sign};

View file

@ -1,7 +1,7 @@
//! Implementation of Printf-Style string formatting //! Implementation of Printf-Style string formatting
//! as per the [Python Docs](https://docs.python.org/3/library/stdtypes.html#printf-style-string-formatting). //! as per the [Python Docs](https://docs.python.org/3/library/stdtypes.html#printf-style-string-formatting).
use crate::bigint::{BigInt, Sign};
use bitflags::bitflags; use bitflags::bitflags;
use malachite_bigint::{BigInt, Sign};
use num_traits::Signed; use num_traits::Signed;
use rustpython_literal::{float, format::Case}; use rustpython_literal::{float, format::Case};
use std::{ use std::{

View file

@ -1,5 +1,5 @@
use crate::bigint::{BigInt, Sign};
use itertools::{Itertools, PeekingNext}; use itertools::{Itertools, PeekingNext};
use malachite_bigint::{BigInt, Sign};
use num_traits::FromPrimitive; use num_traits::FromPrimitive;
use num_traits::{cast::ToPrimitive, Signed}; use num_traits::{cast::ToPrimitive, Signed};
use rustpython_literal::float; use rustpython_literal::float;

View file

@ -1,3 +1,4 @@
mod bigint;
pub mod cformat; pub mod cformat;
mod format; mod format;

View file

@ -24,7 +24,7 @@ phf_codegen = "0.11.1"
tiny-keccak = { version = "2", features = ["sha3"] } tiny-keccak = { version = "2", features = ["sha3"] }
[dependencies] [dependencies]
rustpython-ast = { workspace = true } rustpython-ast = { workspace = true, default-features = false }
rustpython-parser-core = { workspace = true } rustpython-parser-core = { workspace = true }
itertools = { workspace = true } itertools = { workspace = true }