gitee.com/lh-her-team/common@v1.5.1/shardingbirdsnest/interface.go (about) 1 // Package shardingbirdsnest interface 2 package shardingbirdsnest 3 4 import bn "gitee.com/lh-her-team/common/birdsnest" 5 6 // ShardingAlgorithm sharding algorithm 7 type ShardingAlgorithm interface { 8 // DoSharding do sharding 9 DoSharding(shardingValues []bn.Key) [][]bn.Key 10 // DoShardingOnce once sharding 11 DoShardingOnce(bn.Key) (index int) 12 } 13 14 // KeyModuloAlgorithm key modulo algorithm 15 type KeyModuloAlgorithm func(key bn.Key, length int) int