From: Rob Pike Date: Tue, 21 Sep 2010 11:21:44 +0000 (+1000) Subject: regexp: delete Iter methods X-Git-Tag: weekly.2010-09-22~22 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=4659f6de3846eb19ca1cb7ed367c718a959d5711;p=gostls13.git regexp: delete Iter methods They are unused and not that useful anyway. R=rsc CC=golang-dev https://golang.org/cl/2225045 --- diff --git a/src/pkg/regexp/regexp.go b/src/pkg/regexp/regexp.go index f3e07d74a4..488b023333 100644 --- a/src/pkg/regexp/regexp.go +++ b/src/pkg/regexp/regexp.go @@ -1149,42 +1149,6 @@ func (re *Regexp) allMatches(s string, b []byte, n int, deliver func([]int)) { } } -// TODO: AllMatchesIter and AllMatchesStringIter should change to return submatches as well. - -// AllMatchesIter slices the byte slice b into substrings that are successive -// matches of the Regexp within b. If n > 0, the function returns at most n -// matches. Text that does not match the expression will be skipped. Empty -// matches abutting a preceding match are ignored. The function returns a -// channel that iterates over the matching substrings. -func (re *Regexp) AllMatchesIter(b []byte, n int) <-chan []byte { - if n <= 0 { - n = len(b) + 1 - } - c := make(chan []byte, 10) - go func() { - re.allMatches("", b, n, func(match []int) { c <- b[match[0]:match[1]] }) - close(c) - }() - return c -} - -// AllMatchesStringIter slices the string s into substrings that are successive -// matches of the Regexp within s. If n > 0, the function returns at most n -// matches. Text that does not match the expression will be skipped. Empty -// matches abutting a preceding match are ignored. The function returns a -// channel that iterates over the matching substrings. -func (re *Regexp) AllMatchesStringIter(s string, n int) <-chan string { - if n <= 0 { - n = len(s) + 1 - } - c := make(chan string, 10) - go func() { - re.allMatches(s, nil, n, func(match []int) { c <- s[match[0]:match[1]] }) - close(c) - }() - return c -} - // Find returns a slice holding the text of the leftmost match in b of the regular expression. // A return value of nil indicates no match. func (re *Regexp) Find(b []byte) []byte {