Added and updated documentation and tests
Some undocumented functions and methods are now documented and tested. Some doc tests were modified to become compilable, going from `ignore` to `no_run`, or runable, going from `no_run` to regular tests.
This commit is contained in:
parent
8ddd33d76d
commit
78541f10ba
@ -24,17 +24,17 @@ const RULESET_CURRENT_VERSION: i32 = 1;
|
|||||||
///
|
///
|
||||||
/// # Example
|
/// # Example
|
||||||
///
|
///
|
||||||
/// ```ignore
|
/// ```no_run
|
||||||
/// # use lang_evolve_core::settings::*;
|
|
||||||
/// # use lang_evolve_core::encode_settings;
|
|
||||||
/// use std::io::{Error, ErrorKind};
|
|
||||||
/// use std::path::Path;
|
/// use std::path::Path;
|
||||||
/// let filetype = utils::get_file_type(Path::new("./path/to/file.json"));
|
/// use lang_evolve_core::utils;
|
||||||
/// let s = Settings::new();
|
///
|
||||||
|
/// let settings = Settings::new();
|
||||||
|
/// let filetype = utils::get_file_type(Path::new("settings.yml"));
|
||||||
|
///
|
||||||
/// let content = match filetype {
|
/// let content = match filetype {
|
||||||
/// utils::SettingsType::Yaml => encode_settings!(serde_yaml, &s).unwrap(),
|
/// SettingsType::Yaml => encode_settings!(serde_yaml, &settings),
|
||||||
/// utils::SettingsType::Json => encode_settings!(serde_json, &s).unwrap(),
|
/// SettingsType::Json => encode_settings!(serde_json, &settings),
|
||||||
/// _ => panic!("Could not encode settings"),
|
/// _ => String::from("Error!"),
|
||||||
/// };
|
/// };
|
||||||
/// ```
|
/// ```
|
||||||
///
|
///
|
||||||
@ -64,7 +64,7 @@ macro_rules! encode_settings {
|
|||||||
///
|
///
|
||||||
/// # Example
|
/// # Example
|
||||||
///
|
///
|
||||||
/// ```ignore
|
/// ```no_run
|
||||||
/// # use lang_evolve_core::decode_settings;
|
/// # use lang_evolve_core::decode_settings;
|
||||||
/// let str = r#"{"version":"1","categories":[],"rules":[]}"#;
|
/// let str = r#"{"version":"1","categories":[],"rules":[]}"#;
|
||||||
/// let settings = decode_settings!(serde_json, str);
|
/// let settings = decode_settings!(serde_json, str);
|
||||||
@ -162,9 +162,15 @@ impl Settings {
|
|||||||
///
|
///
|
||||||
/// # Example
|
/// # Example
|
||||||
///
|
///
|
||||||
/// ```no_run
|
/// ```
|
||||||
/// use std::path::Path;
|
/// use std::path::Path;
|
||||||
/// use lang_evolve_core::settings::Settings;
|
/// # use lang_evolve_core::settings::Settings;
|
||||||
|
/// # let s = Settings::new();
|
||||||
|
/// # for path in vec!["settings.json", "settings.yaml", "settings.yml"] {
|
||||||
|
/// # let path = Path::new(path);
|
||||||
|
/// # s.export(&path).unwrap();
|
||||||
|
/// # }
|
||||||
|
///
|
||||||
/// let path_json = Path::new("settings.json");
|
/// let path_json = Path::new("settings.json");
|
||||||
/// let _s_json = Settings::import(&path_json).unwrap();
|
/// let _s_json = Settings::import(&path_json).unwrap();
|
||||||
///
|
///
|
||||||
|
@ -29,6 +29,15 @@ impl Rule {
|
|||||||
/// the input text
|
/// the input text
|
||||||
/// * `to` - literal string that represents the regex text that should
|
/// * `to` - literal string that represents the regex text that should
|
||||||
/// replaced the text matched by `from`
|
/// replaced the text matched by `from`
|
||||||
|
///
|
||||||
|
/// # Example
|
||||||
|
/// ```
|
||||||
|
/// # use lazy_static::lazy_static;
|
||||||
|
/// # #[path = "mod.rs"]
|
||||||
|
/// # mod rule;
|
||||||
|
/// # use rule::Rule;
|
||||||
|
/// let rule = Rule::new("ab+c*", "ab");
|
||||||
|
/// ```
|
||||||
pub fn new(from: &str, to: &str) -> Self {
|
pub fn new(from: &str, to: &str) -> Self {
|
||||||
Rule {
|
Rule {
|
||||||
from: Regex::new(from),
|
from: Regex::new(from),
|
||||||
|
@ -4,10 +4,16 @@ use std::{fmt, ops};
|
|||||||
pub struct Regex(regex::Regex);
|
pub struct Regex(regex::Regex);
|
||||||
|
|
||||||
impl Regex {
|
impl Regex {
|
||||||
|
/// Create a new Regex wrapper around regex::Regex;
|
||||||
|
///
|
||||||
|
/// # Arguments
|
||||||
|
///
|
||||||
|
/// * `s` - string litteral from which to create the new Regex
|
||||||
pub fn new(s: &str) -> Self {
|
pub fn new(s: &str) -> Self {
|
||||||
Self(regex::Regex::new(s).unwrap())
|
Self(regex::Regex::new(s).unwrap())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Returns a string literal representation of the Regex
|
||||||
pub fn as_str(&self) -> &str {
|
pub fn as_str(&self) -> &str {
|
||||||
self.0.as_str()
|
self.0.as_str()
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user