Files
History_Api/pkg/constant/role.go
AzenKain 79199f627d
Some checks failed
Build and Release / release (push) Failing after 51s
init
2026-03-25 22:29:43 +07:00

35 lines
581 B
Go

package constant
type Role string
const (
ADMIN Role = "ADMIN"
MOD Role = "MOD"
USER Role = "USER"
HISTORIAN Role = "HISTORIAN"
BANNED Role = "BANNED"
)
func (r Role) String() string {
return string(r)
}
func (r Role) Compare(other Role) bool {
return r == other
}
func CheckValidRole(r Role) bool {
return r == ADMIN || r == MOD || r == HISTORIAN || r == USER || r == BANNED
}
func ParseRole(s string) (Role, bool) {
r := Role(s)
if CheckValidRole(r) {
return r, true
}
return "", false
}
func (r Role) ToSlice() []Role {
return []Role{r}
}