Skip to main content

paste_into_fresh

Function paste_into_fresh 

Source
pub fn paste_into_fresh(
    indexed: &IndexedDocument<'_>,
    clip: &Clipboard,
    scope: FreshScope<'_>,
    fresh: &mut Allocator,
    builder: &mut CommitBuilder,
) -> Vec<Shape>
Expand description

Paste into a block this same commit is creating — what an embedded document lands in (crate::edit::embed).

The scope has no row in the index to find a boundary by, so the one its root ports slot onto is the fresh block’s own: empty, and grown to fit what lands on it. Looking it up the way paste does would find no block, hand out no slot, and drop every port the document carried.

Always re-mints. A snapshot reaching a scope that does not exist yet came from another document, and every cross-document flow re-mints (Origin).