28 lines
550 B
Go
28 lines
550 B
Go
package registry
|
|
|
|
import (
|
|
"git.maximhutz.com/max/lambda/internal/cli"
|
|
)
|
|
|
|
type Converter struct {
|
|
data map[string][]cli.Conversion
|
|
}
|
|
|
|
func NewConverter() *Converter {
|
|
return &Converter{data: map[string][]cli.Conversion{}}
|
|
}
|
|
|
|
func (g *Converter) Add(c cli.Conversion) {
|
|
conversionsFromIn, ok := g.data[c.InType()]
|
|
if !ok {
|
|
conversionsFromIn = []cli.Conversion{}
|
|
}
|
|
|
|
conversionsFromIn = append(conversionsFromIn, c)
|
|
g.data[c.InType()] = conversionsFromIn
|
|
}
|
|
|
|
func (g *Converter) ConversionsFrom(t string) []cli.Conversion {
|
|
return g.data[t]
|
|
}
|