]> git.donarmstrong.com Git - lilypond.git/blobdiff - flower/include/parray.hh
Run grand replace for 2015.
[lilypond.git] / flower / include / parray.hh
index e1e597202030e8c61c118b6479fb7e0658bc05a1..9ef9ddb2173b18f36dd6be1857ae91f615708c22 100644 (file)
@@ -1,80 +1,34 @@
 /*
-  parray.hh -- declare Pointer_array
+  This file is part of LilyPond, the GNU music typesetter.
 
-  source file of the Flower Library
+  Copyright (C) 1997--2015 Han-Wen Nienhuys <hanwen@xs4all.nl>
 
-  (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
-*/
+  LilyPond is free software: you can redistribute it and/or modify
+  it under the terms of the GNU General Public License as published by
+  the Free Software Foundation, either version 3 of the License, or
+  (at your option) any later version.
+
+  LilyPond is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+  GNU General Public License for more details.
 
+  You should have received a copy of the GNU General Public License
+  along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
+*/
 
 #ifndef PARRAY_HH
 #define PARRAY_HH
 
-#include "varray.hh"
+#include "std-vector.hh"
 
-/**
-  an array of pointers.
+using namespace std;
 
-  TODO
-  should init to 0. Derive from Array<void*>? 
- */
 template<class T>
-class Link_array : public Array<T*>
+class Link_array : public vector<T *>
 {
-    static default_compare (T *const& p1, T  *const&p2) {
-       /* can't do p1 -p2, since T might be an incomplete type */
-       if (p1 < p2)
-           return -1 ;
-       if (p2 < p1)
-           return 1;
-       return 0;
-    }
-public:
-    void substitute (T *old, T*new_l)
-    {
-       int i;
-       while ((i = find_i (old)) >=0) 
-           if (new_l)
-               elem (i) =new_l;
-           else
-               del (i);
-    }
-    void unordered_substitute (T* old, T * new_l)
-    {
-       int i;
-       while ((i = find_i (old)) >=0) 
-           if (new_l)
-               elem (i) =new_l;
-           else {
-               unordered_del (i);
-           }
-    
-    }
-    void default_sort() {
-       sort (default_compare);
-    }
-    void uniq() {
-       Link_array<T> l_arr;
-       for (int i=0; i < size(); i++) 
-           if (!i || elem (i-1) != elem (i))
-               l_arr.push (elem (i)); 
-       *this = l_arr;
-    }
 
-    int find_i (T const * t) const {
-       for (int i=0; i < size(); i++)
-           if (elem (i) == t)
-               return i;
-       return -1;
-    }
-    T *find_l (T const *t) const
-    {
-       int i = find_i (t);
-       if (i >= 0)
-           return elem (i);
-       else
-           return 0;
-    }
 };
 
 #endif // PARRAY_HH
+