package chart // NameProvider is a type that returns a name. type NameProvider interface { GetName() string } // StyleProvider is a type that returns a style. type StyleProvider interface { GetStyle() Style } // IsZeroable is a type that returns if it's been set or not. type IsZeroable interface { IsZero() bool } // Stringable is a type that has a string representation. type Stringable interface { String() string } // Range is a common interface for a range of values. type Range interface { Stringable IsZeroable GetMin() float64 SetMin(min float64) GetMax() float64 SetMax(max float64) GetDelta() float64 GetDomain() int SetDomain(domain int) IsDescending() bool // Translate the range to the domain. Translate(value float64) int }