diff options
author | marha <marha@users.sourceforge.net> | 2012-06-08 09:33:13 +0200 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2012-06-08 09:33:13 +0200 |
commit | 990bc3f015a4f8fce2eb918375defcd44980a845 (patch) | |
tree | 8e8301f19482b52cc00bd95b4593522cc93267af /xorg-server/hw/dmx/config/parser.y | |
parent | 1af6fc1b5d93e54d6674de8b5870448b29f139a7 (diff) | |
download | vcxsrv-990bc3f015a4f8fce2eb918375defcd44980a845.tar.gz vcxsrv-990bc3f015a4f8fce2eb918375defcd44980a845.tar.bz2 vcxsrv-990bc3f015a4f8fce2eb918375defcd44980a845.zip |
Used synchronise script to update files
Diffstat (limited to 'xorg-server/hw/dmx/config/parser.y')
-rw-r--r-- | xorg-server/hw/dmx/config/parser.y | 452 |
1 files changed, 226 insertions, 226 deletions
diff --git a/xorg-server/hw/dmx/config/parser.y b/xorg-server/hw/dmx/config/parser.y index ac2441017..9a45e624f 100644 --- a/xorg-server/hw/dmx/config/parser.y +++ b/xorg-server/hw/dmx/config/parser.y @@ -1,226 +1,226 @@ -/* $XFree86$ */ -/* - * Copyright 2002-2003 Red Hat Inc., Durham, North Carolina. - * - * All Rights Reserved. - * - * Permission is hereby granted, free of charge, to any person obtaining - * a copy of this software and associated documentation files (the - * "Software"), to deal in the Software without restriction, including - * without limitation on the rights to use, copy, modify, merge, - * publish, distribute, sublicense, and/or sell copies of the Software, - * and to permit persons to whom the Software is furnished to do so, - * subject to the following conditions: - * - * The above copyright notice and this permission notice (including the - * next paragraph) shall be included in all copies or substantial - * portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NON-INFRINGEMENT. IN NO EVENT SHALL RED HAT AND/OR THEIR SUPPLIERS - * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -/* - * Authors: - * Rickard E. (Rik) Faith <faith@redhat.com> - * - */ - -%{ -#ifdef HAVE_DMX_CONFIG_H -#include <dmx-config.h> -#endif - -#include "dmxparse.h" -#include <string.h> -#include <stdlib.h> -#define YYDEBUG 1 -#define YYERROR_VERBOSE -#define YY_USE_PROTOS - -DMXConfigEntryPtr dmxConfigEntry = NULL; -#define APPEND(type, h, t) \ -{ \ - type pt; \ - for (pt = h; pt->next; pt = pt->next); \ - pt->next = t; \ -} -%} - -%union { - DMXConfigTokenPtr token; - DMXConfigStringPtr string; - DMXConfigNumberPtr number; - DMXConfigPairPtr pair; - DMXConfigFullDimPtr fdim; - DMXConfigPartDimPtr pdim; - DMXConfigDisplayPtr display; - DMXConfigWallPtr wall; - DMXConfigOptionPtr option; - DMXConfigParamPtr param; - DMXConfigCommentPtr comment; - DMXConfigSubPtr subentry; - DMXConfigVirtualPtr virtual; - DMXConfigEntryPtr entry; -} - - /* Terminals */ -%token <token> '{' '}' ';' '/' T_VIRTUAL T_DISPLAY T_WALL T_OPTION T_PARAM -%token <string> T_STRING -%token <pair> T_DIMENSION T_OFFSET T_ORIGIN -%token <comment> T_COMMENT T_LINE_COMMENT - - /* Non-termials */ -%type <token> Display Wall Terminal Open Close -%type <string> NameList Name -%type <pair> Dimension Offset Origin -%type <pdim> PartialDim -%type <fdim> FullDim -%type <display> DisplayEntry -%type <option> OptionEntry -%type <param> ParamEntry ParamList Param -%type <subentry> SubList Sub -%type <wall> WallEntry -%type <virtual> Virtual -%type <entry> Program EntryList Entry - -%% - -Program : EntryList { dmxConfigEntry = $1; } - ; - -EntryList : Entry - | EntryList Entry { APPEND(DMXConfigEntryPtr,$1,$2); $$ = $1; } - ; - -Entry : Virtual { $$ = dmxConfigEntryVirtual($1); } - | T_LINE_COMMENT { $$ = dmxConfigEntryComment($1); } - ; - -Virtual : T_VIRTUAL Open SubList Close - { $$ = dmxConfigCreateVirtual($1, NULL, NULL, $2, $3, $4); } - | T_VIRTUAL Dimension Open SubList Close - { $$ = dmxConfigCreateVirtual($1, NULL, $2, $3, $4, $5); } - | T_VIRTUAL Name Open SubList Close - { $$ = dmxConfigCreateVirtual($1, $2, NULL, $3, $4, $5); } - | T_VIRTUAL Name Dimension Open SubList Close - { $$ = dmxConfigCreateVirtual($1, $2, $3, $4, $5, $6 ); } - ; - -SubList : Sub - | SubList Sub { APPEND(DMXConfigSubPtr,$1,$2); $$ = $1; } - ; - -Sub : T_LINE_COMMENT { $$ = dmxConfigSubComment($1); } - | DisplayEntry { $$ = dmxConfigSubDisplay($1); } - | WallEntry { $$ = dmxConfigSubWall($1); } - | OptionEntry { $$ = dmxConfigSubOption($1); } - | ParamEntry { $$ = dmxConfigSubParam($1); } - ; - -OptionEntry : T_OPTION NameList Terminal - { $$ = dmxConfigCreateOption($1, $2, $3); } - ; - -ParamEntry : T_PARAM NameList Terminal - { $$ = dmxConfigCreateParam($1, NULL, $2, NULL, $3); } - | T_PARAM Open ParamList Close - { $$ = dmxConfigCreateParam($1, $2, NULL, $4, NULL); - $$->next = $3; - } - ; - -ParamList : Param - | ParamList Param { APPEND(DMXConfigParamPtr,$1,$2); $$ = $1; } - ; - -Param : NameList Terminal - { $$ = dmxConfigCreateParam(NULL, NULL, $1, NULL, $2); } - ; - -PartialDim : Dimension Offset - { $$ = dmxConfigCreatePartDim($1, $2); } - | Dimension - { $$ = dmxConfigCreatePartDim($1, NULL); } - | Offset - { $$ = dmxConfigCreatePartDim(NULL, $1); } - ; - -FullDim : PartialDim '/' PartialDim - { $$ = dmxConfigCreateFullDim($1, $3); } - | '/' PartialDim - { $$ = dmxConfigCreateFullDim(NULL, $2); } - | PartialDim - { $$ = dmxConfigCreateFullDim($1, NULL); } - ; - -DisplayEntry : Display Name FullDim Origin Terminal - { $$ = dmxConfigCreateDisplay($1, $2, $3, $4, $5); } - | Display FullDim Origin Terminal - { $$ = dmxConfigCreateDisplay($1, NULL, $2, $3, $4); } - | Display Name Origin Terminal - { $$ = dmxConfigCreateDisplay($1, $2, NULL, $3, $4); } - - | Display Name FullDim Terminal - { $$ = dmxConfigCreateDisplay($1, $2, $3, NULL, $4); } - | Display FullDim Terminal - { $$ = dmxConfigCreateDisplay($1, NULL, $2, NULL, $3); } - | Display Name Terminal - { $$ = dmxConfigCreateDisplay($1, $2, NULL, NULL, $3); } - | Display Terminal - { $$ = dmxConfigCreateDisplay($1, NULL, NULL, NULL, $2); } - ; - -WallEntry : Wall Dimension Dimension NameList Terminal - { $$ = dmxConfigCreateWall($1, $2, $3, $4, $5); } - | Wall Dimension NameList Terminal - { $$ = dmxConfigCreateWall($1, $2, NULL, $3, $4); } - | Wall NameList Terminal - { $$ = dmxConfigCreateWall($1, NULL, NULL, $2, $3); } - ; - -Display : T_DISPLAY - | T_DISPLAY T_COMMENT { $$ = $1; $$->comment = $2->comment; } - ; - -Name : T_STRING - | T_STRING T_COMMENT { $$ = $1; $$->comment = $2->comment; } - ; - -Dimension : T_DIMENSION - | T_DIMENSION T_COMMENT { $$ = $1; $$->comment = $2->comment; } - ; - -Offset : T_OFFSET - | T_OFFSET T_COMMENT { $$ = $1; $$->comment = $2->comment; } - ; - -Origin : T_ORIGIN - | T_ORIGIN T_COMMENT { $$ = $1; $$->comment = $2->comment; } - ; - -Terminal : ';' - | ';' T_COMMENT { $$ = $1; $$->comment = $2->comment; } - ; - -Open : '{' - | '{' T_COMMENT { $$ = $1; $$->comment = $2->comment; } - ; - -Close : '}' - | '}' T_COMMENT { $$ = $1; $$->comment = $2->comment; } - ; - -Wall : T_WALL - | T_WALL T_COMMENT { $$ = $1; $$->comment = $2->comment; } - ; - -NameList : Name - | NameList Name { APPEND(DMXConfigStringPtr, $1, $2); $$ = $1; } - ; +/* $XFree86$ */
+/*
+ * Copyright 2002-2003 Red Hat Inc., Durham, North Carolina.
+ *
+ * All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining
+ * a copy of this software and associated documentation files (the
+ * "Software"), to deal in the Software without restriction, including
+ * without limitation on the rights to use, copy, modify, merge,
+ * publish, distribute, sublicense, and/or sell copies of the Software,
+ * and to permit persons to whom the Software is furnished to do so,
+ * subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the
+ * next paragraph) shall be included in all copies or substantial
+ * portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ * NON-INFRINGEMENT. IN NO EVENT SHALL RED HAT AND/OR THEIR SUPPLIERS
+ * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+/*
+ * Authors:
+ * Rickard E. (Rik) Faith <faith@redhat.com>
+ *
+ */
+
+%{
+#ifdef HAVE_DMX_CONFIG_H
+#include <dmx-config.h>
+#endif
+
+#include "dmxparse.h"
+#include <string.h>
+#include <stdlib.h>
+#define YYDEBUG 1
+#define YYERROR_VERBOSE
+#define YY_USE_PROTOS
+
+DMXConfigEntryPtr dmxConfigEntry = NULL;
+#define APPEND(type, h, t) \
+{ \
+ type pt; \
+ for (pt = h; pt->next; pt = pt->next); \
+ pt->next = t; \
+}
+%}
+
+%union {
+ DMXConfigTokenPtr token;
+ DMXConfigStringPtr string;
+ DMXConfigNumberPtr number;
+ DMXConfigPairPtr pair;
+ DMXConfigFullDimPtr fdim;
+ DMXConfigPartDimPtr pdim;
+ DMXConfigDisplayPtr display;
+ DMXConfigWallPtr wall;
+ DMXConfigOptionPtr option;
+ DMXConfigParamPtr param;
+ DMXConfigCommentPtr comment;
+ DMXConfigSubPtr subentry;
+ DMXConfigVirtualPtr virtual;
+ DMXConfigEntryPtr entry;
+}
+
+ /* Terminals */
+%token <token> '{' '}' ';' '/' T_VIRTUAL T_DISPLAY T_WALL T_OPTION T_PARAM
+%token <string> T_STRING
+%token <pair> T_DIMENSION T_OFFSET T_ORIGIN
+%token <comment> T_COMMENT T_LINE_COMMENT
+
+ /* Non-termials */
+%type <token> Display Wall Terminal Open Close
+%type <string> NameList Name
+%type <pair> Dimension Offset Origin
+%type <pdim> PartialDim
+%type <fdim> FullDim
+%type <display> DisplayEntry
+%type <option> OptionEntry
+%type <param> ParamEntry ParamList Param
+%type <subentry> SubList Sub
+%type <wall> WallEntry
+%type <virtual> Virtual
+%type <entry> Program EntryList Entry
+
+%%
+
+Program : EntryList { dmxConfigEntry = $1; }
+ ;
+
+EntryList : Entry
+ | EntryList Entry { APPEND(DMXConfigEntryPtr,$1,$2); $$ = $1; }
+ ;
+
+Entry : Virtual { $$ = dmxConfigEntryVirtual($1); }
+ | T_LINE_COMMENT { $$ = dmxConfigEntryComment($1); }
+ ;
+
+Virtual : T_VIRTUAL Open SubList Close
+ { $$ = dmxConfigCreateVirtual($1, NULL, NULL, $2, $3, $4); }
+ | T_VIRTUAL Dimension Open SubList Close
+ { $$ = dmxConfigCreateVirtual($1, NULL, $2, $3, $4, $5); }
+ | T_VIRTUAL Name Open SubList Close
+ { $$ = dmxConfigCreateVirtual($1, $2, NULL, $3, $4, $5); }
+ | T_VIRTUAL Name Dimension Open SubList Close
+ { $$ = dmxConfigCreateVirtual($1, $2, $3, $4, $5, $6 ); }
+ ;
+
+SubList : Sub
+ | SubList Sub { APPEND(DMXConfigSubPtr,$1,$2); $$ = $1; }
+ ;
+
+Sub : T_LINE_COMMENT { $$ = dmxConfigSubComment($1); }
+ | DisplayEntry { $$ = dmxConfigSubDisplay($1); }
+ | WallEntry { $$ = dmxConfigSubWall($1); }
+ | OptionEntry { $$ = dmxConfigSubOption($1); }
+ | ParamEntry { $$ = dmxConfigSubParam($1); }
+ ;
+
+OptionEntry : T_OPTION NameList Terminal
+ { $$ = dmxConfigCreateOption($1, $2, $3); }
+ ;
+
+ParamEntry : T_PARAM NameList Terminal
+ { $$ = dmxConfigCreateParam($1, NULL, $2, NULL, $3); }
+ | T_PARAM Open ParamList Close
+ { $$ = dmxConfigCreateParam($1, $2, NULL, $4, NULL);
+ $$->next = $3;
+ }
+ ;
+
+ParamList : Param
+ | ParamList Param { APPEND(DMXConfigParamPtr,$1,$2); $$ = $1; }
+ ;
+
+Param : NameList Terminal
+ { $$ = dmxConfigCreateParam(NULL, NULL, $1, NULL, $2); }
+ ;
+
+PartialDim : Dimension Offset
+ { $$ = dmxConfigCreatePartDim($1, $2); }
+ | Dimension
+ { $$ = dmxConfigCreatePartDim($1, NULL); }
+ | Offset
+ { $$ = dmxConfigCreatePartDim(NULL, $1); }
+ ;
+
+FullDim : PartialDim '/' PartialDim
+ { $$ = dmxConfigCreateFullDim($1, $3); }
+ | '/' PartialDim
+ { $$ = dmxConfigCreateFullDim(NULL, $2); }
+ | PartialDim
+ { $$ = dmxConfigCreateFullDim($1, NULL); }
+ ;
+
+DisplayEntry : Display Name FullDim Origin Terminal
+ { $$ = dmxConfigCreateDisplay($1, $2, $3, $4, $5); }
+ | Display FullDim Origin Terminal
+ { $$ = dmxConfigCreateDisplay($1, NULL, $2, $3, $4); }
+ | Display Name Origin Terminal
+ { $$ = dmxConfigCreateDisplay($1, $2, NULL, $3, $4); }
+
+ | Display Name FullDim Terminal
+ { $$ = dmxConfigCreateDisplay($1, $2, $3, NULL, $4); }
+ | Display FullDim Terminal
+ { $$ = dmxConfigCreateDisplay($1, NULL, $2, NULL, $3); }
+ | Display Name Terminal
+ { $$ = dmxConfigCreateDisplay($1, $2, NULL, NULL, $3); }
+ | Display Terminal
+ { $$ = dmxConfigCreateDisplay($1, NULL, NULL, NULL, $2); }
+ ;
+
+WallEntry : Wall Dimension Dimension NameList Terminal
+ { $$ = dmxConfigCreateWall($1, $2, $3, $4, $5); }
+ | Wall Dimension NameList Terminal
+ { $$ = dmxConfigCreateWall($1, $2, NULL, $3, $4); }
+ | Wall NameList Terminal
+ { $$ = dmxConfigCreateWall($1, NULL, NULL, $2, $3); }
+ ;
+
+Display : T_DISPLAY
+ | T_DISPLAY T_COMMENT { $$ = $1; $$->comment = $2->comment; }
+ ;
+
+Name : T_STRING
+ | T_STRING T_COMMENT { $$ = $1; $$->comment = $2->comment; }
+ ;
+
+Dimension : T_DIMENSION
+ | T_DIMENSION T_COMMENT { $$ = $1; $$->comment = $2->comment; }
+ ;
+
+Offset : T_OFFSET
+ | T_OFFSET T_COMMENT { $$ = $1; $$->comment = $2->comment; }
+ ;
+
+Origin : T_ORIGIN
+ | T_ORIGIN T_COMMENT { $$ = $1; $$->comment = $2->comment; }
+ ;
+
+Terminal : ';'
+ | ';' T_COMMENT { $$ = $1; $$->comment = $2->comment; }
+ ;
+
+Open : '{'
+ | '{' T_COMMENT { $$ = $1; $$->comment = $2->comment; }
+ ;
+
+Close : '}'
+ | '}' T_COMMENT { $$ = $1; $$->comment = $2->comment; }
+ ;
+
+Wall : T_WALL
+ | T_WALL T_COMMENT { $$ = $1; $$->comment = $2->comment; }
+ ;
+
+NameList : Name
+ | NameList Name { APPEND(DMXConfigStringPtr, $1, $2); $$ = $1; }
+ ;
|