X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fcontext-def.hh;h=b068e204c02e345d50bf2343def2e95a68941c27;hb=a447227710cb9b6c9fe61342a90e8cc85c022136;hp=ec737a1308e2c54063055922dc76c7233963e88a;hpb=08560a1b8076630c4fc6cb9b902614d8b74fd6fc;p=lilypond.git diff --git a/lily/include/context-def.hh b/lily/include/context-def.hh index ec737a1308..b068e204c0 100644 --- a/lily/include/context-def.hh +++ b/lily/include/context-def.hh @@ -1,7 +1,7 @@ /* This file is part of LilyPond, the GNU music typesetter. - Copyright (C) 2000--2012 Han-Wen Nienhuys + Copyright (C) 2000--2015 Han-Wen Nienhuys LilyPond is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -28,11 +28,15 @@ #include /* - The definition of a interpretation context as given in the + The definition of an interpretation context as given in the input. The lists are stored in order of definition. */ -struct Context_def +struct Context_def : public Smob { + SCM mark_smob () const; + int print_smob (SCM, scm_print_state *) const; + static const char * const type_p_name_; + virtual ~Context_def (); private: /* these lists store the definition, in opposite order of entry @@ -56,6 +60,8 @@ public: SCM get_translator_names (SCM) const; SCM get_translator_group_type () const { return translator_group_type_; } void set_acceptor (SCM accepts, bool add); + SCM lookup (SCM sym) const; + bool is_alias (SCM sym) const; VIRTUAL_COPY_CONSTRUCTOR (Context_def, Context_def); @@ -74,12 +80,9 @@ public: void apply_default_property_operations (Context *); private: - DECLARE_SMOBS (Context_def); Context_def (); Context_def (Context_def const &); }; -DECLARE_UNSMOB (Context_def, context_def); #endif /* CONTEXT_DEF_HH */ -