/* SPECIAL category is for every letter that needs to get passed to
* the parser rather than being redefinable by the user */
SPECIAL [-+*/=<>{}!?_^'',.:]
/* SPECIAL category is for every letter that needs to get passed to
* the parser rather than being redefinable by the user */
SPECIAL [-+*/=<>{}!?_^'',.:]
/* Flex picks the longest matching pattern including trailing
* contexts. Without the backup pattern, r-. does not trigger the
/* Flex picks the longest matching pattern including trailing
* contexts. Without the backup pattern, r-. does not trigger the
push_extra_token (here_input (), EXPECT_MARKUP);
else
push_extra_token (here_input (), EXPECT_SCM, predicate);
push_extra_token (here_input (), EXPECT_MARKUP);
else
push_extra_token (here_input (), EXPECT_SCM, predicate);
if ((YYSTATE == notes) || (YYSTATE == chords)) {
SCM handle = SCM_BOOL_F;
if (scm_is_pair (pitchname_tab_stack_))
handle = scm_hashq_get_handle (scm_cdar (pitchname_tab_stack_), sym);
if (scm_is_pair (handle)) {
if ((YYSTATE == notes) || (YYSTATE == chords)) {
SCM handle = SCM_BOOL_F;
if (scm_is_pair (pitchname_tab_stack_))
handle = scm_hashq_get_handle (scm_cdar (pitchname_tab_stack_), sym);
if (scm_is_pair (handle)) {
if (unsmob<Pitch> (yylval))
return (YYSTATE == notes) ? NOTENAME_PITCH : TONICNAME_PITCH;
else if (scm_is_symbol (yylval))
if (unsmob<Pitch> (yylval))
return (YYSTATE == notes) ? NOTENAME_PITCH : TONICNAME_PITCH;
else if (scm_is_symbol (yylval))
else if ((YYSTATE == chords)
&& scm_is_true (handle = scm_hashq_get_handle (chordmodifier_tab_, sym)))
{
else if ((YYSTATE == chords)
&& scm_is_true (handle = scm_hashq_get_handle (chordmodifier_tab_, sym)))
{