diff options
Diffstat (limited to 'src/parser')
| -rw-r--r-- | src/parser/document_p.cpp | 2 | ||||
| -rw-r--r-- | src/parser/document_p.h | 5 | ||||
| -rw-r--r-- | src/parser/paragraph_p.cpp | 20 | ||||
| -rw-r--r-- | src/parser/paragraph_p.h | 31 |
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 |
