001package gudusoft.gsqlparser.ir.semantic.joinanalysis;
002
003/**
004 * Outcome of resolving a {@code ColumnRef} to a base relation/final
005 * table (GAP 5).
006 *
007 * <ul>
008 *   <li>{@link #RESOLVED} — the resolver (or a documented fallback)
009 *       supplied a final-table qualified name.</li>
010 *   <li>{@link #UNRESOLVED} — resolution was attempted but no final
011 *       table was produced ({@code resolution==null} / NOT_FOUND). The
012 *       resolved name is {@code null}; a table is <em>never</em>
013 *       fabricated.</li>
014 *   <li>{@link #NOT_APPLICABLE} — resolution does not apply (e.g. the
015 *       column reference is itself a literal or a computed expression
016 *       carried as a complex operand).</li>
017 * </ul>
018 *
019 * <p>Introduced by join-analysis slice 162 (S1); populated in slice 165
020 * (S4).
021 */
022public enum ColumnResolutionStatus {
023    RESOLVED,
024    UNRESOLVED,
025    NOT_APPLICABLE
026}