On Mon, Nov 02, 2009 at 09:55:20AM -0500, Merlin Moncure wrote: > On Mon, Nov 2, 2009 at 9:51 AM, Sam Mason <sam@xxxxxxxxxxxxx> wrote: > > On Mon, Nov 02, 2009 at 09:20:38AM -0500, Tom Lane wrote: > >> Craig Ringer <craig@xxxxxxxxxxxxxxxxxxxxx> writes: > >> > Before I go ahead and try to write a decent quality version: is there > >> > any chance an array_reverse() function (in C) would be accepted into Pg > >> > mainline? > >> > >> What would it mean for a multi-dimensional array? > > > > Rotating the array by 180 degrees in every dimension would give the same > > answer for 1-dimensional arrays and give sensible answers for higher > > dimensional arrays. > do you think that's the typical case, or is it more common to want to > reverse a particular slice? I hadn't thought about that; I'm normally more concerned about making the general case (i.e. most complicated) behave sensibly, with the common cases being optimizations. The problem I was solving was making 1d arrays consistent with higher dimensional ones. As far as I can tell, if the spec is just to rotate by 180 degrees then the implementation is pretty easy; just run through all the elements writing them out in reverse order. Sizes and number of dimensions can be completely ignored. -- Sam http://samason.me.uk/ -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general