filter.go 389 B

1234567891011121314151617181920
  1. package tinymq
  2. import (
  3. "regexp"
  4. "strings"
  5. )
  6. // 正则频道过滤器
  7. func RegChannelFilter(channel *regexp.Regexp) FilterFunc {
  8. return func(conn *Line) (ok bool) {
  9. return channel.MatchString(conn.channel)
  10. }
  11. }
  12. // 字符串频道过滤器
  13. func StrChannelFilter(channel string) FilterFunc {
  14. return func(conn *Line) (ok bool) {
  15. return strings.Contains(conn.channel, channel)
  16. }
  17. }