Enable child checking.
This commit is contained in:
parent
423f65046e
commit
58290515b5
@ -64,6 +64,8 @@ mod verse_block;
|
|||||||
|
|
||||||
pub use ast_node::WasmAstNode;
|
pub use ast_node::WasmAstNode;
|
||||||
pub use document::WasmDocument;
|
pub use document::WasmDocument;
|
||||||
|
pub(crate) use headline::WasmHeadline;
|
||||||
pub use parse_result::ParseResult;
|
pub use parse_result::ParseResult;
|
||||||
|
pub(crate) use section::WasmSection;
|
||||||
pub use to_wasm::ToWasm;
|
pub use to_wasm::ToWasm;
|
||||||
pub use to_wasm::ToWasmContext;
|
pub use to_wasm::ToWasmContext;
|
||||||
|
@ -7,6 +7,8 @@ use crate::compare::EmacsField;
|
|||||||
use crate::compare::Token;
|
use crate::compare::Token;
|
||||||
use crate::wasm::WasmAstNode;
|
use crate::wasm::WasmAstNode;
|
||||||
use crate::wasm::WasmDocument;
|
use crate::wasm::WasmDocument;
|
||||||
|
use crate::wasm::WasmHeadline;
|
||||||
|
use crate::wasm::WasmSection;
|
||||||
use crate::wasm_test::macros::wasm_compare;
|
use crate::wasm_test::macros::wasm_compare;
|
||||||
|
|
||||||
pub fn wasm_compare_document<'b, 's, 'p>(
|
pub fn wasm_compare_document<'b, 's, 'p>(
|
||||||
@ -172,8 +174,8 @@ impl<'s, 'p> WasmElispCompare<'s, 'p> for WasmAstNode<'s, 'p> {
|
|||||||
) -> Result<WasmDiffResult<'s>, Box<dyn std::error::Error>> {
|
) -> Result<WasmDiffResult<'s>, Box<dyn std::error::Error>> {
|
||||||
match self {
|
match self {
|
||||||
WasmAstNode::Document(inner) => inner.compare_ast_node(source, emacs),
|
WasmAstNode::Document(inner) => inner.compare_ast_node(source, emacs),
|
||||||
WasmAstNode::Headline(_) => todo!(),
|
WasmAstNode::Headline(inner) => inner.compare_ast_node(source, emacs),
|
||||||
WasmAstNode::Section(_) => todo!(),
|
WasmAstNode::Section(inner) => inner.compare_ast_node(source, emacs),
|
||||||
WasmAstNode::Paragraph(_) => todo!(),
|
WasmAstNode::Paragraph(_) => todo!(),
|
||||||
WasmAstNode::PlainList(_) => todo!(),
|
WasmAstNode::PlainList(_) => todo!(),
|
||||||
WasmAstNode::PlainListItem(_) => todo!(),
|
WasmAstNode::PlainListItem(_) => todo!(),
|
||||||
@ -258,6 +260,60 @@ impl<'s, 'p> WasmElispCompare<'s, 'p> for WasmDocument<'s, 'p> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl<'s, 'p> WasmElispCompare<'s, 'p> for WasmHeadline<'s, 'p> {
|
||||||
|
fn compare_ast_node<'b>(
|
||||||
|
&self,
|
||||||
|
source: &'s str,
|
||||||
|
emacs: &'b Token<'s>,
|
||||||
|
) -> Result<WasmDiffResult<'s>, Box<dyn std::error::Error>> {
|
||||||
|
let result = WasmDiffResult::default();
|
||||||
|
// let result = wasm_compare!(
|
||||||
|
// source,
|
||||||
|
// emacs,
|
||||||
|
// self,
|
||||||
|
// (
|
||||||
|
// EmacsField::Required(":path"),
|
||||||
|
// |w| w.path.as_ref().and_then(|p| p.to_str()),
|
||||||
|
// wasm_compare_property_quoted_string
|
||||||
|
// ),
|
||||||
|
// (
|
||||||
|
// EmacsField::Required(":CATEGORY"),
|
||||||
|
// |w| w.category.as_ref(),
|
||||||
|
// wasm_compare_property_quoted_string
|
||||||
|
// )
|
||||||
|
// );
|
||||||
|
|
||||||
|
Ok(result)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
impl<'s, 'p> WasmElispCompare<'s, 'p> for WasmSection<'s, 'p> {
|
||||||
|
fn compare_ast_node<'b>(
|
||||||
|
&self,
|
||||||
|
source: &'s str,
|
||||||
|
emacs: &'b Token<'s>,
|
||||||
|
) -> Result<WasmDiffResult<'s>, Box<dyn std::error::Error>> {
|
||||||
|
let result = WasmDiffResult::default();
|
||||||
|
// let result = wasm_compare!(
|
||||||
|
// source,
|
||||||
|
// emacs,
|
||||||
|
// self,
|
||||||
|
// (
|
||||||
|
// EmacsField::Required(":path"),
|
||||||
|
// |w| w.path.as_ref().and_then(|p| p.to_str()),
|
||||||
|
// wasm_compare_property_quoted_string
|
||||||
|
// ),
|
||||||
|
// (
|
||||||
|
// EmacsField::Required(":CATEGORY"),
|
||||||
|
// |w| w.category.as_ref(),
|
||||||
|
// wasm_compare_property_quoted_string
|
||||||
|
// )
|
||||||
|
// );
|
||||||
|
|
||||||
|
Ok(result)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
fn wasm_compare_property_quoted_string<
|
fn wasm_compare_property_quoted_string<
|
||||||
'b,
|
'b,
|
||||||
's,
|
's,
|
||||||
|
@ -41,11 +41,11 @@ macro_rules! wasm_compare {
|
|||||||
|
|
||||||
{
|
{
|
||||||
// Compare children.
|
// Compare children.
|
||||||
// result.extend(wasm_compare_list(
|
result.extend(wasm_compare_list(
|
||||||
// $source,
|
$source,
|
||||||
// emacs_list_iter,
|
emacs_list_iter,
|
||||||
// $wasm.children.iter(),
|
$wasm.children.iter(),
|
||||||
// )?)?;
|
)?)?;
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user