blob: 712d05d5d87b0a8a8aa0145b3e3c26c2dd91e5c7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
%{
#include "ges-structure-parser.h"
%}
%option noyywrap
%option nounput
%option reentrant
%option extra-type="GESStructureParser *"
%option never-interactive
%option noinput
%option nounistd
CLIP [ ]+\+clip[ ]+
TEST_CLIP [ ]+\+test-clip[ ]+
TRANSITION [ ]+\+transition[ ]+
EFFECT [ ]+\+effect[ ]+
TITLE [ ]+\+title[ ]+
TRACK [ ]+\+track[ ]+
KEYFRAME [ ]+\+keyframes[ ]+
SETTER [ ]+set-[^ ]+[ ]+
STRING \"(\\.|[^"])*\"
/* A value string, as understood by gst_structure_from_string
* Characters are from GST_ASCII_IS_STRING
* NOTE: character set is *not* supposed to be locale dependent */
VALUE {STRING}|([abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_+/:.-]+)
%%
={VALUE} {
ges_structure_parser_parse_value (yyextra, yytext);
}
{STRING} {
ges_structure_parser_parse_string (yyextra, yytext, FALSE);
}
{KEYFRAME}|{TRACK}|{CLIP}|{TRANSITION}|{EFFECT}|{TEST_CLIP}|{TITLE} {
ges_structure_parser_parse_symbol (yyextra, yytext);
}
{SETTER} {
ges_structure_parser_parse_setter (yyextra, yytext);
}
[ \t\n]+ {
ges_structure_parser_parse_whitespace (yyextra);
}
. {
/* add everything else */
ges_structure_parser_parse_default (yyextra, yytext);
}
%%
|