Skip to content

Commit e758efe

Browse files
committed
Move struct attribute regex behind unstable feature flag
I'm still working on the interface for this, so things could break.
1 parent c3fccce commit e758efe

File tree

8 files changed

+17
-0
lines changed

8 files changed

+17
-0
lines changed

.github/workflows/cargo-test.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,3 +8,4 @@ jobs:
88
- uses: actions/checkout@v4
99
- run: cargo build
1010
- run: cargo test
11+
- run: cargo test -F unstable-attr-regex

Cargo.toml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,3 +16,9 @@ repository = "https://github.com/2kai2kai2/ere"
1616
[dependencies]
1717
ere-core = { version = "0.2.0", path = "./ere-core" }
1818
ere-macros = { version = "0.2.0", path = "./ere-macros" }
19+
20+
[features]
21+
unstable-attr-regex = [
22+
"ere-core/unstable-attr-regex",
23+
"ere-macros/unstable-attr-regex",
24+
]

ere-core/Cargo.toml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,6 @@ proc-macro2 = "1.0.95"
1212
quote = "1.0.38"
1313
syn = { version = "2.0.96", features = ["parsing"] }
1414
thiserror = "2.0.11"
15+
16+
[features]
17+
unstable-attr-regex = []

ere-core/src/lib.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,7 @@ pub fn __compile_regex(stream: TokenStream) -> TokenStream {
9494
};
9595
}
9696

97+
#[cfg(feature = "unstable-attr-regex")]
9798
pub fn __compile_regex_attr(attr: TokenStream, input: TokenStream) -> TokenStream {
9899
let ere: parse_tree::ERE = syn::parse_macro_input!(attr);
99100
let tree = simplified_tree::SimplifiedTreeNode::from(ere);

ere-macros/Cargo.toml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,3 +14,6 @@ proc-macro = true
1414
ere-core = { version = "0.2.0", path = "../ere-core" }
1515
quote = "1.0.38"
1616
syn = { version = "2.0.96", features = ["parsing"] }
17+
18+
[features]
19+
unstable-attr-regex = ["ere-core/unstable-attr-regex"]

ere-macros/src/lib.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ pub fn compile_regex(stream: TokenStream) -> TokenStream {
2626
return ere_core::__compile_regex(stream);
2727
}
2828

29+
#[cfg(feature = "unstable-attr-regex")]
2930
#[proc_macro_attribute]
3031
pub fn regex(attr: TokenStream, input: TokenStream) -> TokenStream {
3132
return ere_core::__compile_regex_attr(attr, input);

src/lib.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,6 @@ pub use ::ere_macros::*;
1616
pub mod prelude {
1717
pub use ::ere_core::Regex;
1818
pub use ::ere_macros::compile_regex;
19+
#[cfg(feature = "unstable-attr-regex")]
1920
pub use ::ere_macros::regex;
2021
}

tests/pure_regex.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ fn phone_number() {
1616
assert!(!PHONE_REGEX.test("1 555-555-5555"));
1717
}
1818

19+
#[cfg(feature = "unstable-attr-regex")]
1920
#[test]
2021
fn phone_number_struct() {
2122
#[derive(PartialEq, Eq, Debug)]

0 commit comments

Comments
 (0)