summaryrefslogtreecommitdiff
path: root/src/parser
diff options
context:
space:
mode:
authorGrégoire Duchêne <gduchene@fastmail.net>2011-09-08 10:57:03 +0200
committerGrégoire Duchêne <gduchene@fastmail.net>2011-09-08 11:13:13 +0200
commit027031a505f9f0e5c8c5fafc94c4440667159e3c (patch)
tree957e52d351b4007f056eb3c03727667604bdd3f6 /src/parser
parent8487056e8119daeaac17f89125942850f6206e24 (diff)
Moved the default parser into a namespace.
This change is motivated by the need of having several parsers. This will make mppdown more extensible.
Diffstat (limited to 'src/parser')
-rw-r--r--src/parser/document_p.cpp20
-rw-r--r--src/parser/document_p.h31
-rw-r--r--src/parser/line_p.cpp20
-rw-r--r--src/parser/line_p.h31
-rw-r--r--src/parser/paragraph_p.cpp20
-rw-r--r--src/parser/paragraph_p.h31
-rw-r--r--src/parser/text_p.cpp45
-rw-r--r--src/parser/text_p.h37
8 files changed, 0 insertions, 235 deletions
diff --git a/src/parser/document_p.cpp b/src/parser/document_p.cpp
deleted file mode 100644
index fe11aed..0000000
--- a/src/parser/document_p.cpp
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
-Copyright (c) 2010, 2011, Grégoire Duchêne <gduchene@fastmail.net>
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
-OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-*/
-#include "document_p.h"
-
-document_p::document_p() : document_p::base_type(document_) {
- document_ = +paragraph_;
-}
diff --git a/src/parser/document_p.h b/src/parser/document_p.h
deleted file mode 100644
index 19565d7..0000000
--- a/src/parser/document_p.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
-Copyright (c) 2010, 2011, Grégoire Duchêne <gduchene@fastmail.net>
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
-OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-*/
-#ifndef _MPPDOWN_DOCUMENT_P
-#define _MPPDOWN_DOCUMENT_P
-#include <boost/spirit/include/qi.hpp>
-#include "../elements.h"
-#include "paragraph_p.h"
-
-namespace qi = boost::spirit::qi;
-namespace ph = boost::phoenix;
-
-struct document_p : qi::grammar<iiterator, document_t()> {
- qi::rule<iiterator, document_t()> document_;
- paragraph_p paragraph_;
-
- document_p();
-};
-#endif
diff --git a/src/parser/line_p.cpp b/src/parser/line_p.cpp
deleted file mode 100644
index 8426679..0000000
--- a/src/parser/line_p.cpp
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
-Copyright (c) 2010, 2011, Grégoire Duchêne <gduchene@fastmail.net>
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
-OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-*/
-#include "line_p.h"
-
-line_p::line_p() : line_p::base_type(line_) {
- line_ = +text_(ph::val(L"*'`$@_[\n")) > qi::eol;
-}
diff --git a/src/parser/line_p.h b/src/parser/line_p.h
deleted file mode 100644
index be4b61b..0000000
--- a/src/parser/line_p.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
-Copyright (c) 2010, 2011, Grégoire Duchêne <gduchene@fastmail.net>
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
-OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-*/
-#ifndef _MPPDOWN_LINE_P
-#define _MPPDOWN_LINE_P
-#include <boost/spirit/include/qi.hpp>
-#include "../elements.h"
-#include "text_p.h"
-
-namespace qi = boost::spirit::qi;
-namespace ph = boost::phoenix;
-
-struct line_p : qi::grammar<iiterator, line_t()> {
- qi::rule<iiterator, line_t()> line_;
- text_p text_;
-
- line_p();
-};
-#endif
diff --git a/src/parser/paragraph_p.cpp b/src/parser/paragraph_p.cpp
deleted file mode 100644
index d7470ea..0000000
--- a/src/parser/paragraph_p.cpp
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
-Copyright (c) 2010, 2011, Grégoire Duchêne <gduchene@fastmail.net>
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
-OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-*/
-#include "paragraph_p.h"
-
-paragraph_p::paragraph_p() : paragraph_p::base_type(paragraph_) {
- paragraph_ = +line_ > qi::eol;
-}
diff --git a/src/parser/paragraph_p.h b/src/parser/paragraph_p.h
deleted file mode 100644
index f7f1f56..0000000
--- a/src/parser/paragraph_p.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
-Copyright (c) 2010, 2011, Grégoire Duchêne <gduchene@fastmail.net>
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
-OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-*/
-#ifndef _MPPDOWN_PARAGRAPH_P
-#define _MPPDOWN_PARAGRAPH_P
-#include <boost/spirit/include/qi.hpp>
-#include "../elements.h"
-#include "line_p.h"
-
-namespace qi = boost::spirit::qi;
-namespace ph = boost::phoenix;
-
-struct paragraph_p : qi::grammar<iiterator, paragraph_t()> {
- qi::rule<iiterator, paragraph_t()> paragraph_;
- line_p line_;
-
- paragraph_p();
-};
-#endif
diff --git a/src/parser/text_p.cpp b/src/parser/text_p.cpp
deleted file mode 100644
index bd16a60..0000000
--- a/src/parser/text_p.cpp
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
-Copyright (c) 2010, 2011, Grégoire Duchêne <gduchene@fastmail.net>
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
-OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-*/
-#include "text_p.h"
-
-text_p::text_p() : text_p::base_type(text_) {
- using namespace qi;
- using namespace ph;
- using qi::standard_wide::char_;
-
- text_ = stext_(_r1) | pstext_(_r1) | atom_ | ptext_(_r1);
-
- stext_ = lit("***") >> attr(VSEMPH) >> +text_(ph::val(L"*'`$@_[")) >> "***"
- | lit("**") >> attr(SEMPH) >> +text_(ph::val(L"*'`$@_[")) >> "**"
- | lit('*') >> attr(EMPH) >> +text_(ph::val(L"*'`$@_[")) >> '*'
- | lit("''") >> attr(SALT) >> +text_(ph::val(L"*'`$@_["))>> "''"
- | lit('\'') >> attr(ALT) >> +text_(ph::val(L"*'`$@_[")) >> '\''
- | lit('`') >> attr(CODE) >> +ptext_(val(L"`")) >> '`'
- | lit('$') >> attr(MATH) >> +ptext_(val(L"$")) >> '$'
- | lit("^{") >> attr(SUPER) >> +text_(val(L"*'`$^}[")) >> '}'
- | lit('^') >> attr(SUPER) >> +text_(val(L"*'`$ "))
- | lit(L"@\"") >> attr(QUOTE) >> +text_(val(L"*'`$@\"[")) >> '"'
- | lit(L"@_") >> attr(SUB) >> +text_(val(L"*'`$@_[")) >> '_';
-
- pstext_ = lit('[') >> attr(LINK) >> +text_(val(L"]")) >> ']' >>
- lit('(') >> ptext_(val(L")")) >> ')';
-
- atom_ = lit(L"\\ ") >> attr(NBSP) | lit('\\') >> eol >> attr(NEWLINE);
-
- ptext_ = +(echar_ | rchar_(_r1));
- echar_ = lit('\\') >> ~char_(L" \n");
- rchar_ = ~char_('\\') - char_(_r1);
-}
diff --git a/src/parser/text_p.h b/src/parser/text_p.h
deleted file mode 100644
index 27f84c0..0000000
--- a/src/parser/text_p.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
-Copyright (c) 2010, 2011, Grégoire Duchêne <gduchene@fastmail.net>
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
-OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-*/
-#ifndef _MPPDOWN_TEXT_P
-#define _MPPDOWN_TEXT_P
-#include <boost/spirit/include/qi.hpp>
-#include <boost/spirit/include/support_standard_wide.hpp>
-#include <string>
-#include "../elements.h"
-
-namespace qi = boost::spirit::qi;
-namespace ph = boost::phoenix;
-
-struct text_p : qi::grammar<iiterator, text_t(std::wstring)> {
- qi::rule<iiterator, text_t(std::wstring)> text_;
- qi::rule<iiterator, stext_t(std::wstring)> stext_;
- qi::rule<iiterator, pstext_t(std::wstring)> pstext_;
- qi::rule<iiterator, stattribute_t()> atom_;
- qi::rule<iiterator, std::wstring(std::wstring)> ptext_;
- qi::rule<iiterator, wchar_t()> echar_;
- qi::rule<iiterator, wchar_t(std::wstring)> rchar_;
-
- text_p();
-};
-#endif