]> git.donarmstrong.com Git - lilypond.git/commitdiff
* lily/simultaneous-music-iterator.cc: remove clone() and copy
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Wed, 4 Feb 2004 17:23:24 +0000 (17:23 +0000)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Wed, 4 Feb 2004 17:23:24 +0000 (17:23 +0000)
constructor from Music_iterator. Changes throughout.

* lily/include/music-iterator.hh (class Music_iterator): remove
Music_iterator::skip and Music_iterator::get_pending_events from
interface. Rename report_to -> get_outlet

* lily/auto-change-iterator.cc: move contents from
new-auto-change-iterator.cc from

35 files changed:
ChangeLog
Documentation/topdocs/NEWS.texi
lily/apply-context-iterator.cc
lily/auto-change-iterator.cc
lily/bar-check-iterator.cc
lily/chord-tremolo-iterator.cc
lily/context-specced-music-iterator.cc
lily/event-chord-iterator.cc
lily/folded-repeat-iterator.cc
lily/include/change-iterator.hh
lily/include/chord-tremolo-iterator.hh
lily/include/event-chord-iterator.hh
lily/include/folded-repeat-iterator.hh
lily/include/grace-iterator.hh
lily/include/music-iterator.hh
lily/include/music-wrapper-iterator.hh
lily/include/output-property-music-iterator.hh
lily/include/percent-repeat-iterator.hh
lily/include/property-iterator.hh
lily/include/sequential-iterator.hh
lily/include/sequential-music-iterator.hh
lily/include/simple-music-iterator.hh
lily/include/simultaneous-music-iterator.hh
lily/include/time-scaled-music-iterator.hh
lily/lyric-combine-music-iterator.cc
lily/music-iterator.cc
lily/music-wrapper-iterator.cc
lily/new-lyric-combine-music-iterator.cc
lily/new-part-combine-iterator.cc
lily/percent-repeat-iterator.cc
lily/property-iterator.cc
lily/sequential-iterator.cc
lily/simple-music-iterator.cc
lily/simultaneous-music-iterator.cc
lily/unfolded-repeat-iterator.cc

index fc5c9e92a2a2c99d1068caabdcc5881d8d7bfcfa..ee2abefe429f06e34af80a3fe1a221557d33ba79 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -4,6 +4,9 @@
 
 2004-02-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
 
+       * lily/simultaneous-music-iterator.cc: remove clone() and copy
+       constructor from Music_iterator. Changes throughout.
+
        * lily/include/music-iterator.hh (class Music_iterator): remove
        Music_iterator::skip and Music_iterator::get_pending_events from
        interface. Rename report_to -> get_outlet 
index 6a9696913357db5152254e1fe6d160a301ee4b0d..d5f708864b01a7e86ce7150b06b1f87e518b19fe 100644 (file)
@@ -43,8 +43,8 @@ PostScript file output is disallowed, and lilypond-bin is invoked with
 @code{--safe-mode}, the user's Guile expressions are evaluated in a
 safe environment and file inclusion is not allowed.
 
-Be warned that a DOS attack using Guile, @TeX{} or PostScript is
-rather easy.
+Warning: this does protect against denial-of-service attacks using
+Guile, @TeX{} or PostScript.
 
 (This feature is still experimental.)
 
index feb3a8346076a0ef9437d1c2b72c995c397e71e9..1da88fc09c1fc78b1d1001d2c145f6272affca9f 100644 (file)
@@ -8,7 +8,6 @@
 class Apply_context_iterator : public Simple_music_iterator
 {
 public:
-  VIRTUAL_COPY_CONS (Music_iterator);
   DECLARE_SCHEME_CALLBACK(constructor, ());
 protected:
   virtual void process (Moment);
index f5bb1bbe39542c3afe5ab3d492ac8ea9fa6f4a35..9eb0709982bfdccfa1bf6c53ac60a321f9e31994 100644 (file)
@@ -16,7 +16,6 @@
 class Auto_change_iterator : public Music_wrapper_iterator
 {
 public:
-  VIRTUAL_COPY_CONS (Music_iterator);
   DECLARE_SCHEME_CALLBACK(constructor, ());
   
   Auto_change_iterator ();
index 380edbf44800f41f7563b2d862bc33f9e34e5a52..a0348f267d3dd2f4afb8983580f6fb92145dd1c2 100644 (file)
@@ -19,7 +19,6 @@
 class Bar_check_iterator : Simple_music_iterator
 {
 public:
-  VIRTUAL_COPY_CONS(Bar_check_iterator);
   virtual void process (Moment);
   Bar_check_iterator( );
   DECLARE_SCHEME_CALLBACK(constructor, ());
index 3de2ba5ba30226c124403c74f0a9179ab07cebd7..670ce66ffdd52cab468522c2811d02c1c5a26b87 100644 (file)
@@ -31,18 +31,6 @@ Chord_tremolo_iterator::Chord_tremolo_iterator ()
   child_iter_ = 0;
 }
 
-Chord_tremolo_iterator::Chord_tremolo_iterator (Chord_tremolo_iterator const &src)
-  : Music_iterator (src)
-{
-  factor_ = src.factor_;
-  child_iter_ = 0;
-  if (src.child_iter_)
-    {
-      child_iter_ = src.child_iter_->clone ();
-      scm_gc_unprotect_object (child_iter_->self_scm());
-    }
-}
-
 void
 Chord_tremolo_iterator::do_quit()
 {
index 801f1b20dd743cf71e9580562b84d4c01bc8d021..fd6bcf3a028cc682d6f041460b22db6197e23783 100644 (file)
@@ -14,7 +14,6 @@
 class Context_specced_music_iterator : public Music_wrapper_iterator
 {
 public:
-  VIRTUAL_COPY_CONS(Music_iterator);
   DECLARE_SCHEME_CALLBACK(constructor,());
   virtual void construct_children ();
 };
index d45168d5733d89953384c1a24a31e7d4b96d748c..24b6ef5ad14235454c0643f85a92eed2187e35db 100644 (file)
@@ -16,11 +16,6 @@ Event_chord_iterator::Event_chord_iterator ()
 {
 }
 
-Event_chord_iterator::Event_chord_iterator (Event_chord_iterator const &src)
-  : Simple_music_iterator (src)
-{
-}
-
 Translator_group*
 Event_chord_iterator::get_req_translator ()
 {
@@ -47,7 +42,7 @@ Event_chord_iterator::get_elt () const
 
 
 void
-Event_chord_iterator::process (Moment )
+Event_chord_iterator::process (Moment m)
 {
   if (last_processed_mom_ < Moment (0))
     {
@@ -61,6 +56,7 @@ Event_chord_iterator::process (Moment )
            mus->origin ()->warning (_f ("Junking event: `%s'", mus->name()));
        }
     }
+  Simple_music_iterator::process (m);
 }
 
 IMPLEMENT_CTOR_CALLBACK (Event_chord_iterator);
index 9465184b6b98d01af0aaa3c98bcb949a6855d293..0a7decd4d858bff2733629d3523b7ad8987ad672 100644 (file)
@@ -32,24 +32,6 @@ Folded_repeat_iterator::do_quit()
   if (alternative_iter_)alternative_iter_->quit();
 }
 
-Folded_repeat_iterator::Folded_repeat_iterator (Folded_repeat_iterator const &src)
-  : Music_iterator (src)
-{
-  main_iter_ = 0;
-  alternative_iter_ = 0;
-  main_length_mom_ = src.main_length_mom_;
-
-  if (src.alternative_iter_)
-    alternative_iter_ = src.alternative_iter_->clone ();
-  if (src.main_iter_)
-    main_iter_ = src.main_iter_->clone ();
-  
-  if (main_iter_)
-    scm_gc_unprotect_object (main_iter_->self_scm());
-  if (alternative_iter_)
-    scm_gc_unprotect_object (alternative_iter_->self_scm());
-}
-
 Moment
 Folded_repeat_iterator::pending_moment () const
 {
index b760501f3019ad9ef21cae1924047854d322b9e2..a3f5456ee377568165a098e774dc7a972c37492d 100644 (file)
@@ -16,7 +16,6 @@
 class Change_iterator : public Simple_music_iterator
 {
 public:
-  VIRTUAL_COPY_CONS (Music_iterator);
   /* constructor is public */
   virtual void process (Moment);
   DECLARE_SCHEME_CALLBACK(constructor, ());
index 17ebc1be826758d401d44071e022671eec8c72e9..9809841f78975ba69719e270d37b5e8f79c2e3bf 100644 (file)
@@ -15,7 +15,6 @@
 class Chord_tremolo_iterator : public Music_iterator
 {
 public:
-  VIRTUAL_COPY_CONS (Music_iterator);
   DECLARE_SCHEME_CALLBACK(constructor, ());
   Chord_tremolo_iterator ();
   Chord_tremolo_iterator (Chord_tremolo_iterator const & );
index e3c5fa0d092c068dd4cd69d5db854325587c892f..b985f45db350200e9e63b2009aceec0be079c172 100644 (file)
@@ -30,7 +30,6 @@ class Event_chord_iterator : public Simple_music_iterator
   
   enum { NONE_DONE, START_DONE, END_DONE }  status_;
 public:
-  VIRTUAL_COPY_CONS (Music_iterator);
   DECLARE_SCHEME_CALLBACK(constructor, ());
   Event_chord_iterator ();
   Event_chord_iterator (Event_chord_iterator const&);
index 662243802bf807480c0d9da9d8129b3229877060..a9ea0b841d6ff2ec5e89b95fe4277015deaa89ee 100644 (file)
@@ -19,7 +19,6 @@
 class Folded_repeat_iterator : public Music_iterator
 {
 public:
-  VIRTUAL_COPY_CONS (Music_iterator);
   DECLARE_SCHEME_CALLBACK(constructor, ());
 
   Folded_repeat_iterator (Folded_repeat_iterator const &src);
index 96ce38cb38e14a271abea6d3817ad274073ce24b..af5c14c53506ca4b270d6d5643be0c964eb47d88 100644 (file)
@@ -15,7 +15,6 @@
 class Grace_iterator : public Music_wrapper_iterator
 {
 public:
-  VIRTUAL_COPY_CONS (Music_iterator);
   virtual void process (Moment);
   DECLARE_SCHEME_CALLBACK(constructor, ());
   Moment pending_moment () const;
index db992549562344fcc5c23c479eb083763e87d20a..b86050dc0fcb80228fd2fc50d04fbf7a308b1c42 100644 (file)
@@ -58,13 +58,12 @@ protected:
   Moment start_mom_;
 
   DECLARE_SMOBS (Music_iterator,dummy);
+  Music_iterator (Music_iterator const&);
 public:
-  VIRTUAL_COPY_CONS (Music_iterator);
   
   Moment music_get_length () const;
   Moment music_start_mom () const;
   Music_iterator ();
-  Music_iterator (Music_iterator const&);
 
   /**
      Do the reporting.  Will try MUSIC_L_ in its own translator first,
index a9baaf4de8fe35b29243723bd44e88037ddfead4..c34d4db74b36dc559a5e383674fa5db546c1df07 100644 (file)
 class Music_wrapper_iterator : public Music_iterator
 {
 public:
-  VIRTUAL_COPY_CONS (Music_iterator);
   DECLARE_SCHEME_CALLBACK(constructor, ());  
   Music_wrapper_iterator ();
-  Music_wrapper_iterator (Music_wrapper_iterator const&);
 
   virtual void derived_substitute (Translator_group*f, Translator_group*t) ;
 
@@ -33,7 +31,6 @@ public:
   virtual Moment pending_moment () const;
   virtual void do_quit(); 
   virtual bool ok () const;
-  virtual SCM get_pending_events (Moment)const;
   virtual bool run_always () const;
 protected:
   virtual void process (Moment);
index c6d3a6262c97650f5c186dd188c33048246a8642..82ac7ed144b7b808f83e3979ae4e7b97524aec41 100644 (file)
@@ -14,7 +14,6 @@
 class Output_property_music_iterator : public Simple_music_iterator
 {
 public:  
-  VIRTUAL_COPY_CONS (Music_iterator);
   DECLARE_SCHEME_CALLBACK(constructor, ());
   /* construction */
 protected:
index b7699ec816209b3b0f83eda15549030d96de556b..ae79d0a194b1a8f448347d9ffd51bf29b809e1f8 100644 (file)
 class Percent_repeat_iterator : public Music_iterator
 {
 public:
-  VIRTUAL_COPY_CONS (Music_iterator);
   DECLARE_SCHEME_CALLBACK(constructor, ());
   Percent_repeat_iterator ();
-  Percent_repeat_iterator (Percent_repeat_iterator const & );
 protected:
   virtual void derived_substitute (Translator_group*f, Translator_group*t) ;
 
index 52048ac5959a37366f443ae1e308cc8a95099fea..666b71b06b6317671f1fc9799f7617ffc9b16002 100644 (file)
@@ -21,7 +21,6 @@
 class Property_iterator : public Simple_music_iterator
 {
 public:
-  VIRTUAL_COPY_CONS (Music_iterator);
   DECLARE_SCHEME_CALLBACK(constructor, ());
   DECLARE_SCHEME_CALLBACK(once_finalization, (SCM, SCM ));
 
@@ -39,7 +38,6 @@ protected:
 class Property_unset_iterator : public Simple_music_iterator
 {
 public:
-  VIRTUAL_COPY_CONS (Music_iterator);
   DECLARE_SCHEME_CALLBACK(constructor, ());
 protected:
   virtual void process (Moment);
@@ -48,7 +46,6 @@ protected:
 class Push_property_iterator : public Simple_music_iterator
 {
 public:
-  VIRTUAL_COPY_CONS (Music_iterator);
   DECLARE_SCHEME_CALLBACK(constructor, ());  
   DECLARE_SCHEME_CALLBACK(once_finalization, (SCM, SCM));
 protected:
@@ -60,7 +57,6 @@ class Pop_property_iterator : public Simple_music_iterator
 {
 public:
   DECLARE_SCHEME_CALLBACK(constructor, ());
-  VIRTUAL_COPY_CONS (Music_iterator);
 protected:
   virtual void process (Moment);
 };
index 2cef81e96e377135de91447eb87ff8dbf98d2be9..8674607f41b4e4e6d57c37b139f871d0cc31832d 100644 (file)
@@ -53,7 +53,6 @@ class Sequential_iterator :  public Music_iterator
 public:
   Grace_fixup * grace_fixups_;
   
-  VIRTUAL_COPY_CONS (Music_iterator);
   DECLARE_SCHEME_CALLBACK(constructor, ());
   Sequential_iterator ();
   Sequential_iterator (Sequential_iterator const&);
index 3229d02b2bd672fb9cd6ca32ff182dc2fe67dbb0..c46dcffea2f2070e94085bbab402b1bb7d241ed9 100644 (file)
@@ -18,7 +18,6 @@
 class Sequential_music_iterator :  public Sequential_iterator
 {
 public:
-  VIRTUAL_COPY_CONS (Music_iterator);
   DECLARE_SCHEME_CALLBACK(constructor, ());
 private:
   virtual SCM get_music_list()const;
index 88a1fa1b790dc13f8b6944c51af511be8fdd54b8..8471a4c04d37f11abfac34276d307052777938cb 100644 (file)
@@ -22,10 +22,8 @@ protected:
 
   Moment last_processed_mom_;
 public:
-  VIRTUAL_COPY_CONS (Music_iterator);
   DECLARE_SCHEME_CALLBACK(constructor, ()); 
   Simple_music_iterator ();
-  Simple_music_iterator (Simple_music_iterator const &);
   virtual void process (Moment);
   virtual bool ok ()const;
   virtual Moment pending_moment ()const;
index f602a823a3b079a605084cd70e77df9a5b99f6f9..10b392d4c5b9803c39f35a0095600457c6a85ab7 100644 (file)
@@ -15,7 +15,6 @@
 class Simultaneous_music_iterator : public Music_iterator
 {
 public:
-  VIRTUAL_COPY_CONS (Music_iterator);
   Simultaneous_music_iterator ();
   Simultaneous_music_iterator (Simultaneous_music_iterator const&);
   virtual void derived_substitute (Translator_group*f, Translator_group*t) ;
index 607242b82617c6ffc4372c25cead23f3950d4c76..8914ead57336791bc14f3f003ed50efc8834f3a5 100644 (file)
@@ -15,7 +15,6 @@
 class Time_scaled_music_iterator : public Music_wrapper_iterator
 {
 public:  
-  VIRTUAL_COPY_CONS (Music_iterator);
   DECLARE_SCHEME_CALLBACK(constructor, ()); 
   /* construction */
 protected:
index 4124cfedb36f4ec2c4b1ad8f2b44cc0497d50979..f0abc783c3f16cb113bc8fcbaee4544c76fc84a9 100644 (file)
@@ -17,7 +17,6 @@
 class Lyric_combine_music_iterator : public Music_iterator
 {
 public:
-  VIRTUAL_COPY_CONS (Music_iterator);
   Lyric_combine_music_iterator ();
   Lyric_combine_music_iterator (Lyric_combine_music_iterator const&src);
   DECLARE_SCHEME_CALLBACK(constructor, ());
@@ -183,23 +182,6 @@ Lyric_combine_music_iterator::do_quit ()
     lyric_iter_->quit();
 }
 
-Lyric_combine_music_iterator::Lyric_combine_music_iterator (Lyric_combine_music_iterator const & src)
-    : Music_iterator (src)
-{
-  lyric_iter_ = 0;
-  music_iter_ = 0;
-
-  if (src.lyric_iter_)
-    lyric_iter_ =  src.lyric_iter_->clone ();
-  if (src.music_iter_)
-    music_iter_ =  src.music_iter_->clone ();
-
-  if (lyric_iter_)
-    scm_gc_unprotect_object (lyric_iter_->self_scm());
-  if (music_iter_)
-    scm_gc_unprotect_object (music_iter_->self_scm());
-}
-
 Music_iterator*
 Lyric_combine_music_iterator::try_music_in_children (Music *m) const
 {
index 45d2f374dc811511a453a0c6dab6e8983d7e86ca..c2b6c0dda3fc752a678d4645109c44ddc27a83cb 100644 (file)
@@ -28,11 +28,7 @@ Music_iterator::Music_iterator ()
 
 Music_iterator::Music_iterator (Music_iterator const& src)
 {
-  handle_ = *src.handle_.clone ();
-  music_ = src.music_;
-  music_length_ = src.music_length_;
-  start_mom_ = src.start_mom_;
-  smobify_self ();
+  assert (false);
 }
 
 Music_iterator::~Music_iterator ()
index 4d794033d8cc692e7754da335cc041af4f01fe52..6dfe61c1734df57b236b88622014b5079cef0642 100644 (file)
@@ -15,17 +15,6 @@ Music_wrapper_iterator::Music_wrapper_iterator ()
   child_iter_ =0;
 }
 
-Music_wrapper_iterator::Music_wrapper_iterator (Music_wrapper_iterator const &src)
-  : Music_iterator (src)
-{
-  child_iter_ = 0;
-  if  (src.child_iter_)
-  {
-    child_iter_ = src.child_iter_->clone () ;
-    scm_gc_unprotect_object (child_iter_->self_scm());
-  }
-}
-
 void
 Music_wrapper_iterator::do_quit()
 {
index 3442efb74b7422caff7b3ef27bc1e611b4fe068e..1b3a14a84a5716b83999c74ccd37ce521cf171b2 100644 (file)
@@ -17,7 +17,6 @@ source file of the GNU LilyPond music typesetter
 class New_lyric_combine_music_iterator : public Music_iterator
 {
 public:
-  VIRTUAL_COPY_CONS (Music_iterator);
   New_lyric_combine_music_iterator ();
   New_lyric_combine_music_iterator (New_lyric_combine_music_iterator const&src);
   DECLARE_SCHEME_CALLBACK(constructor, ());
@@ -235,23 +234,6 @@ New_lyric_combine_music_iterator::do_quit ()
     lyric_iter_->quit();
 }
 
-New_lyric_combine_music_iterator::New_lyric_combine_music_iterator (New_lyric_combine_music_iterator const & src)
-    : Music_iterator (src)
-{
-  lyric_iter_ = 0;
-
-  if (src.lyric_iter_)
-    lyric_iter_ =  src.lyric_iter_->clone ();
-
-  if (lyric_iter_)
-    scm_gc_unprotect_object (lyric_iter_->self_scm());
-
-  music_context_ = src.music_context_;
-  lyric_iter_ = src.lyric_iter_;
-    
-  
-  assert (false);              // shouldn't copy, really.
-}
 
 
 Music_iterator*
index 05b837d1c2a3f50c14d3949c4b3c77df3d0611fc..e72acf4b24230b8f8de94c4a189e3f1a32ed3689 100644 (file)
@@ -17,7 +17,6 @@
 class New_pc_iterator : public Music_iterator
 {
 public:
-  VIRTUAL_COPY_CONS (Music_iterator);
   New_pc_iterator ();
 
   DECLARE_SCHEME_CALLBACK(constructor, ()); 
@@ -104,24 +103,7 @@ New_pc_iterator::do_quit ()
   shared_.set_translator (0);
 }
 
-New_pc_iterator::New_pc_iterator (New_pc_iterator const &src)
-  : Music_iterator (src)
-{
-  first_iter_ = 0;
-  second_iter_ = 0;
-
-  if(src.first_iter_)
-    first_iter_ = src.first_iter_->clone ();
-  if (src.second_iter_)
-    second_iter_ = src.second_iter_->clone ();
 
-  split_list_ = src.split_list_;
-  
-  if (first_iter_)
-    scm_gc_unprotect_object (first_iter_->self_scm());
-  if (second_iter_)
-    scm_gc_unprotect_object (second_iter_->self_scm());
-}
 
 Moment
 New_pc_iterator::pending_moment () const
index 5f25bcf6c5ccdab309fa79411b2c8f8fbd019ab0..9648572913576c642635d2d8160ca03df4509a89 100644 (file)
@@ -25,18 +25,6 @@ Percent_repeat_iterator::do_quit()
   if (child_iter_)
     child_iter_->quit();
 }
-Percent_repeat_iterator::Percent_repeat_iterator (Percent_repeat_iterator const & p)
-  : Music_iterator (p)
-{
-  child_iter_ = 0;
- finish_mom_ = p.finish_mom_ ;
-  if (p.child_iter_)
-    {
-      child_iter_ =  p.child_iter_->clone ();
-      scm_gc_unprotect_object (child_iter_->self_scm());
-    }
-}
 
 bool
 Percent_repeat_iterator::ok () const
index 11d0f3212ea509d923e59107fdd0ad88d9477cd5..c52afecd9f17aff7c9c22fff4067c90d118b78cc 100644 (file)
@@ -158,7 +158,7 @@ Pop_property_iterator::process (Moment m)
     {
       SCM eprop = get_music ()->get_mus_property ("grob-property");
       get_outlet ()->execute_pushpop_property (sym, eprop, SCM_UNDEFINED);
-    }  
+    }
   Simple_music_iterator::process (m);
 }
 
index 2b41b1e016540f37e22cf11fc948449c060dae6c..b273ed5e6816720a8ae92960ea9e0980fd6f4ee6 100644 (file)
@@ -59,21 +59,7 @@ Sequential_iterator::do_quit ()
 }
 
 
-Sequential_iterator::Sequential_iterator (Sequential_iterator const &src)
-  : Music_iterator (src)
-{
-  grace_fixups_ = copy_grace_fixups (src.grace_fixups_);
-  cursor_ = src.cursor_;
-  list_ = src.cursor_;
-  here_mom_ = src.here_mom_;
-  iter_ = 0;
 
-  if (src.iter_)
-    {
-      iter_ = src.iter_->clone ();
-      scm_gc_unprotect_object (iter_->self_scm());
-    }
-}
 
 void
 Sequential_iterator::derived_mark ()const
index 5ea6270a5a75b8b5d040dd7ce7fb9bca9c6b9310..dabaa4f893f0a9aeb856c2f582f1218173e65959 100644 (file)
@@ -17,12 +17,6 @@ Simple_music_iterator::Simple_music_iterator ()
   last_processed_mom_ = -1;
 }
 
-Simple_music_iterator::Simple_music_iterator (Simple_music_iterator const &src)
-  : Music_iterator (src)
-{
-  last_processed_mom_ = src.last_processed_mom_;
-}
-
 bool
 Simple_music_iterator::ok ()const
 {
@@ -48,12 +42,14 @@ Simple_music_iterator::pending_moment ()const
 
 
 void
-Simple_music_iterator::process (Moment )
+Simple_music_iterator::process (Moment m)
 {
   /*
   don't do try_music (), since it would make the function useless for
-  base classes */
+  base classes
+  */
 
+  last_processed_mom_ = m;
 }
 
 IMPLEMENT_CTOR_CALLBACK (Simple_music_iterator);
index 347837275b75300b1d194c7d4ff642de418fbce3..c5a483cb94007e07fe73b4a48279ebe2a2a6b537 100644 (file)
@@ -19,27 +19,6 @@ Simultaneous_music_iterator::Simultaneous_music_iterator ()
   children_list_ = SCM_EOL;
 }
 
-Simultaneous_music_iterator::Simultaneous_music_iterator (Simultaneous_music_iterator const& src)
-  : Music_iterator (src)
-{
-  separate_contexts_b_
-    = src.separate_contexts_b_;
-  children_list_ = SCM_EOL;
-  
-  SCM children_list = SCM_EOL;
-  SCM *tail  = &children_list; 
-  for (SCM s = src.children_list_; gh_pair_p (s); s = gh_cdr(s))
-    {
-      Music_iterator *i = unsmob_iterator (gh_car (s));
-      SCM cl = i->clone ()->self_scm();
-      *tail = scm_cons (cl, *tail);
-      tail = SCM_CDRLOC (*tail);
-      scm_gc_unprotect_object (cl);
-    }
-
-  children_list_ = children_list;
-  scm_remember_upto_here_1 (children_list);
-}
 
 void
 Simultaneous_music_iterator::derived_mark()const
index fac94cece6b0a8594a4b2414165111ab9dcdbcfb..b13911340c10be0106e2c0516dcda8878750ba34 100644 (file)
@@ -16,7 +16,6 @@ class Unfolded_repeat_iterator : public Sequential_iterator
 {
 public:
   DECLARE_SCHEME_CALLBACK(constructor, ());
-  VIRTUAL_COPY_CONS (Music_iterator);
 protected:
   virtual SCM get_music_list () const;
 };
@@ -57,7 +56,6 @@ class Volta_repeat_iterator : public Sequential_iterator
 {
 public:
   DECLARE_SCHEME_CALLBACK(constructor, ());
-  VIRTUAL_COPY_CONS (Music_iterator);
   Volta_repeat_iterator();
 
   void add_repeat_command (SCM);