package hardware type ( Hardware interface { Read() (uint16, error) } Client struct { hardware Hardware } ) func NewClient(h Hardware) Client { return Client{hardware: h} } func (c Client) Read() (uint16, error) { return c.hardware.Read() }