X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fpaper-outputter-scheme.cc;h=15b9599a4f86680e494bf4431eacb89b0c00f3e1;hb=3a5ba68c4200ce392683436b36e2e4ee493b78c3;hp=e05f6cc8acbb342fbb9ad38a7f9ec7b633a7d087;hpb=b37e3f652677ae0298423db9fa0e552e5fce0c92;p=lilypond.git diff --git a/lily/paper-outputter-scheme.cc b/lily/paper-outputter-scheme.cc index e05f6cc8ac..15b9599a4f 100644 --- a/lily/paper-outputter-scheme.cc +++ b/lily/paper-outputter-scheme.cc @@ -3,7 +3,7 @@ source file of the GNU LilyPond music typesetter - (c) 2005--2006 Han-Wen Nienhuys + (c) 2005--2009 Han-Wen Nienhuys */ #include "paper-outputter.hh" @@ -14,17 +14,14 @@ LY_DEFINE (ly_make_paper_outputter, "ly:make-paper-outputter", 2, 0, 0, (SCM port, SCM format), - "Create an outputter that evaluates within " - "@code{output-}@var{format}, writing to @var{port}.") + "Create an outputter that evaluates within" + " @code{output-}@var{format}, writing to @var{port}.") { - SCM_ASSERT_TYPE (ly_is_port (port), port, SCM_ARG1, __FUNCTION__, - "port"); - SCM_ASSERT_TYPE (scm_is_string (format), format, SCM_ARG2, __FUNCTION__, - "String"); + LY_ASSERT_TYPE (ly_is_port, port, 1); + LY_ASSERT_TYPE (ly_is_symbol, format, 2); - std::string f = ly_scm2string (format); - - std::string output_name = ""; + string f = ly_symbol2string (format); + string output_name = ""; SCM port_name = scm_port_filename (port); if (scm_is_string (port_name)) @@ -45,10 +42,13 @@ LY_DEFINE (ly_outputter_dump_stencil, "ly:outputter-dump-stencil", 2, 0, 0, (SCM outputter, SCM stencil), "Dump stencil @var{expr} onto @var{outputter}.") { + + LY_ASSERT_SMOB (Paper_outputter, outputter, 1); + LY_ASSERT_SMOB (Stencil, stencil, 2); + Paper_outputter *po = unsmob_outputter (outputter); Stencil *st = unsmob_stencil (stencil); - SCM_ASSERT_TYPE (po, outputter, SCM_ARG1, __FUNCTION__, "Paper_outputter"); - SCM_ASSERT_TYPE (st, stencil, SCM_ARG1, __FUNCTION__, "Paper_outputter"); + po->output_stencil (*st); return SCM_UNSPECIFIED; } @@ -57,9 +57,10 @@ LY_DEFINE (ly_outputter_dump_string, "ly:outputter-dump-string", 2, 0, 0, (SCM outputter, SCM str), "Dump @var{str} onto @var{outputter}.") { + LY_ASSERT_SMOB (Paper_outputter, outputter, 1); + LY_ASSERT_TYPE (scm_is_string, str, 2); + Paper_outputter *po = unsmob_outputter (outputter); - SCM_ASSERT_TYPE (po, outputter, SCM_ARG1, __FUNCTION__, "Paper_outputter"); - SCM_ASSERT_TYPE (scm_is_string (str), str, SCM_ARG1, __FUNCTION__, "Paper_outputter"); return po->dump_string (str); } @@ -68,8 +69,8 @@ LY_DEFINE (ly_outputter_port, "ly:outputter-port", 1, 0, 0, (SCM outputter), "Return output port for @var{outputter}.") { + LY_ASSERT_SMOB (Paper_outputter, outputter, 1); Paper_outputter *po = unsmob_outputter (outputter); - SCM_ASSERT_TYPE (po, outputter, SCM_ARG1, __FUNCTION__, "Paper_outputter"); return po->file (); } @@ -78,8 +79,8 @@ LY_DEFINE (ly_outputter_close, "ly:outputter-close", 1, 0, 0, (SCM outputter), "Close port of @var{outputter}.") { + LY_ASSERT_SMOB (Paper_outputter, outputter, 1); Paper_outputter *po = unsmob_outputter (outputter); - SCM_ASSERT_TYPE (po, outputter, SCM_ARG1, __FUNCTION__, "Paper_outputter"); po->close (); return SCM_UNSPECIFIED; @@ -89,8 +90,8 @@ LY_DEFINE (ly_outputter_output_scheme, "ly:outputter-output-scheme", 2, 0, 0, (SCM outputter, SCM expr), "Eval @var{expr} in module of @var{outputter}.") { + LY_ASSERT_SMOB (Paper_outputter, outputter, 1); Paper_outputter *po = unsmob_outputter (outputter); - SCM_ASSERT_TYPE (po, outputter, SCM_ARG1, __FUNCTION__, "Paper_outputter"); po->output_scheme (expr);