bool
Context::is_removable () const
{
- return context_list_ == SCM_EOL && ! client_count_
+ return scm_is_null (context_list_) && ! client_count_
&& !dynamic_cast<Global_context const *> (daddy_context_);
}
if (Context *existing = find_context_below (this, n, id))
return existing;
- if (n == ly_symbol2scm ("Bottom"))
+ if (scm_is_eq (n, ly_symbol2scm ("Bottom")))
{
Context *tg = get_default_interpreter (id);
return tg;
return ret;
}
-IMPLEMENT_LISTENER (Context, acknowledge_infant);
void
Context::acknowledge_infant (SCM sev)
{
infant_event_ = Stream_event::unsmob (sev);
}
-IMPLEMENT_LISTENER (Context, set_property_from_event);
void
Context::set_property_from_event (SCM sev)
{
unset_property (sym);
return;
}
-
+
bool ok = true;
ok = type_check_assignment (sym, val, ly_symbol2scm ("translation-type?"));
}
}
-IMPLEMENT_LISTENER (Context, unset_property_from_event);
void
Context::unset_property_from_event (SCM sev)
{
Creates a new context from a CreateContext event, and sends an
AnnounceNewContext event to this context.
*/
-IMPLEMENT_LISTENER (Context, create_context_from_event);
void
Context::create_context_from_event (SCM sev)
{
/* We want to be the first ones to hear our own events. Therefore, wait
before registering events_below_ */
new_context->event_source ()->
- add_listener (GET_LISTENER (new_context->create_context_from_event),
+ add_listener (new_context->GET_LISTENER (Context, create_context_from_event),
ly_symbol2scm ("CreateContext"));
new_context->event_source ()->
- add_listener (GET_LISTENER (new_context->remove_context),
+ add_listener (new_context->GET_LISTENER (Context, remove_context),
ly_symbol2scm ("RemoveContext"));
new_context->event_source ()->
- add_listener (GET_LISTENER (new_context->change_parent),
+ add_listener (new_context->GET_LISTENER (Context, change_parent),
ly_symbol2scm ("ChangeParent"));
new_context->event_source ()->
- add_listener (GET_LISTENER (new_context->set_property_from_event),
+ add_listener (new_context->GET_LISTENER (Context, set_property_from_event),
ly_symbol2scm ("SetProperty"));
new_context->event_source ()->
- add_listener (GET_LISTENER (new_context->unset_property_from_event),
+ add_listener (new_context->GET_LISTENER (Context, unset_property_from_event),
ly_symbol2scm ("UnsetProperty"));
new_context->events_below_->register_as_listener (new_context->event_source_);
// but the Context_def expects to see elements of the form ('accepts symbol).
SCM accepts = SCM_EOL;
for (SCM s = definition_mods_; scm_is_pair (s); s = scm_cdr (s))
- if (scm_caar (s) == ly_symbol2scm ("accepts"))
+ if (scm_is_eq (scm_caar (s), ly_symbol2scm ("accepts")))
{
SCM elt = scm_list_2 (scm_caar (s), scm_string_to_symbol (scm_cadar (s)));
accepts = scm_cons (elt, accepts);
/* TODO: This is fairly misplaced. We can fix this when we have taken out all
iterator specific stuff from the Context class */
event_source_->
- add_listener (GET_LISTENER (acknowledge_infant),
+ add_listener (GET_LISTENER (Context, acknowledge_infant),
ly_symbol2scm ("AnnounceNewContext"));
/* The CreateContext creates a new context, and sends an announcement of the
new context through another event. That event will be stored in
ly_symbol2scm ("type"), cdef->get_context_name (),
ly_symbol2scm ("id"), ly_string2scm (id));
event_source_->
- remove_listener (GET_LISTENER (acknowledge_infant),
+ remove_listener (GET_LISTENER (Context, acknowledge_infant),
ly_symbol2scm ("AnnounceNewContext"));
assert (infant_event_);
Context *
Context::where_defined (SCM sym, SCM *value) const
{
-#ifndef NDEBUG
+#ifdef DEBUG
if (profile_property_accesses)
note_property_access (&context_property_lookup_table, sym);
#endif
bool
Context::here_defined (SCM sym, SCM *value) const
{
-#ifndef NDEBUG
+#ifdef DEBUG
if (profile_property_accesses)
note_property_access (&context_property_lookup_table, sym);
#endif
SCM
Context::internal_get_property (SCM sym) const
{
-#ifndef NDEBUG
+#ifdef DEBUG
if (profile_property_accesses)
note_property_access (&context_property_lookup_table, sym);
#endif
if (scm_is_eq (sym, context_name_symbol ()))
return true;
- return scm_c_memq (sym, aliases_) != SCM_BOOL_F;
+ return scm_is_true (scm_c_memq (sym, aliases_));
}
void
properties_dict ()->remove (sym);
}
-IMPLEMENT_LISTENER (Context, change_parent);
void
Context::change_parent (SCM sev)
{
/*
Die. The next GC sweep should take care of the actual death.
*/
-IMPLEMENT_LISTENER (Context, remove_context);
void
Context::remove_context (SCM)
{