X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fglobal-ctor.cc;h=908a611e0c27387108b47b9785820e2146c2814b;hb=a6a51abfd0195a3cf7d6ea095cf69808852f21ce;hp=e8838acf4816a12c546768e327873882733aa9e9;hpb=07d4d05df6479d58c3c5152c07d7c86b94ee98b4;p=lilypond.git diff --git a/lily/global-ctor.cc b/lily/global-ctor.cc index e8838acf48..908a611e0c 100644 --- a/lily/global-ctor.cc +++ b/lily/global-ctor.cc @@ -1,27 +1,39 @@ -/* - global-ctor.cc -- implement global constructors - - source file of the GNU LilyPond music typesetter - - (c) 1999 Han-Wen Nienhuys - - */ +/* + This file is part of LilyPond, the GNU music typesetter. + + Copyright (C) 1999--2015 Han-Wen Nienhuys + + 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 . +*/ + #include "global-ctor.hh" -#include "array.hh" -static Array *ctor_global_static_arr_p_; +#include "std-vector.hh" + +static vector *ctor_global_statics_; void add_constructor (Global_ctor c) { - if (!ctor_global_static_arr_p_) - ctor_global_static_arr_p_ = new Array; - ctor_global_static_arr_p_->push (c); + if (!ctor_global_statics_) + ctor_global_statics_ = new vector; + ctor_global_statics_->push_back (c); } void call_constructors () { - for (int i=0; i < ctor_global_static_arr_p_->size (); i++) - (ctor_global_static_arr_p_->elem (i)) (); + for (vsize i = 0; i < ctor_global_statics_->size (); i++) + (ctor_global_statics_->at (i)) (); }