]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/context-def.cc
Run grand replace for 2015.
[lilypond.git] / lily / context-def.cc
index 3ebc45d2a273f9d931b91294777673c053c5798d..534567de2c0d88c9c5d1ce551351800857d59c3f 100644 (file)
@@ -1,7 +1,7 @@
 /*
   This file is part of LilyPond, the GNU music typesetter.
 
-  Copyright (C) 2000--2014 Han-Wen Nienhuys <hanwen@xs4all.nl>
+  Copyright (C) 2000--2015 Han-Wen Nienhuys <hanwen@xs4all.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
@@ -43,7 +43,7 @@ Context_def::Context_def ()
 
   smobify_self ();
 
-  input_location_ = make_input (Input ());
+  input_location_ = Input ().smobbed_copy ();
   context_name_ = ly_symbol2scm ("");
 }
 
@@ -54,6 +54,7 @@ Context_def::origin () const
 }
 
 Context_def::Context_def (Context_def const &s)
+  : Smob<Context_def> ()
 {
   context_aliases_ = SCM_EOL;
   translator_group_type_ = SCM_EOL;
@@ -67,7 +68,7 @@ Context_def::Context_def (Context_def const &s)
   smobify_self ();
 
   description_ = s.description_;
-  input_location_ = make_input (*s.origin ());
+  input_location_ = s.origin ()->smobbed_copy ();
   default_child_ = s.default_child_;
   accept_mods_ = s.accept_mods_;
   property_ops_ = s.property_ops_;
@@ -84,36 +85,32 @@ Context_def::~Context_def ()
 const char Context_def::type_p_name_[] = "ly:context-def?";
 
 int
-Context_def::print_smob (SCM smob, SCM port, scm_print_state *)
+Context_def::print_smob (SCM port, scm_print_state *)
 {
-  Context_def *me = (Context_def *) SCM_CELL_WORD_1 (smob);
-
   scm_puts ("#<Context_def ", port);
-  scm_display (me->context_name_, port);
+  scm_display (context_name_, port);
   scm_puts (" ", port);
-  string loc = me->origin ()->location_string ();
+  string loc = origin ()->location_string ();
   scm_puts (loc.c_str (), port);
   scm_puts (">", port);
   return 1;
 }
 
 SCM
-Context_def::mark_smob (SCM smob)
+Context_def::mark_smob ()
 {
-  ASSERT_LIVE_IS_ALLOWED (smob);
-
-  Context_def *me = (Context_def *) SCM_CELL_WORD_1 (smob);
-
-  scm_gc_mark (me->description_);
-  scm_gc_mark (me->context_aliases_);
-  scm_gc_mark (me->accept_mods_);
-  scm_gc_mark (me->translator_mods_);
-  scm_gc_mark (me->property_ops_);
-  scm_gc_mark (me->translator_group_type_);
-  scm_gc_mark (me->default_child_);
-  scm_gc_mark (me->input_location_);
-
-  return me->context_name_;
+  ASSERT_LIVE_IS_ALLOWED (self_scm ());
+
+  scm_gc_mark (description_);
+  scm_gc_mark (context_aliases_);
+  scm_gc_mark (accept_mods_);
+  scm_gc_mark (translator_mods_);
+  scm_gc_mark (property_ops_);
+  scm_gc_mark (translator_group_type_);
+  scm_gc_mark (default_child_);
+  scm_gc_mark (input_location_);
+
+  return context_name_;
 }
 
 void