summaryrefslogtreecommitdiff
path: root/src/parser
diff options
context:
space:
mode:
Diffstat (limited to 'src/parser')
-rw-r--r--src/parser/document_p.cpp2
-rw-r--r--src/parser/document_p.h5
-rw-r--r--src/parser/paragraph_p.cpp20
-rw-r--r--src/parser/paragraph_p.h31
4 files changed, 55 insertions, 3 deletions
diff --git a/src/parser/document_p.cpp b/src/parser/document_p.cpp
index 5b45212..fe11aed 100644
--- a/src/parser/document_p.cpp
+++ b/src/parser/document_p.cpp
@@ -16,5 +16,5 @@ 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_ = +text_(ph::val(L"*'`$^@["));
+ document_ = +paragraph_;
}
diff --git a/src/parser/document_p.h b/src/parser/document_p.h
index f3b66cb..19565d7 100644
--- a/src/parser/document_p.h
+++ b/src/parser/document_p.h
@@ -16,14 +16,15 @@ 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 "text_p.h"
+#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_;
- text_p text_;
+ paragraph_p paragraph_;
document_p();
};
diff --git a/src/parser/paragraph_p.cpp b/src/parser/paragraph_p.cpp
new file mode 100644
index 0000000..46f0935
--- /dev/null
+++ b/src/parser/paragraph_p.cpp
@@ -0,0 +1,20 @@
+/*
+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_ = +text_(ph::val(L"*`$^@["));
+}
diff --git a/src/parser/paragraph_p.h b/src/parser/paragraph_p.h
new file mode 100644
index 0000000..7409b52
--- /dev/null
+++ b/src/parser/paragraph_p.h
@@ -0,0 +1,31 @@
+/*
+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 "text_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_;
+ text_p text_;
+
+ paragraph_p();
+};
+#endif