Hi Terry, On 2011-12-30 at 10:19 -0500, Terrence Enger wrote:
> I have stumbled upon file sw/source/core/bigpointerarray-new.hxx, I guess you mean sw/qa/core/bigpointerarray-new.hxx, right? > but I have not found any place where it is used. In particular > both opengrok full search for bigpointerarry and git-grep for > bigpointerarray come up empty. And yet, the file was last > maintained in May, 2011. > > Implementation file sw/qa/core/bigpointerarray-new.cxx was last > changed in November, 2011. Does the build system have magic to > use this file without naming it explicitly? This file includes > bparr.hxx for the definition of classes BigPtrEntry and > BigPtrArray, and I have seen a bunch of other code in sw/ also > using bparr.hxx. > > So, I am asking if these two files have a purpose? Not really - it seems that at some point of time, somebody was experimenting with replacing the BigPtrArray from a linked list to std::deque, and did that in this qa/... location. Then over the time, the files were changed when there were some automatic updates, like header changes, or editor modelines introduction. The BigPtrArray is part of the Writer core, but I am not that convinced that changing its implementation would bring us that much; if we wanted to redesign the Writer core, I'd be more interested in looking into / experiment with more advanced data structures that have undo / redo / change tracking 'built-in', like piece tables, or some variants of them. Some read for long winter evenings: http://cgit.freedesktop.org/libreoffice/build/tree/doc/sw.txt http://www.cs.unm.edu/~crowley/papers/sds.pdf http://e98cuenc.free.fr/wordprocessor/piecetable.html http://catch22.net/tuts/neatpad/17 Either way - such a change would be like a heart transplant; or maybe a brain transplant ;-) > Is it > possible and desirable to remove them? Yes, I removed bigptrarray-new.*, no point in keeping them: http://cgit.freedesktop.org/libreoffice/core/commit/?id=16ea3bec808dc53de557bf1765c503b38848ab8d > If not, is there a way > that I could figure that out without bothering the experts > reading this list? First you want to check if the file is compiled at all; then look into its history - 'git log -p path/to/the/file.cxx', and see if the changes there have any substance, or if it is just series of automated changes. Then if still in doubt, mail the list :-) Regards, Kendy _______________________________________________ LibreOffice mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice
