26 lines
474 B
Go
26 lines
474 B
Go
package tasks
|
|
|
|
const (
|
|
TaskTypeDownload = iota
|
|
TaskTypeFetch = iota
|
|
TaskTypeMkDir = iota
|
|
)
|
|
|
|
type Task struct {
|
|
Type int8
|
|
Name string
|
|
Failed bool
|
|
Arguments map[string]string
|
|
}
|
|
|
|
func TaskPop(taskList []Task) (Task, []Task) {
|
|
var result Task
|
|
// https://github.com/golang/go/wiki/SliceTricks
|
|
result, taskList = taskList[0], taskList[1:]
|
|
return result, taskList
|
|
}
|
|
|
|
func TaskPush(taskList []Task, task Task) []Task {
|
|
return append(taskList, task)
|
|
}
|