config.go 462 B

123456789101112131415161718192021222324252627
  1. package rules
  2. import (
  3. v2net "github.com/v2ray/v2ray-core/common/net"
  4. )
  5. type Rule struct {
  6. Tag string
  7. Condition Condition
  8. }
  9. func (this *Rule) Apply(dest v2net.Destination) bool {
  10. return this.Condition.Apply(dest)
  11. }
  12. type DomainStrategy int
  13. var (
  14. DomainAsIs = DomainStrategy(0)
  15. AlwaysUseIP = DomainStrategy(1)
  16. UseIPIfNonMatch = DomainStrategy(2)
  17. )
  18. type RouterRuleConfig struct {
  19. Rules []*Rule
  20. DomainStrategy DomainStrategy
  21. }