registry

package
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 27, 2026 License: MIT Imports: 3 Imported by: 0

Documentation

Overview

Package registry manages converter registrations for code generation.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Converter

type Converter struct {
	// FuncName is the function name (e.g., "ToDate")
	FuncName string
	// PkgPath is the package where the function is defined
	PkgPath string
	// HasError indicates if the converter returns an error
	HasError bool
}

Converter holds information about a registered converter.

func (Converter) QualifiedName

func (c Converter) QualifiedName(currentPkg string) string

QualifiedName returns the fully qualified function name.

type Registry

type Registry struct {
	// contains filtered or unexported fields
}

Registry manages type converters.

func New

func New() *Registry

New creates a new Registry.

func (*Registry) All

func (r *Registry) All() map[TypePair]Converter

All returns all registered type pairs.

func (*Registry) AllNamed

func (r *Registry) AllNamed() map[string]Converter

AllNamed returns all named converters.

func (*Registry) LoadFromConverterInfos

func (r *Registry) LoadFromConverterInfos(infos []analyzer.ConverterInfo, pkg *packages.Package)

LoadFromConverterInfos populates the registry from discovered converters.

func (*Registry) Lookup

func (r *Registry) Lookup(source, target string) (Converter, bool)

Lookup finds a converter for a type pair.

func (*Registry) LookupGenerated

func (r *Registry) LookupGenerated(source, target string) (string, bool)

LookupGenerated finds a generated mapper for a type pair.

func (*Registry) LookupNamed

func (r *Registry) LookupNamed(name string) (Converter, bool)

LookupNamed finds a named converter.

func (*Registry) MarkGenerated

func (r *Registry) MarkGenerated(source, target, funcName string)

MarkGenerated marks a type pair as having a generated mapper.

func (*Registry) Register

func (r *Registry) Register(source, target string, conv Converter)

Register adds a converter to the registry.

func (*Registry) RegisterNamed

func (r *Registry) RegisterNamed(name string, conv Converter)

RegisterNamed adds a named converter to the registry.

type TypePair

type TypePair struct {
	Source string // Fully qualified source type
	Target string // Fully qualified target type
}

TypePair represents a source-target type pair.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL