summaryrefslogtreecommitdiff
path: root/src/core/utils/CSSParser.cpp
diff options
context:
space:
mode:
authorBenjamin Paassen <bpaassen@techfak.uni-bielefeld.de>2014-11-14 00:13:40 +0100
committerBenjamin Paassen <bpaassen@techfak.uni-bielefeld.de>2014-11-14 00:13:40 +0100
commit8ae1ca37ae7b3e5443221908e7ca2a38a70c96ed (patch)
tree0e0b964958facbd291b0fb0c13515c4b14b67381 /src/core/utils/CSSParser.cpp
parentbc4d1cb7dcbbab9bca7f75e2e0c70d54493aae0b (diff)
added .gitignore file and finished building the rough class structure for CSS parsing. This, however, is very likely to be very wrong at this current state. Shivering with fear I await my liegelords justice.
Diffstat (limited to 'src/core/utils/CSSParser.cpp')
-rw-r--r--src/core/utils/CSSParser.cpp29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/core/utils/CSSParser.cpp b/src/core/utils/CSSParser.cpp
index 6ac98fa..e66eb34 100644
--- a/src/core/utils/CSSParser.cpp
+++ b/src/core/utils/CSSParser.cpp
@@ -16,11 +16,40 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
+#include "BufferedCharReader.hpp"
+#include "Tokenizer.hpp"
+
#include "CSSParser.hpp"
namespace ousia {
namespace utils {
+static const int CURLY_OPEN = 1;
+static const int CURLY_CLOSE = 2;
+static const int COLON = 3;
+static const int SEMICOLON = 4;
+static const int HASH = 5;
+static const int BRACKET_OPEN = 6;
+static const int BRACKET_CLOSE = 7;
+static const int COMMENT_OPEN = 8;
+static const int COMMENT_CLOSE = 9;
+
+static const TokenTreeNode CSS_ROOT{{{"{", CURLY_OPEN},
+ {"}", CURLY_CLOSE},
+ {":", COLON},
+ {";", SEMICOLON},
+ {"#", HASH},
+ {"[", BRACKET_OPEN},
+ {"]", BRACKET_CLOSE},
+ {"/*", COMMENT_OPEN},
+ {"*/", COMMENT_CLOSE}}};
+
+StyleNode CSSParser::parse(BufferedCharReader &input) {
+ Tokenizer tokenizer {input, CSS_ROOT};
+ //TODO: implement
+
+}
+
}