func (c *Client) Step(in []byte) bool {
	c.out.Reset()
	if c.step > 2 || c.err != nil {
		return false
	}
	c.step++
	switch c.step {
	case 1:
		c.err = c.step1(in)
	case 2:
		c.err = c.step2(in)
	case 3:
		c.err = c.step3(in)
	}
	return c.step > 2 || c.err != nil
}
func (c *Client) Step(in []byte) bool {
	c.out.Reset()
	if c.step > 2 || c.err != nil {
		return false
	}
	c.step++
	switch c.step {
	case 1:
		c.err = c.step1(in)
	case 2:
		c.err = c.step2(in)
	case 3:
		c.err = c.step3(in)
	}
	return c.step > 2 || c.err != nil
}
func ( c * Client ) Step ( in [ ] byte ) bool { c . out . Reset ( ) if c . step > 2 || c . err != nil { return false } c . step ++ switch c . step { case 1 : c . err = c . step1 ( in ) case 2 : c . err = c . step2 ( in ) case 3 : c . err = c . step3 ( in ) } return c . step > 2 || c . err != nil }
// Step processes the incoming data from the server and makes the
// next round of data for the server available via Client.Out.
// Step returns false if there are no errors and more data is
// still expected.
Step processes the incoming data from the server and makes the next round of data for the server available via Client . Out . Step returns false if there are no errors and more data is still expected .