//! IR Builder Module
//!
//! This module provides a builder pattern for constructing Intermediate Representation (IR)
//! for the compiler. It maintains context about symbols and generates a valid IR program.
//!
//! # Examples
//! ```
//! use compiler::builder::Builder;
//! use compiler::context::Context;
//! use compiler::ir::Type;
//!
//! let mut context = Context::new();
//! let mut builder = Builder::new(&mut context);
//! builder.create_function("main", 0, Type::Int);
//! // ... build IR
//! ```