func (c *Client) ListAll() (ret []*Sketch, err error) {
	reply, err := c.client.ListAll(context.Background(), &pb.Empty{})
	if err != nil {
		return nil, err
	}
	for _, sketch := range reply.GetSketches() {
		ret = append(ret, newSketchFromRaw(sketch))
	}
	return ret, err
}
ListAll gets all the available Sketches.
package skizze
import (
	"fmt"
	"golang.org/x/net/context"
	"google.golang.org/grpc"
	pb "github.com/skizzehq/goskizze/protobuf"
)
var (
	typeMemb = pb.SketchType_MEMB
	typeFreq = pb.SketchType_FREQ
	typeRank = pb.SketchType_RANK
	typeCard = pb.SketchType_CARD
)
type Client struct {
	opts Options
	conn   *grpc.ClientConn
	client pb.SkizzeClient
}
func Dial(address string, opts Options) (*Client, error) {
	var gOpts []grpc.DialOption
	if opts.Insecure == true {
		gOpts = append(gOpts, grpc.WithInsecure())
	}
	conn, err := grpc.Dial(address, gOpts...)
	if err != nil {
		return nil, fmt.Errorf("Unable to dial Skizze at %v: %v", address, err)
	}
	return &Client{
		opts:   opts,
		conn:   conn,
		client: pb.NewSkizzeClient(conn),
	}, nil
}
func (c *Client) Close() {
	if c.conn != nil {
		c.conn.Close()
	}
}