summaryrefslogtreecommitdiff
path: root/src/core/utils/CSSParser.cpp
diff options
context:
space:
mode:
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
+
+}
+
}