package cli import "git.maximhutz.com/max/lambda/pkg/engine" type Engine interface { Load() Process Name() string InType() string } type convertedEngine[T any] struct { engine engine.Engine[T] name string inType string } func (e convertedEngine[T]) InType() string { return e.inType } func (e convertedEngine[T]) Name() string { return e.name } func (e convertedEngine[T]) Load() Process { return convertedProcess[T]{e.engine.Load(), e.inType} } func ConvertEngine[T any](e engine.Engine[T], name, inType string) Engine { return &convertedEngine[T]{e, name, inType} }