Cooper.Merge.Layered (Cooper v0.1.0)

Copy Markdown

A path whose value is a lazy base (a for-loop's from <template>, CASC.md §5.5, resolved by Cooper.Resolver against the final merged tree) with literal statements layered on top as overrides -- Cooper.Merge builds this whenever a later op writes underneath a path currently holding a Cooper.Ref.Config. overrides mirrors the assembled tree's own shape (a plain nested map, itself possibly containing more Layered values at deeper paths); Cooper.Resolver resolves base, deep-merges overrides on top, and that's this path's final value.

Summary

Types

t()

@type t() :: %Cooper.Merge.Layered{base: Cooper.Ref.Config.t(), overrides: map()}