package types import "fmt" type Endian string const ( BigEndian Endian = "big" LittleEndian Endian = "little" ) func (e *Endian) String() string { return string(*e) } func (e *Endian) Set(s string) error { switch s { case "big", "little": *e = Endian(s) return nil default: return fmt.Errorf("不支持的字节序:%s", s) } } func (e *Endian) Type() string { return "Endian" }