lilypond-1.5.9
[lilypond.git] / lily / global-ctor.cc
blob5fa1db034d86079eee3288654d16127c2d25f4d8
1 /*
2 global-ctor.cc -- implement global constructors
4 source file of the GNU LilyPond music typesetter
6 (c) 1999--2001 Han-Wen Nienhuys <hanwen@cs.uu.nl>
8 */
9 #include "global-ctor.hh"
10 #include "array.hh"
12 static Array<Global_ctor> *ctor_global_static_arr_p_;
14 void
15 add_constructor (Global_ctor c)
17 if (!ctor_global_static_arr_p_)
18 ctor_global_static_arr_p_ = new Array<Global_ctor>;
19 ctor_global_static_arr_p_->push (c);
22 void
23 call_constructors ()
25 for (int i=0; i < ctor_global_static_arr_p_->size (); i++)
26 (ctor_global_static_arr_p_->elem (i)) ();