mirror of
https://github.com/superseriousbusiness/gotosocial.git
synced 2024-11-25 05:06:38 +00:00
26 lines
439 B
Go
26 lines
439 B
Go
|
package iotools
|
||
|
|
||
|
type Sizer interface {
|
||
|
Size() int64
|
||
|
}
|
||
|
|
||
|
// SizerFunc is a function signature which allows
|
||
|
// a function to implement the Sizer type.
|
||
|
type SizerFunc func() int64
|
||
|
|
||
|
func (s SizerFunc) Size() int64 {
|
||
|
return s()
|
||
|
}
|
||
|
|
||
|
type Lengther interface {
|
||
|
Len() int
|
||
|
}
|
||
|
|
||
|
// LengthFunc is a function signature which allows
|
||
|
// a function to implement the Lengther type.
|
||
|
type LengthFunc func() int
|
||
|
|
||
|
func (l LengthFunc) Len() int {
|
||
|
return l()
|
||
|
}
|