X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fparse-scm.hh;h=31427f2e44f5e98e0c3065324fe79237413af730;hb=97513556d46fe23903e305e4147c5feccc97914d;hp=2939bc2f5c228702476732a828343257e8c586c9;hpb=f9214bac21e9926dc3248416f58190c98c4167a9;p=lilypond.git diff --git a/lily/include/parse-scm.hh b/lily/include/parse-scm.hh index 2939bc2f5c..31427f2e44 100644 --- a/lily/include/parse-scm.hh +++ b/lily/include/parse-scm.hh @@ -1,9 +1,20 @@ /* - lily-guile.hh encapsulate guile + This file is part of LilyPond, the GNU music typesetter. - source file of the GNU LilyPond music typesetter + Copyright (C) 2004--2011 Han-Wen Nienhuys - (c) 2004--2007 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 + 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 . */ #ifndef PARSE_SCM_HH @@ -21,10 +32,24 @@ struct Parse_start int nchars; Input start_location_; bool safe_; + SCM (*func_)(Parse_start *ps); + SCM form_; + Lily_parser *parser_; + + Parse_start () + { + str = 0; + nchars = 0; + safe_ = false; + parser_ = 0; + form_ = SCM_UNDEFINED; + func_ = 0; + } }; SCM catch_protected_parse_body (void *); SCM protected_ly_parse_scm (Parse_start *, bool); -SCM ly_parse_scm (char const *, int *, Input, bool); +SCM ly_parse_scm (char const *, int *, Input, bool, Lily_parser *); +SCM ly_eval_scm (SCM, Input, bool, Lily_parser *); #endif /* PARSE_SCM_HH */