Skip to content

Latest commit

 

History

History
 
 

pomsky-macro

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 

pomsky-macro

This Rust procedural macro allows converting a pomsky expression to a regex string literal at compile time:

use pomsky_macro::pomsky;

const REGEX: &str = pomsky!("foo" | "bar"+ greedy);

This string can then used with the regex crate:

let my_regex = regex::Regex::new(REGEX).unwrap();

Diagnostics

Errors from pomsky are shown at compile time and are highlighted in your IDE. You can improve the diagnostics by enabling the diagnostics feature, which requires Rust Nightly.

Regex flavor

If you want to use a regex flavor other than Rust, you can specify it after a hashtag:

const REGEX: &str = pomsky!(
    #flavor = Pcre
    >> "test" %
);

License

Dual-licensed under the MIT license or the Apache 2.0 license.