Skip to main content

LayoutResult

Struct LayoutResult 

Source
pub struct LayoutResult {
    pub graph: PageGraph,
    pub diagnostics: Vec<Diagnostic>,
    pub label_pages: BTreeMap<String, u32>,
}
Expand description

Result of laying out a [mos_core::Document]: a PageGraph plus any warnings the engine emitted. Mirrors mos_eval::LowerResult so the CLI can render diagnostics uniformly.

Fields§

§graph: PageGraph§diagnostics: Vec<Diagnostic>§label_pages: BTreeMap<String, u32>

Map from a declared label to the 1-based number of the page its target first lands on (issue #72). Built during layout as each labelled block commits its first content; first placement wins, so a label on a block that spans pages maps to its start page, and a labelled block that produced no content is absent.

This is the layout-side half of page-reference resolution: the resolve↔layout fixpoint feeds this map back into the resolver so @page(label) can render the target’s printed page number. It lives on the result rather than the PageGraph because it feeds the resolver, not the PDF backend, which consumes only graph.

Implementations§

Source§

impl LayoutResult

Source

pub fn page_boundary_signatures(&self) -> PageGraphSignature

The page boundary signatures of this layout’s PageGraph (design note §4.5). Convenience for cache/reflow consumers.

Trait Implementations§

Source§

impl Debug for LayoutResult

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<U, T> ToOwnedObj<U> for T
where U: FromObjRef<T>,

§

fn to_owned_obj(&self, data: FontData<'_>) -> U

Convert this type into T, using the provided data to resolve any offsets.
§

impl<U, T> ToOwnedTable<U> for T
where U: FromTableRef<T>,

§

fn to_owned_table(&self) -> U

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.