summaryrefslogtreecommitdiff
path: root/css/scanner.l
diff options
context:
space:
mode:
Diffstat (limited to 'css/scanner.l')
-rw-r--r--css/scanner.l112
1 files changed, 0 insertions, 112 deletions
diff --git a/css/scanner.l b/css/scanner.l
deleted file mode 100644
index 91574954e..000000000
--- a/css/scanner.l
+++ /dev/null
@@ -1,112 +0,0 @@
-/*
- * This file is part of NetSurf, http://netsurf-browser.org/
- * Licensed under the GNU General Public License,
- * http://www.opensource.org/licenses/gpl-license
- * Copyright 2004 James Bursa <bursa@users.sourceforge.net>
- */
-
-/** \file
- * CSS tokeniser using re2c.
- *
- * see CSS2 Specification, chapter 4
- * http://www.w3.org/TR/REC-CSS2/syndata.html,
- * and errata
- * http://www.w3.org/Style/css2-updates/REC-CSS2-19980512-errata
- */
-
-#include <stdbool.h>
-#define CSS_INTERNALS
-#include "css/css.h"
-#include "css/parser.h"
-
-#define YYCTYPE unsigned char
-#define YYCURSOR (*buffer)
-#define YYLIMIT end
-#define YYMARKER marker
-#define YYFILL(n) { return 0; }
-
-
-/**
- * Identify a CSS source token.
- *
- * \param buffer source to tokenise, updated to new position
- * \param end end of source
- * \param token_text updated to start of recognized token
- * \return token number
- */
-
-int css_tokenise(unsigned char **buffer, unsigned char *end,
- unsigned char **token_text)
-{
- unsigned char *marker;
-
-start:
- *token_text = YYCURSOR;
-
-/*!re2c
-nonascii = [\200-\377];
-unicode = "\\" [0-9a-f]+ ("\r\n" | [ \n\r\t\f])?;
-escape = unicode | "\\" [^\n\r\f0-9a-f];
-nmchar = [-a-zA-Z0-9_] | nonascii | escape;
-nmstart = [a-zA-Z_] | nonascii | escape;
-ident = [-]? nmstart nmchar*;
-name = nmchar+;
-num = [+-]? ([0-9]+ | [0-9]* "." [0-9]+);
-nl = "\n" | "\r\n" | "\r" | "\f";
-string1 = "\"" ([\t !#$%&(-~] | "\\" nl | "'" | nonascii | escape)* "\"";
-string2 = "'" ([\t !#$%&(-~] | "\\" nl | "\""| nonascii | escape)* "'";
-string = string1 | string2;
-s = [ \t\r\n\f];
-w = s*;
-any = [\000-\377];
-
-ident { return IDENT; }
-"@" ident { return ATKEYWORD; }
-string { return STRING; }
-"#" name { return HASH; }
-
-num { return NUMBER; }
-num "%" { return PERCENTAGE; }
-num ident { return DIMENSION; }
-
-"url(" w string w ")" | "url(" w ([!#$%&*-~]|nonascii|escape)* w ")"
- { return URI; }
-"U+" [0-9A-F?]+ ("-" [0-9A-F]+ )?
- { return UNICODE_RANGE; }
-
-"<!--" { goto start; /* ignore CDO */ }
-"-->" { goto start; /* ignore CDC */ }
-
-";" { return SEMI; }
-"{" { return LBRACE; }
-"}" { return RBRACE; }
-"(" { return LPAREN; }
-")" { return RPAREN; }
-"[" { return LBRAC; }
-"]" { return RBRAC; }
-
-s+ { return S; }
-
-"/*" (any\[*])* "*"+ ((any\[/*]) (any\[*])* "*"+)* "/"
- { goto start; /* ignore comments */ }
-
-ident "(" { return FUNCTION; }
-
-"~=" { return INCLUDES; }
-"|=" { return DASHMATCH; }
-"^=" { return PREFIX; }
-"$=" { return SUFFIX; }
-"*=" { return SUBSTR; }
-
-"=" { return EQUALS; }
-":" { return COLON; }
-"," { return COMMA; }
-"+" { return PLUS; }
-">" { return GT; }
-"." { return DOT; }
-"*" { return ASTERISK; }
-
-any { return DELIM; }
-*/
-
-}