001package gudusoft.gsqlparser.ir.builder;
002
003import gudusoft.gsqlparser.analyzer.v2.AnalyzerV2Config;
004import gudusoft.gsqlparser.ir.bound.BoundProgram;
005
006/**
007 * Phase 2 Builder: Logical IR construction (SQL relational plan + PL/SQL procedural plan).
008 * <p>
009 * Input: BoundProgram (from Phase 1)
010 * Output: LogicalProgram (relational + procedural IR trees)
011 * <p>
012 * Phase B/C implementation. This interface is defined in Phase A for
013 * architecture completeness.
014 */
015public interface ILogicalIRBuilder {
016
017    /**
018     * Builds the Logical IR from the bound program.
019     *
020     * @param bound  bound program from Phase 1
021     * @param config analyzer configuration
022     * @return logical program with SQL plans and PL/SQL routines
023     */
024    LogicalProgram build(BoundProgram bound, AnalyzerV2Config config);
025}