mirror of
https://github.com/nxshock/gron.git
synced 2024-11-27 03:41:00 +05:00
37 lines
549 B
Go
37 lines
549 B
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
)
|
|
|
|
type RestartRule int
|
|
|
|
const (
|
|
No RestartRule = iota
|
|
OnError
|
|
)
|
|
|
|
func (r *RestartRule) MarshalText() (text []byte, err error) {
|
|
switch *r {
|
|
case No:
|
|
return []byte("no"), nil
|
|
case OnError:
|
|
return []byte("on-error"), nil
|
|
}
|
|
|
|
return nil, fmt.Errorf("unknown restart rule: %v", r)
|
|
}
|
|
|
|
func (r *RestartRule) UnmarshalText(text []byte) error {
|
|
switch string(text) {
|
|
case "no":
|
|
*r = No
|
|
return nil
|
|
case "on-error":
|
|
*r = OnError
|
|
return nil
|
|
}
|
|
|
|
return fmt.Errorf("unknown restart rule: %s", string(text))
|
|
}
|