Documentation
¶
Overview ¶
Package column refines canonical view columns during explicit transcription. It delegates database metadata detection to SQLX and query rewriting to SQLParser; it owns no runtime scanner, cache, connector registry, or row map.
Index ¶
- func ApplyWriterMetadata(component *spec.Component) error
- func ValidateProjectionAnnotations(view *spec.View, projected []string) error
- type Connections
- type DBResolver
- type Refiner
- func (r *Refiner) Refine(ctx context.Context, component *spec.Component, resources fs.FS, ...) error
- func (r *Refiner) RefineRoot(ctx context.Context, component *spec.Component, resources fs.FS, ...) error
- func (r *Refiner) RefineViews(ctx context.Context, component *spec.Component, resources fs.FS, ...) error
- func (r *Refiner) ValidateSourceProjections(component *spec.Component, resources fs.FS) error
- type TemplateInput
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ApplyWriterMetadata ¶
ApplyWriterMetadata promotes explicitly authored SQLX field metadata into the canonical facts required by mutation planning. It is intentionally called only by writer generation; readers neither require nor infer identity from author tags.
Types ¶
type Connections ¶
Connections is a static connector set suitable for command composition and tests. Production composition may supply its own DBResolver.
type DBResolver ¶
DBResolver resolves one configured connector for compile-time discovery.
type Refiner ¶
type Refiner struct {
// contains filtered or unexported fields
}
Refiner enriches canonical views with SQLX-discovered scalar columns.
func New ¶
func New(resolver DBResolver) *Refiner
func (*Refiner) RefineRoot ¶
func (r *Refiner) RefineRoot(ctx context.Context, component *spec.Component, resources fs.FS, input *TemplateInput) error
RefineRoot discovers the root relation tree before generated input contracts are rebuilt for parameterized independent views.
type TemplateInput ¶
type TemplateInput struct {
Const *constant.Values
Value reflect.Value
Variables []sqltemplate.Variable
ParameterResolver sqlx.ParameterResolver
Predicate exec.PredicateEvaluator
}
TemplateInput is the compile-time contract used to evaluate parameterized SQL before SQLX column discovery. It contains no request or runtime session.