code: func NewScanner(str string) *Scanner {
  	s, _ := scannerPool.Get().(*Scanner)
  	if s == nil {
  		s = &Scanner{rd: strings.NewReader(str)}
  	} else {
  		s.rd.Reset(str)
  	}
  	s.ch = -2
  	s.err = nil
  	return s
  }
docs: // NewScanner creates a new Scaner instance.