Documentation
¶
Index ¶
- Constants
- func CalcPercentage(total, current int64, width int) int
- func Format(i int64) *formatter
- type DecoratorFunc
- func Counters(pairFormat string, unit Units, minWidth int, conf byte) DecoratorFunc
- func DynamicName(nameFn func(*Statistics) string, minWidth int, conf byte) DecoratorFunc
- func ETA(minWidth int, conf byte) DecoratorFunc
- func Elapsed(minWidth int, conf byte) DecoratorFunc
- func Name(name string, minWidth int, conf byte) DecoratorFunc
- func Percentage(minWidth int, conf byte) DecoratorFunc
- func StaticName(name string, minWidth int, conf byte) DecoratorFunc
- type Statistics
- type Units
Constants ¶
const ( // DidentRight specifies identation direction. // |foo |b | With DidentRight // | foo| b| Without DidentRight DidentRight = 1 << iota // DwidthSync will auto sync max width. // Makes sense when there're more than one bar DwidthSync // DextraSpace adds extra space, makes sense with DwidthSync only. // When DidentRight bit set, the space will be added to the right, // otherwise to the left. DextraSpace // DSyncSpace is shortcut for DwidthSync|DextraSpace DSyncSpace = DwidthSync | DextraSpace )
const ( KiB = 1 << (iota * 10) MiB GiB TiB )
const ( KB = 1000 MB = KB * 1000 GB = MB * 1000 TB = GB * 1000 )
const ( // Unit_KiB Kibibyte = 1024 b Unit_KiB // Unit_kB Kilobyte = 1000 b Unit_kB )
Variables ¶
This section is empty.
Functions ¶
func CalcPercentage ¶
Types ¶
type DecoratorFunc ¶
type DecoratorFunc func(s *Statistics, myWidth chan<- int, maxWidth <-chan int) string
DecoratorFunc is a function that can be prepended and appended to the progress bar
func Counters ¶
func Counters(pairFormat string, unit Units, minWidth int, conf byte) DecoratorFunc
Counters provides basic counters decorator. Accepts pairFormat string, something like "%s / %s" to be used in fmt.Sprintf(pairFormat, current, total) and one of (Unit_KiB/Unit_kB) constant. If there're more than one bar, and you'd like to synchronize column width, conf param should have DwidthSync bit set.
func DynamicName ¶
func DynamicName(nameFn func(*Statistics) string, minWidth int, conf byte) DecoratorFunc
DynamicName to be used, when there is a plan to change the name once or several times during progress rendering process. If there're more than one bar, and you'd like to synchronize column width, conf param should have DwidthSync bit set.
func ETA ¶
func ETA(minWidth int, conf byte) DecoratorFunc
ETA provides exponential-weighted-moving-average ETA decorator. If there're more than one bar, and you'd like to synchronize column width, conf param should have DwidthSync bit set.
func Elapsed ¶
func Elapsed(minWidth int, conf byte) DecoratorFunc
Elapsed provides elapsed time decorator. If there're more than one bar, and you'd like to synchronize column width, conf param should have DwidthSync bit set.
func Name ¶
func Name(name string, minWidth int, conf byte) DecoratorFunc
Name deprecated, use StaticName instead
func Percentage ¶
func Percentage(minWidth int, conf byte) DecoratorFunc
Percentage provides percentage decorator. If there're more than one bar, and you'd like to synchronize column width, conf param should have DwidthSync bit set.
func StaticName ¶
func StaticName(name string, minWidth int, conf byte) DecoratorFunc
StaticName to be used, when there is no plan to change the name during whole life of a progress rendering process
type Statistics ¶
type Statistics struct { ID int Completed bool Aborted bool Total int64 Current int64 StartTime time.Time TimeElapsed time.Duration TimePerItemEstimate time.Duration }
Statistics represents statistics of the progress bar. Cantains: Total, Current, TimeElapsed, TimePerItemEstimate
func (*Statistics) Eta ¶
func (s *Statistics) Eta() time.Duration
Eta returns exponential-weighted-moving-average ETA estimator