+ Item *internal_make_item (SCM sym, SCM cause, char const *name,
+ char const *f, int l, char const *fun);
+ Spanner *internal_make_spanner (SCM sym, SCM cause, char const *name,
+ char const *f, int l, char const *fun);
+ Paper_column *internal_make_column (SCM sym, char const *name,
+ char const *f, int l, char const *fun);
+
+ /**
+ override other ctor
+ */
+ TRANSLATOR_DECLARATIONS (Engraver);
+ static Engraver *unsmob (SCM eng) {
+ return dynamic_cast<Engraver *> (Translator::unsmob (eng));
+ }
+ static bool is_smob (SCM eng) {
+ return Translator::is_smob (eng) && unsmob (eng);
+ }
+};