PWGen/pwgenerator/funcs_charset.go
2022-03-02 06:24:55 -05:00

42 lines
763 B
Go

package pwgenerator
// Len returns the length of a CharSet (needed for sort.Interface).
func (c *CharSet) Len() (l int) {
l = len(*c)
return
}
// Less returns true if item at index i is "less than" (sorts before) item at index j (needed for sort.Interface).
func (c *CharSet) Less(i, j int) (isBefore bool) {
if (*c)[i] < (*c)[j] {
isBefore = true
}
return
}
// String returns a string from a CharSet.
func (c *CharSet) String() (s string) {
for _, i := range *c {
s += string(i)
}
return
}
// Swap will swap the position of the item at index i and the item at index j in a CharSet (needed for sort.Interface).
func (c *CharSet) Swap(i, j int) {
var iVal Char = (*c)[i]
var jVal Char = (*c)[j]
(*c)[i] = jVal
(*c)[j] = iVal
return
}