/*
- context-scheme.cc -- Context bindings
+ This file is part of LilyPond, the GNU music typesetter.
- source file of the GNU LilyPond music typesetter
-
- (c) 1998--2008 Jan Nieuwenhuizen <janneke@gnu.org>
+ Copyright (C) 1998--2009 Jan Nieuwenhuizen <janneke@gnu.org>
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
+ 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/>.
*/
#include "context.hh"
#include "context-def.hh"
#include "dispatcher.hh"
+LY_DEFINE (ly_context_current_moment,
+ "ly:context-current-moment",
+ 1, 0, 0, (SCM context),
+ "Return the current moment of @var{context}.")
+{
+ Context *tr = unsmob_context (context);
+
+ LY_ASSERT_SMOB (Context, context, 1);
+
+ return tr->now_mom ().smobbed_copy ();
+}
+
LY_DEFINE (ly_context_id, "ly:context-id",
1, 0, 0, (SCM context),
"Return the ID string of @var{context},"
}
LY_DEFINE (ly_context_property, "ly:context-property",
- 2, 0, 0, (SCM c, SCM name),
- "Return the value of @var{name} from context @var{c}.")
+ 2, 0, 0, (SCM context, SCM sym),
+ "Return the value for property @var{sym} in @var{context}.")
{
- LY_ASSERT_SMOB (Context, c, 1);
- LY_ASSERT_TYPE (ly_is_symbol, name, 2);
+ LY_ASSERT_SMOB (Context, context, 1);
+ LY_ASSERT_TYPE (ly_is_symbol, sym, 2);
- Context *t = unsmob_context (c);
- return t->internal_get_property (name);
+ Context *t = unsmob_context (context);
+ return t->internal_get_property (sym);
}
LY_DEFINE (ly_context_set_property_x, "ly:context-set-property!",