package curre import "context" type FunctionalComponent struct { init func(ctx context.Context) error start func(ctx context.Context) error stop func(ctx context.Context) error } func NewFunctionalComponent( fc *FunctionalComponent, ) Component { return fc } func (fc *FunctionalComponent) Init(ctx context.Context) error { if fc.init != nil { return fc.init(ctx) } return nil } func (fc *FunctionalComponent) Start(ctx context.Context) error { if fc.start != nil { return fc.start(ctx) } return nil } func (fc *FunctionalComponent) Stop(ctx context.Context) error { if fc.stop != nil { return fc.stop(ctx) } return nil }