001package gudusoft.gsqlparser.catalog.runtime;
002
003import java.util.Optional;
004
005/**
006 * Mutable layer that holds DDL discovered mid-batch, temp tables, and user-driven additions.
007 *
008 * <p>Plan §7.2 / §10.5. Resolver consults overlay first, then the immutable snapshot, then
009 * the provider on miss. {@code provider.refresh(...)} never disturbs overlay state.</p>
010 *
011 * <p>Phase 1A skeleton — implementations land in P1B (T1B.6).</p>
012 */
013public interface CatalogOverlay {
014
015    void put(CatalogEntry entry);
016
017    Optional<CatalogEntry> find(CatalogQualifiedName name, CatalogObjectKind kind);
018
019    /** Per-parse-batch lifecycle. */
020    void clear();
021}