The first pattern is one I've found handy for returning some data structure that contains the results of running two different ownership-taking functions on some argument.