Skip to main content

try_placing_children

Function try_placing_children 

Source
fn try_placing_children<'a>(
    source_idx: usize,
    depth: i32,
    context_idx: usize,
    config: &JigsawConfig,
    pools: &'a FxHashMap<Identifier, TemplatePoolData>,
    templates: &'a FxHashMap<Identifier, TemplateData>,
    alias_map: &FxHashMap<Identifier, Identifier>,
    pool_template_cache: &mut FxHashMap<Identifier, Vec<&'a PoolElement>>,
    scratch: &mut AssemblyScratch<'a>,
    pieces: &mut Vec<PlacedPiece>,
    free_spaces: &mut Vec<FreeSpace>,
    queue: &mut PieceQueue,
    rng: &mut LegacyRandom,
    get_height: &mut dyn FnMut(i32, i32) -> i32,
)
Expand description

Vanilla’s tryPlacingChildren. context_idx is this piece’s collision context in free_spaces — external children get the parent’s context, internal children get the parent’s internal free space.