chore: impl Debug for all struct and enum
This commit is contained in:
parent
128825f148
commit
6b1e2a26be
|
@ -1,4 +1,5 @@
|
||||||
#[cfg_attr(test, derive(PartialEq, Debug))]
|
#[cfg_attr(test, derive(PartialEq))]
|
||||||
|
#[derive(Debug)]
|
||||||
pub struct Block;
|
pub struct Block;
|
||||||
|
|
||||||
impl Block {
|
impl Block {
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
#[cfg_attr(test, derive(PartialEq, Debug))]
|
#[cfg_attr(test, derive(PartialEq))]
|
||||||
|
#[derive(Debug)]
|
||||||
pub struct DynBlock<'a> {
|
pub struct DynBlock<'a> {
|
||||||
pub name: &'a str,
|
pub name: &'a str,
|
||||||
pub para: &'a str,
|
pub para: &'a str,
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
#[cfg_attr(test, derive(PartialEq, Debug))]
|
#[cfg_attr(test, derive(PartialEq))]
|
||||||
|
#[derive(Debug)]
|
||||||
pub struct FnDef<'a> {
|
pub struct FnDef<'a> {
|
||||||
pub label: &'a str,
|
pub label: &'a str,
|
||||||
pub contents: &'a str,
|
pub contents: &'a str,
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
#[cfg_attr(test, derive(PartialEq, Debug))]
|
#[cfg_attr(test, derive(PartialEq))]
|
||||||
|
#[derive(Debug)]
|
||||||
pub struct Keyword<'a> {
|
pub struct Keyword<'a> {
|
||||||
pub key: &'a str,
|
pub key: &'a str,
|
||||||
pub value: &'a str,
|
pub value: &'a str,
|
||||||
|
@ -6,11 +7,14 @@ pub struct Keyword<'a> {
|
||||||
|
|
||||||
impl<'a> Keyword<'a> {
|
impl<'a> Keyword<'a> {
|
||||||
pub fn parse(src: &'a str) -> Option<(Keyword<'a>, usize)> {
|
pub fn parse(src: &'a str) -> Option<(Keyword<'a>, usize)> {
|
||||||
|
if cfg!(test) {
|
||||||
starts_with!(src, "#+");
|
starts_with!(src, "#+");
|
||||||
|
}
|
||||||
|
|
||||||
let key = until_while!(src, 2, b':', |c: u8| c.is_ascii_uppercase() || c == b'_');
|
let key = until_while!(src, 2, b':', |c: u8| c.is_ascii_uppercase() || c == b'_');
|
||||||
|
|
||||||
let end = eol!(src);
|
// includes the eol character
|
||||||
|
let end = src.find('\n').map(|i| i + 1).unwrap_or(src.len());
|
||||||
|
|
||||||
Some((
|
Some((
|
||||||
Keyword {
|
Keyword {
|
||||||
|
@ -22,14 +26,16 @@ impl<'a> Keyword<'a> {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(test, derive(PartialEq, Debug))]
|
#[cfg_attr(test, derive(PartialEq))]
|
||||||
|
#[derive(Debug)]
|
||||||
pub struct AffKeyword<'a> {
|
pub struct AffKeyword<'a> {
|
||||||
pub key: AffKeywordKey<'a>,
|
pub key: AffKeywordKey<'a>,
|
||||||
pub option: Option<&'a str>,
|
pub option: Option<&'a str>,
|
||||||
pub value: &'a str,
|
pub value: &'a str,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(test, derive(PartialEq, Debug))]
|
#[cfg_attr(test, derive(PartialEq))]
|
||||||
|
#[derive(Debug)]
|
||||||
pub enum AffKeywordKey<'a> {
|
pub enum AffKeywordKey<'a> {
|
||||||
Caption,
|
Caption,
|
||||||
Header,
|
Header,
|
||||||
|
@ -141,13 +147,13 @@ fn parse() {
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
Keyword::parse("#+KEY:VALUE").unwrap(),
|
Keyword::parse("#+KEY:VALUE\n").unwrap(),
|
||||||
(
|
(
|
||||||
Keyword {
|
Keyword {
|
||||||
key: "KEY",
|
key: "KEY",
|
||||||
value: "VALUE",
|
value: "VALUE",
|
||||||
},
|
},
|
||||||
"#+KEY:VALUE".len()
|
"#+KEY:VALUE\n".len()
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
assert!(Keyword::parse("#+KE Y: VALUE").is_none());
|
assert!(Keyword::parse("#+KE Y: VALUE").is_none());
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
#[cfg_attr(test, derive(PartialEq, Debug))]
|
#[cfg_attr(test, derive(PartialEq))]
|
||||||
|
#[derive(Debug)]
|
||||||
pub struct Rule;
|
pub struct Rule;
|
||||||
|
|
||||||
impl Rule {
|
impl Rule {
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
#[cfg_attr(test, derive(PartialEq, Debug))]
|
#[cfg_attr(test, derive(PartialEq))]
|
||||||
|
#[derive(Debug)]
|
||||||
pub struct Headline<'a> {
|
pub struct Headline<'a> {
|
||||||
pub level: usize,
|
pub level: usize,
|
||||||
pub priority: Option<char>,
|
pub priority: Option<char>,
|
||||||
|
|
|
@ -1,11 +1,14 @@
|
||||||
#[cfg_attr(test, derive(PartialEq, Debug))]
|
#[cfg_attr(test, derive(PartialEq))]
|
||||||
|
#[derive(Debug)]
|
||||||
pub struct Cookie<'a> {
|
pub struct Cookie<'a> {
|
||||||
value: &'a str,
|
value: &'a str,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<'a> Cookie<'a> {
|
impl<'a> Cookie<'a> {
|
||||||
pub fn parse(src: &'a str) -> Option<(Cookie<'a>, usize)> {
|
pub fn parse(src: &'a str) -> Option<(Cookie<'a>, usize)> {
|
||||||
|
if cfg!(test) {
|
||||||
starts_with!(src, '[');
|
starts_with!(src, '[');
|
||||||
|
}
|
||||||
|
|
||||||
let num1 = until_while!(src, 1, |c| c == b'%' || c == b'/', |c: u8| c
|
let num1 = until_while!(src, 1, |c| c == b'%' || c == b'/', |c: u8| c
|
||||||
.is_ascii_digit());
|
.is_ascii_digit());
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
#[cfg_attr(test, derive(PartialEq, Debug))]
|
#[cfg_attr(test, derive(PartialEq))]
|
||||||
|
#[derive(Debug)]
|
||||||
pub struct FnRef<'a> {
|
pub struct FnRef<'a> {
|
||||||
label: Option<&'a str>,
|
label: Option<&'a str>,
|
||||||
definition: Option<&'a str>,
|
definition: Option<&'a str>,
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
#[cfg_attr(test, derive(PartialEq, Debug))]
|
#[cfg_attr(test, derive(PartialEq))]
|
||||||
|
#[derive(Debug)]
|
||||||
pub struct Fragment<'a> {
|
pub struct Fragment<'a> {
|
||||||
value: &'a str,
|
value: &'a str,
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
#[cfg_attr(test, derive(PartialEq, Debug))]
|
#[cfg_attr(test, derive(PartialEq))]
|
||||||
|
#[derive(Debug)]
|
||||||
pub struct InlineCall<'a> {
|
pub struct InlineCall<'a> {
|
||||||
pub name: &'a str,
|
pub name: &'a str,
|
||||||
pub args: &'a str,
|
pub args: &'a str,
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
#[cfg_attr(test, derive(PartialEq, Debug))]
|
#[cfg_attr(test, derive(PartialEq))]
|
||||||
|
#[derive(Debug)]
|
||||||
pub struct InlineSrc<'a> {
|
pub struct InlineSrc<'a> {
|
||||||
pub lang: &'a str,
|
pub lang: &'a str,
|
||||||
pub option: Option<&'a str>,
|
pub option: Option<&'a str>,
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
#[cfg_attr(test, derive(PartialEq, Debug))]
|
#[cfg_attr(test, derive(PartialEq))]
|
||||||
|
#[derive(Debug)]
|
||||||
pub struct Link<'a> {
|
pub struct Link<'a> {
|
||||||
pub path: &'a str,
|
pub path: &'a str,
|
||||||
pub desc: Option<&'a str>,
|
pub desc: Option<&'a str>,
|
||||||
|
@ -6,7 +7,9 @@ pub struct Link<'a> {
|
||||||
|
|
||||||
impl<'a> Link<'a> {
|
impl<'a> Link<'a> {
|
||||||
pub fn parse(src: &'a str) -> Option<(Link<'a>, usize)> {
|
pub fn parse(src: &'a str) -> Option<(Link<'a>, usize)> {
|
||||||
|
if cfg!(test) {
|
||||||
starts_with!(src, "[[");
|
starts_with!(src, "[[");
|
||||||
|
}
|
||||||
|
|
||||||
let path = until_while!(src, 2, b']', |c| c != b']'
|
let path = until_while!(src, 2, b']', |c| c != b']'
|
||||||
&& c != b'<'
|
&& c != b'<'
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
use jetscii::Substring;
|
use jetscii::Substring;
|
||||||
|
|
||||||
#[cfg_attr(test, derive(PartialEq, Debug))]
|
#[cfg_attr(test, derive(PartialEq))]
|
||||||
|
#[derive(Debug)]
|
||||||
pub struct Macros<'a> {
|
pub struct Macros<'a> {
|
||||||
pub name: &'a str,
|
pub name: &'a str,
|
||||||
pub args: Option<&'a str>,
|
pub args: Option<&'a str>,
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
use jetscii::Substring;
|
use jetscii::Substring;
|
||||||
|
|
||||||
#[cfg_attr(test, derive(PartialEq, Debug))]
|
#[cfg_attr(test, derive(PartialEq))]
|
||||||
|
#[derive(Debug)]
|
||||||
pub struct Snippet<'a> {
|
pub struct Snippet<'a> {
|
||||||
pub name: &'a str,
|
pub name: &'a str,
|
||||||
pub value: &'a str,
|
pub value: &'a str,
|
||||||
|
@ -8,7 +9,9 @@ pub struct Snippet<'a> {
|
||||||
|
|
||||||
impl<'a> Snippet<'a> {
|
impl<'a> Snippet<'a> {
|
||||||
pub fn parse(src: &'a str) -> Option<(Snippet<'a>, usize)> {
|
pub fn parse(src: &'a str) -> Option<(Snippet<'a>, usize)> {
|
||||||
|
if cfg!(test) {
|
||||||
starts_with!(src, "@@");
|
starts_with!(src, "@@");
|
||||||
|
}
|
||||||
|
|
||||||
let name = until_while!(src, 2, b':', |c: u8| c.is_ascii_alphanumeric() || c == b'-');
|
let name = until_while!(src, 2, b':', |c: u8| c.is_ascii_alphanumeric() || c == b'-');
|
||||||
|
|
||||||
|
|
|
@ -1,10 +1,14 @@
|
||||||
#[cfg_attr(test, derive(PartialEq, Debug))]
|
#[cfg_attr(test, derive(PartialEq))]
|
||||||
|
#[derive(Debug)]
|
||||||
// TODO: text-markup, entities, latex-fragments, subscript and superscript
|
// TODO: text-markup, entities, latex-fragments, subscript and superscript
|
||||||
pub struct RadioTarget<'a>(&'a str);
|
pub struct RadioTarget<'a>(&'a str);
|
||||||
|
|
||||||
impl<'a> RadioTarget<'a> {
|
impl<'a> RadioTarget<'a> {
|
||||||
pub fn parse(src: &'a str) -> Option<(RadioTarget<'a>, usize)> {
|
pub fn parse(src: &'a str) -> Option<(RadioTarget<'a>, usize)> {
|
||||||
|
if cfg!(test) {
|
||||||
starts_with!(src, "<<<");
|
starts_with!(src, "<<<");
|
||||||
|
}
|
||||||
|
|
||||||
expect!(src, 3, |c| c != b' ');
|
expect!(src, 3, |c| c != b' ');
|
||||||
|
|
||||||
let end = until_while!(src, 3, b'>', |c| c != b'<' && c != b'\n');
|
let end = until_while!(src, 3, b'>', |c| c != b'<' && c != b'\n');
|
||||||
|
@ -17,12 +21,16 @@ impl<'a> RadioTarget<'a> {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(test, derive(PartialEq, Debug))]
|
#[cfg_attr(test, derive(PartialEq))]
|
||||||
|
#[derive(Debug)]
|
||||||
pub struct Target<'a>(&'a str);
|
pub struct Target<'a>(&'a str);
|
||||||
|
|
||||||
impl<'a> Target<'a> {
|
impl<'a> Target<'a> {
|
||||||
pub fn parse(src: &'a str) -> Option<(Target<'a>, usize)> {
|
pub fn parse(src: &'a str) -> Option<(Target<'a>, usize)> {
|
||||||
|
if cfg!(test) {
|
||||||
starts_with!(src, "<<");
|
starts_with!(src, "<<");
|
||||||
|
}
|
||||||
|
|
||||||
expect!(src, 2, |c| c != b' ');
|
expect!(src, 2, |c| c != b' ');
|
||||||
|
|
||||||
let end = until_while!(src, 2, b'>', |c| c != b'<' && c != b'\n');
|
let end = until_while!(src, 2, b'>', |c| c != b'<' && c != b'\n');
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
#[cfg_attr(test, derive(PartialEq))]
|
||||||
|
#[derive(Debug)]
|
||||||
pub struct Time<'a> {
|
pub struct Time<'a> {
|
||||||
pub date: &'a str,
|
pub date: &'a str,
|
||||||
}
|
}
|
||||||
|
|
|
@ -24,7 +24,8 @@ pub enum Container {
|
||||||
Underline { end: usize },
|
Underline { end: usize },
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(test, derive(PartialEq, Debug))]
|
#[cfg_attr(test, derive(PartialEq))]
|
||||||
|
#[derive(Debug)]
|
||||||
pub enum Event<'a> {
|
pub enum Event<'a> {
|
||||||
StartHeadline(Headline<'a>),
|
StartHeadline(Headline<'a>),
|
||||||
EndHeadline,
|
EndHeadline,
|
||||||
|
|
Loading…
Reference in a new issue