001package gudusoft.gsqlparser.ir.semantic.joinanalysis; 002 003/** 004 * Classification of a {@link PredicateOperand}. 005 * 006 * <ul> 007 * <li>{@link #COLUMN} — a resolved {@code ColumnRef}.</li> 008 * <li>{@link #LITERAL} — a constant ({@code 'x'}, {@code 42}, 009 * {@code NULL}).</li> 010 * <li>{@link #CALL} — a function/expression call 011 * ({@code lower(a.n)}).</li> 012 * <li>{@link #COMPLEX} — any sub-tree not classified above, preserved 013 * verbatim (via its span) and never dropped.</li> 014 * </ul> 015 * 016 * <p>Introduced by join-analysis slice 162 (S1). 017 */ 018public enum PredicateOperandKind { 019 COLUMN, 020 LITERAL, 021 CALL, 022 COMPLEX 023}