code: func NewVarcharFieldDescriptor(nullable NullableColumn, metadata []byte) (
  	fd FieldDescriptor,
  	remaining []byte,
  	err error) {
  
  	if len(metadata) < 2 {
  		return nil, nil, errors.New("Metadata has too few bytes")
  	}
  
  	maxLen := int(LittleEndian.Uint16(metadata))
  
  	return NewStringFieldDescriptor(
  		mysql_proto.FieldType_VARCHAR,
  		nullable,
  		maxLen), metadata[2:], nil
  }
docs: // This returns a field descriptor for FieldType_VARCHAR (i.e., Field_varstring)