1package match
2
3import (
4	"fmt"
5	"strings"
6)
7
8type Suffix struct {
9	Suffix string
10}
11
12func NewSuffix(s string) Suffix {
13	return Suffix{s}
14}
15
16func (self Suffix) Len() int {
17	return lenNo
18}
19
20func (self Suffix) Match(s string) bool {
21	return strings.HasSuffix(s, self.Suffix)
22}
23
24func (self Suffix) Index(s string) (int, []int) {
25	idx := strings.Index(s, self.Suffix)
26	if idx == -1 {
27		return -1, nil
28	}
29
30	return 0, []int{idx + len(self.Suffix)}
31}
32
33func (self Suffix) String() string {
34	return fmt.Sprintf("<suffix:%s>", self.Suffix)
35}
36