2019-08-20 19:03:57 +03:00
|
|
|
package main
|
|
|
|
|
|
|
|
// don't separate your interfaces like this.
|
|
|
|
// put them in the same file where you need to use them.
|
|
|
|
// this is here for clarity
|
|
|
|
|
|
|
|
type printer interface {
|
|
|
|
print()
|
|
|
|
}
|
|
|
|
|
|
|
|
// TODO: NEW
|
|
|
|
type summer interface {
|
2019-08-21 23:53:47 +03:00
|
|
|
sum() money
|
2019-08-20 19:03:57 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
// TODO: NEW
|
|
|
|
// interface embedding
|
|
|
|
// When an interface includes multiple methods,
|
|
|
|
// choose a name that accurately describes its purpose.
|
|
|
|
type item interface {
|
|
|
|
printer
|
|
|
|
summer
|
|
|
|
}
|