code: func (*Instances) List(c context.Context, req *instances.ListRequest) (*instances.ListResponse, error) {
  	if req.GetPrefix() == "" {
  		return nil, status.Errorf(codes.InvalidArgument, "prefix is required")
  	}
  	rsp := &instances.ListResponse{}
  	// TODO(smut): Handle page tokens.
  	if req.GetPageToken() != "" {
  		return rsp, nil
  	}
  	q := datastore.NewQuery(model.VMKind).Eq("prefix", req.Prefix)
  	if err := datastore.Run(c, q, func(vm *model.VM, f datastore.CursorCB) error {
  		rsp.Instances = append(rsp.Instances, toInstance(vm))
  		return nil
  	}); err != nil {
  		return nil, errors.Annotate(err, "failed to fetch instances").Err()
  	}
  	return rsp, nil
  }
docs: // List handles a request to list instances.