コード例 #1
0
ファイル: capture.c プロジェクト: ma4u/pd-macambira
static void capture_list(t_capture *x, t_symbol *s, int ac, t_atom *av)
{
    while (ac--)
    {
        if (av->a_type == A_FLOAT)  /* CHECKME */
            capture_float(x, av->a_w.w_float);
        av++;
    }
}
コード例 #2
0
ファイル: LexerX.cpp プロジェクト: kfields/lemonwreck
Token *Lexer::scan() {

#define YYCTYPE char
#define YYCURSOR (this->cursor)
#define YYLIMIT (this->lim)
#define YYMARKER (this->marker)
#define	YYFILL(n) {fill();}

	for(;;) {
		capture_begin();
	
		
#line 22 "<stdout>"
{
	YYCTYPE yych;

	if ((YYLIMIT - YYCURSOR) < 5) YYFILL(5);
	yych = *YYCURSOR;
	switch (yych) {
	case 0x00:	goto yy26;
	case '\t':
	case '\f':
	case ' ':	goto yy30;
	case '\n':
	case '\r':	goto yy28;
	case '(':	goto yy22;
	case ')':	goto yy24;
	case '*':	goto yy18;
	case '+':	goto yy14;
	case ',':	goto yy10;
	case '-':	goto yy16;
	case '.':	goto yy8;
	case '/':	goto yy20;
	case '0':
	case '1':
	case '2':
	case '3':
	case '4':
	case '5':
	case '6':
	case '7':
	case '8':
	case '9':	goto yy6;
	case ':':	goto yy12;
	case 'A':
	case 'B':
	case 'C':
	case 'D':
	case 'E':
	case 'F':
	case 'G':
	case 'H':
	case 'I':
	case 'J':
	case 'K':
	case 'L':
	case 'M':
	case 'N':
	case 'O':
	case 'P':
	case 'Q':
	case 'R':
	case 'S':
	case 'T':
	case 'U':
	case 'V':
	case 'W':
	case 'X':
	case 'Y':
	case 'Z':
	case 'a':
	case 'b':
	case 'c':
	case 'e':
	case 'f':
	case 'g':
	case 'h':
	case 'i':
	case 'j':
	case 'k':
	case 'l':
	case 'm':
	case 'n':
	case 'o':
	case 'q':
	case 'r':
	case 's':
	case 't':
	case 'u':
	case 'v':
	case 'w':
	case 'x':
	case 'y':
	case 'z':	goto yy5;
	case 'd':	goto yy2;
	case 'p':	goto yy4;
	default:	goto yy32;
	}
yy2:
	++YYCURSOR;
	switch ((yych = *YYCURSOR)) {
	case 'e':	goto yy46;
	default:	goto yy41;
	}
yy3:
#line 31 "LexerX.re"
	{ return create_name_token(capture_string()); }
#line 117 "<stdout>"
yy4:
	yych = *++YYCURSOR;
	switch (yych) {
	case 'a':	goto yy42;
	default:	goto yy41;
	}
yy5:
	yych = *++YYCURSOR;
	goto yy41;
yy6:
	yych = *(YYMARKER = ++YYCURSOR);
	goto yy39;
yy7:
#line 33 "LexerX.re"
	{ return create_int_token(capture_int()); }
#line 133 "<stdout>"
yy8:
	++YYCURSOR;
	switch ((yych = *YYCURSOR)) {
	case '0':
	case '1':
	case '2':
	case '3':
	case '4':
	case '5':
	case '6':
	case '7':
	case '8':
	case '9':	goto yy33;
	default:	goto yy9;
	}
yy9:
#line 59 "LexerX.re"
	{ 
			printf( "Unrecognized character: %c\n", *(this->ccursor) );
			continue;
		}
#line 155 "<stdout>"
yy10:
	++YYCURSOR;
#line 37 "LexerX.re"
	{ return create_token(TOKEN_COMMA); }
#line 160 "<stdout>"
yy12:
	++YYCURSOR;
#line 39 "LexerX.re"
	{ return create_token(TOKEN_COLON); }
#line 165 "<stdout>"
yy14:
	++YYCURSOR;
#line 41 "LexerX.re"
	{ return create_token(TOKEN_ADD); }
#line 170 "<stdout>"
yy16:
	++YYCURSOR;
#line 43 "LexerX.re"
	{ return create_token(TOKEN_SUB); }
#line 175 "<stdout>"
yy18:
	++YYCURSOR;
#line 45 "LexerX.re"
	{ return create_token(TOKEN_MUL); }
#line 180 "<stdout>"
yy20:
	++YYCURSOR;
#line 47 "LexerX.re"
	{ return create_token(TOKEN_DIV); }
#line 185 "<stdout>"
yy22:
	++YYCURSOR;
#line 49 "LexerX.re"
	{ return create_token(TOKEN_LPAREN); }
#line 190 "<stdout>"
yy24:
	++YYCURSOR;
#line 51 "LexerX.re"
	{ return create_token(TOKEN_RPAREN); }
#line 195 "<stdout>"
yy26:
	++YYCURSOR;
#line 53 "LexerX.re"
	{ return create_token(TOKEN_EOF); }
#line 200 "<stdout>"
yy28:
	++YYCURSOR;
#line 55 "LexerX.re"
	{ return emit_newline(); }
#line 205 "<stdout>"
yy30:
	++YYCURSOR;
#line 57 "LexerX.re"
	{ continue; }
#line 210 "<stdout>"
yy32:
	yych = *++YYCURSOR;
	goto yy9;
yy33:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	switch (yych) {
	case '0':
	case '1':
	case '2':
	case '3':
	case '4':
	case '5':
	case '6':
	case '7':
	case '8':
	case '9':	goto yy33;
	default:	goto yy35;
	}
yy35:
#line 35 "LexerX.re"
	{ return create_float_token(capture_float()); }
#line 234 "<stdout>"
yy36:
	yych = *++YYCURSOR;
	switch (yych) {
	case '0':
	case '1':
	case '2':
	case '3':
	case '4':
	case '5':
	case '6':
	case '7':
	case '8':
	case '9':	goto yy33;
	default:	goto yy37;
	}
yy37:
	YYCURSOR = YYMARKER;
	goto yy7;
yy38:
	YYMARKER = ++YYCURSOR;
	if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
	yych = *YYCURSOR;
yy39:
	switch (yych) {
	case '.':	goto yy36;
	case '0':
	case '1':
	case '2':
	case '3':
	case '4':
	case '5':
	case '6':
	case '7':
	case '8':
	case '9':	goto yy38;
	default:	goto yy7;
	}
yy40:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
yy41:
	switch (yych) {
	case 'A':
	case 'B':
	case 'C':
	case 'D':
	case 'E':
	case 'F':
	case 'G':
	case 'H':
	case 'I':
	case 'J':
	case 'K':
	case 'L':
	case 'M':
	case 'N':
	case 'O':
	case 'P':
	case 'Q':
	case 'R':
	case 'S':
	case 'T':
	case 'U':
	case 'V':
	case 'W':
	case 'X':
	case 'Y':
	case 'Z':
	case 'a':
	case 'b':
	case 'c':
	case 'd':
	case 'e':
	case 'f':
	case 'g':
	case 'h':
	case 'i':
	case 'j':
	case 'k':
	case 'l':
	case 'm':
	case 'n':
	case 'o':
	case 'p':
	case 'q':
	case 'r':
	case 's':
	case 't':
	case 'u':
	case 'v':
	case 'w':
	case 'x':
	case 'y':
	case 'z':	goto yy40;
	default:	goto yy3;
	}
yy42:
	yych = *++YYCURSOR;
	switch (yych) {
	case 's':	goto yy43;
	default:	goto yy41;
	}
yy43:
	yych = *++YYCURSOR;
	switch (yych) {
	case 's':	goto yy44;
	default:	goto yy41;
	}
yy44:
	++YYCURSOR;
	switch ((yych = *YYCURSOR)) {
	case 'A':
	case 'B':
	case 'C':
	case 'D':
	case 'E':
	case 'F':
	case 'G':
	case 'H':
	case 'I':
	case 'J':
	case 'K':
	case 'L':
	case 'M':
	case 'N':
	case 'O':
	case 'P':
	case 'Q':
	case 'R':
	case 'S':
	case 'T':
	case 'U':
	case 'V':
	case 'W':
	case 'X':
	case 'Y':
	case 'Z':
	case 'a':
	case 'b':
	case 'c':
	case 'd':
	case 'e':
	case 'f':
	case 'g':
	case 'h':
	case 'i':
	case 'j':
	case 'k':
	case 'l':
	case 'm':
	case 'n':
	case 'o':
	case 'p':
	case 'q':
	case 'r':
	case 's':
	case 't':
	case 'u':
	case 'v':
	case 'w':
	case 'x':
	case 'y':
	case 'z':	goto yy40;
	default:	goto yy45;
	}
yy45:
#line 29 "LexerX.re"
	{ return create_token(TOKEN_PASS); }
#line 404 "<stdout>"
yy46:
	yych = *++YYCURSOR;
	switch (yych) {
	case 'f':	goto yy47;
	default:	goto yy41;
	}
yy47:
	++YYCURSOR;
	switch ((yych = *YYCURSOR)) {
	case 'A':
	case 'B':
	case 'C':
	case 'D':
	case 'E':
	case 'F':
	case 'G':
	case 'H':
	case 'I':
	case 'J':
	case 'K':
	case 'L':
	case 'M':
	case 'N':
	case 'O':
	case 'P':
	case 'Q':
	case 'R':
	case 'S':
	case 'T':
	case 'U':
	case 'V':
	case 'W':
	case 'X':
	case 'Y':
	case 'Z':
	case 'a':
	case 'b':
	case 'c':
	case 'd':
	case 'e':
	case 'f':
	case 'g':
	case 'h':
	case 'i':
	case 'j':
	case 'k':
	case 'l':
	case 'm':
	case 'n':
	case 'o':
	case 'p':
	case 'q':
	case 'r':
	case 's':
	case 't':
	case 'u':
	case 'v':
	case 'w':
	case 'x':
	case 'y':
	case 'z':	goto yy40;
	default:	goto yy48;
	}
yy48:
#line 27 "LexerX.re"
	{ return create_token(TOKEN_DEF); }
#line 471 "<stdout>"
}
#line 63 "LexerX.re"

	}
}