> On Sep 5, 2016, at 3:30 PM, Dan Bernstein <[email protected]> wrote: > >> >> On Sep 5, 2016, at 10:13 AM, Darin Adler <[email protected]> wrote: >> >> Hi folks. >> >> WebKit has some critical functions that involve asking an object to give up >> ownership of something so the caller can take ownership. >> >> In the C++ standard library itself, this is called move, as in std::move. >> >> In WebKit smart pointers, we call this operation release, as in >> RefPtr::releaseNonNull and String::releaseImpl. >> >> In WebKit collections, we call this operation take, as in HashMap::take and >> ExceptionOr::takeReturnValue. >> >> The release vs. take terminology is distracting to my eyes. The verb “take" >> states what the caller wishes to do, and the verb “release” states what the >> caller wants the collection or smart pointer to do. > > This can be addressed by renaming take to give (hey, it’s right there in the > subject).
It's logical but reads perhaps a little strangely: Value& = map.give(key) X* = x_ref.give() - Maciej > >> My first thought was be to rename the take functions to use the word release >> instead, but I fear it might make them harder to understand instead of >> easier and clearly it would make them longer. >> >> Does anyone have other ideas on how to collapse WebKit project terminology >> down so we don’t have three different single words that are used to mean >> almost the same thing? > > Rename release to give, too? > _______________________________________________ > webkit-dev mailing list > [email protected] <mailto:[email protected]> > https://lists.webkit.org/mailman/listinfo/webkit-dev > <https://lists.webkit.org/mailman/listinfo/webkit-dev>
_______________________________________________ webkit-dev mailing list [email protected] https://lists.webkit.org/mailman/listinfo/webkit-dev

