diff options
author | Dirkjan Ochtman <dirkjan@ochtman.nl> | 2020-01-29 21:49:42 +0100 |
---|---|---|
committer | Dirkjan Ochtman <dirkjan@ochtman.nl> | 2020-01-29 21:49:44 +0100 |
commit | cb660c7b8d398800d91d7c4c6c3276959fd14e71 (patch) | |
tree | 40f1dfad0cefe21dbcbf7ac1dd2707f7ed8df428 /askama_shared | |
parent | 91c2bbf80468c12d0663330cff185f1d7680c91e (diff) | |
download | askama-cb660c7b8d398800d91d7c4c6c3276959fd14e71.tar.gz askama-cb660c7b8d398800d91d7c4c6c3276959fd14e71.tar.bz2 askama-cb660c7b8d398800d91d7c4c6c3276959fd14e71.zip |
Move parser into askama_shared
Diffstat (limited to '')
-rw-r--r-- | askama_shared/Cargo.toml | 3 | ||||
-rw-r--r-- | askama_shared/src/lib.rs | 1 | ||||
-rw-r--r-- | askama_shared/src/parser.rs (renamed from askama_derive/src/parser.rs) | 6 |
3 files changed, 7 insertions, 3 deletions
diff --git a/askama_shared/Cargo.toml b/askama_shared/Cargo.toml index aefe539..19d3274 100644 --- a/askama_shared/Cargo.toml +++ b/askama_shared/Cargo.toml @@ -18,6 +18,9 @@ yaml = ["serde", "serde_yaml"] [dependencies] askama_escape = { version = "0.3.0", path = "../askama_escape" } humansize = { version = "1.1.0", optional = true } +# default for features for nom don't work result in linker errors: +# https://github.com/rust-lang/rust/issues/62146 +nom = { version = "5", default-features = false, features = ["std"] } num-traits = { version = "0.2.6", optional = true } serde = { version = "1.0", optional = true, features = ["derive"] } serde_derive = { version = "1.0", optional = true } diff --git a/askama_shared/src/lib.rs b/askama_shared/src/lib.rs index 8a64c22..b2f1271 100644 --- a/askama_shared/src/lib.rs +++ b/askama_shared/src/lib.rs @@ -16,6 +16,7 @@ mod error; pub use crate::error::{Error, Result}; pub mod filters; pub mod helpers; +pub mod parser; #[derive(Debug)] pub struct Config<'a> { diff --git a/askama_derive/src/parser.rs b/askama_shared/src/parser.rs index 910815a..9c3358e 100644 --- a/askama_derive/src/parser.rs +++ b/askama_shared/src/parser.rs @@ -5,10 +5,10 @@ use nom::combinator::{complete, map, opt}; use nom::error::ParseError; use nom::multi::{many0, many1, separated_list, separated_nonempty_list}; use nom::sequence::{delimited, pair, tuple}; -use nom::{self, Compare, IResult, InputTake}; +use nom::{self, error_position, Compare, IResult, InputTake}; use std::str; -use askama_shared::Syntax; +use crate::Syntax; #[derive(Debug)] pub enum Expr<'a> { @@ -1042,7 +1042,7 @@ pub fn parse<'a>(src: &'a str, syntax: &'a Syntax<'a>) -> Vec<Node<'a>> { #[cfg(test)] mod tests { - use askama_shared::Syntax; + use crate::Syntax; fn check_ws_split(s: &str, res: &(&str, &str, &str)) { let node = super::split_ws_parts(s.as_bytes()); |