[mlpack-git] [mlpack/mlpack] General greedy traverser. (#762)

Ryan Curtin notifications at github.com
Sat Aug 20 01:01:41 EDT 2016


> @@ -309,14 +412,21 @@ class NeighborSearch
>    //! Return the number of node combination scores during the last search.
>    size_t Scores() const { return scores; }
>  
> +  //! Access the search mode.
> +  NeighborSearchMode SearchMode() const { return searchMode; }
> +  //! Modify the search mode.
> +  void SetSearchMode(const NeighborSearchMode mode);

You're right; I thought there was a way to work around this problem but really there is not a good one.  What I really want to avoid is making an API change that we'll regret later (like `SetSearchMode()`).  So if we are going to break reverse compatibility in 3.0.0, then I would say maybe the easiest thing to do here is just add a `greedy` boolean parameter that works the same way as `singleMode` and `naive`, and use that for now.  Then, when we release 3.0.0, we'll remove all three of those and _only_ have `searchMode` in the way you've written here.  This would allow us to avoid the weird stuff we have to do for reverse compatibility.

I guess, if you agree with that, then we should save your commits for refactoring by opening another reverse-incompatible "3.0.0 PR" that will be merged in when we decide it is time for a release there.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/mlpack/mlpack/pull/762/files/f8ddd58ece06362024944a6533f68074a6b27ef7#r75572810
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.cc.gatech.edu/pipermail/mlpack-git/attachments/20160819/912be2d9/attachment.html>


More information about the mlpack-git mailing list