pub struct XMath { /* private fields */ }Expand description
XMath post-processor: preserves or clones XMath as a math representation.
Port of LaTeXML::Post::XMath.
Implementations§
Trait Implementations§
Source§impl MathProcessor for XMath
impl MathProcessor for XMath
Source§fn convert_node(
&self,
_doc: &PostDocument,
xmath: &Node,
) -> Option<MathConversion>
fn convert_node( &self, _doc: &PostDocument, xmath: &Node, ) -> Option<MathConversion>
Convert an XMath node to this processor’s format. Read more
Source§fn combine_parallel(
&self,
_doc: &PostDocument,
_xmath: &Node,
primary: MathConversion,
secondaries: Vec<MathConversion>,
) -> MathConversion
fn combine_parallel( &self, _doc: &PostDocument, _xmath: &Node, primary: MathConversion, secondaries: Vec<MathConversion>, ) -> MathConversion
Combine parallel markup from primary conversion + secondaries. Read more
Source§fn raw_id_suffix(&self) -> &str
fn raw_id_suffix(&self) -> &str
Raw ID suffix for this format (e.g., “.pmml”, “.cmml”, “.om”).
Primary format returns empty string; secondaries return their suffix. Read more
Source§fn is_secondary(&self) -> bool
fn is_secondary(&self) -> bool
Whether this processor is a secondary (parallel) processor.
Source§fn parallel_secondaries(&self) -> &[Box<dyn MathProcessor>]
fn parallel_secondaries(&self) -> &[Box<dyn MathProcessor>]
Parallel-markup secondaries held by this (primary) processor. During the
primary’s
process_math_node, each secondary’s convert_node runs against
the still-live XMath and the results are folded into one <m:semantics>
via combine_parallel. Empty by
default (standalone, single-format).
Port of Perl MathProcessor’s primary→secondary parallel model.Source§fn id_suffix(&self) -> &str
fn id_suffix(&self) -> &str
ID suffix: empty for primary, raw_id_suffix for secondary. Read more
Source§fn can_convert(&self, _doc: &PostDocument, _math: &Node) -> bool
fn can_convert(&self, _doc: &PostDocument, _math: &Node) -> bool
Whether this processor can convert the given math node.
Default: always true. Read more
Source§fn preprocess(&self, _doc: &PostDocument, _nodes: &[Node])
fn preprocess(&self, _doc: &PostDocument, _nodes: &[Node])
Optional preprocessing before conversion begins. Read more
Source§fn outer_wrapper(
&self,
_doc: &PostDocument,
_xmath: &Node,
conversion: NodeData,
) -> NodeData
fn outer_wrapper( &self, _doc: &PostDocument, _xmath: &Node, conversion: NodeData, ) -> NodeData
Wrap the converted XML in the appropriate outer element (e.g.,
m:math). Read moreSource§impl Processor for XMath
impl Processor for XMath
Source§fn to_process(&self, doc: &PostDocument) -> Vec<Node>
fn to_process(&self, doc: &PostDocument) -> Vec<Node>
Return the nodes to be processed; by default the document element.
This allows processors to focus on specific kinds of nodes,
or to skip processing if there are none to process.
Source§fn process(&mut self, doc: PostDocument, _nodes: Vec<Node>) -> ProcessResult
fn process(&mut self, doc: PostDocument, _nodes: Vec<Node>) -> ProcessResult
Process the document given the nodes returned by
to_process.
Returns the resulting document(s) — splitting may produce multiple.Source§fn resource_directory(&self) -> Option<&str>
fn resource_directory(&self) -> Option<&str>
Resource directory for generated resources (images, etc.).
Source§fn resource_prefix(&self) -> Option<&str>
fn resource_prefix(&self) -> Option<&str>
Resource prefix for generated resource filenames.
Source§fn desired_resource_pathname(
&self,
_doc: &PostDocument,
_node: &Node,
_source: Option<&str>,
_type_ext: Option<&str>,
) -> Option<PathBuf>
fn desired_resource_pathname( &self, _doc: &PostDocument, _node: &Node, _source: Option<&str>, _type_ext: Option<&str>, ) -> Option<PathBuf>
Hint for a desired resource pathname.
Source§fn generate_resource_pathname(
&self,
doc: &mut PostDocument,
_node: &Node,
_source: Option<&str>,
type_ext: Option<&str>,
) -> PathBuf
fn generate_resource_pathname( &self, doc: &mut PostDocument, _node: &Node, _source: Option<&str>, type_ext: Option<&str>, ) -> PathBuf
Auto-generate a unique resource pathname using a counter from the doc cache.
Auto Trait Implementations§
impl Freeze for XMath
impl RefUnwindSafe for XMath
impl Send for XMath
impl Sync for XMath
impl Unpin for XMath
impl UnsafeUnpin for XMath
impl UnwindSafe for XMath
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more