code: func Parse(file io.Reader) (*Rules, error) {
  	r := &Rules{patterns: []*pattern{}}
  
  	s := bufio.NewScanner(file)
  	for s.Scan() {
  		if err := r.parseRule(s.Text()); err != nil {
  			return r, err
  		}
  	}
  	return r, s.Err()
  }
docs: // Parse parses a rules file