aboutsummaryrefslogtreecommitdiffstats
path: root/main.cpp
diff options
context:
space:
mode:
authorGav Wood <i@gavwood.com>2014-05-15 00:34:07 +0800
committerGav Wood <i@gavwood.com>2014-05-15 00:34:07 +0800
commite74dfb4685ff39a490a628438ee926a680fd86f8 (patch)
treebc499d102cc5ec5ac5ccc317c839d3a007d8a8f0 /main.cpp
parent4ba389e4fc500795cf37fea815f118b52792bde4 (diff)
downloaddexon-solidity-e74dfb4685ff39a490a628438ee926a680fd86f8.tar.gz
dexon-solidity-e74dfb4685ff39a490a628438ee926a680fd86f8.tar.zst
dexon-solidity-e74dfb4685ff39a490a628438ee926a680fd86f8.zip
LLL parser using boost::spirit.
Diffstat (limited to 'main.cpp')
-rw-r--r--main.cpp40
1 files changed, 0 insertions, 40 deletions
diff --git a/main.cpp b/main.cpp
index 2ca0ac18..674bb142 100644
--- a/main.cpp
+++ b/main.cpp
@@ -21,9 +21,6 @@
*/
#include <boost/test/unit_test.hpp>
-#include <boost/spirit/include/qi.hpp>
-#include <boost/spirit/include/phoenix.hpp>
-#include <boost/spirit/include/support_utree.hpp>
int trieTest();
int rlpTest();
@@ -38,48 +35,11 @@ int peerTest(int argc, char** argv);
#include <libethereum/BlockInfo.h>
using namespace std;
using namespace eth;
-namespace qi = boost::spirit::qi;
-namespace px = boost::phoenix;
-namespace sp = boost::spirit;
-
-template <typename Iterator> struct whitespace: qi::grammar<Iterator>
-{
- qi::rule<Iterator> start;
- whitespace(): whitespace::base_type(start)
- {
- start = *boost::spirit::standard::space;// | (';' >> *(boost::spirit::standard::char_ - qi::eol) >> qi::eol);
- }
-};
-
-ostream& operator<<(ostream& _out, sp::utree const& _this)
-{
- switch (_this.which())
- {
- case sp::utree_type::list_type: _out << "( "; for (auto const& i: _this) ::operator<<(_out, i) << " "; _out << ")"; break;
- case sp::utree_type::int_type: _out << _this.get<int>(); break;
- case sp::utree_type::string_type: _out << _this.get<string>(); break;
- default: _out << "nil";
- }
- return _out;
-}
BOOST_AUTO_TEST_CASE(basic_tests)
{
cnote << "Hello";
-/*
- auto symbol = qi::lexeme[+(~qi::char_(std::string(" ();\"\x01-\x1f\x7f") + '\0'))];
- auto integer = qi::lexeme[ qi::no_case["#x"] >> qi::hex] | qi::lexeme[ qi::no_case["#o"] >> qi::oct] | qi::lexeme[-qi::no_case["#d"] >> qi::int_];
- qi::rule<string::iterator, sp::utree()> atom = symbol | integer;
- qi::rule<string::iterator, sp::utree()> list;
- qi::rule<string::iterator, sp::utree()> element = atom | list;
- list = '(' > *element > ')';
- string input = "(suicide (caller))";
- sp::utree out;
-
- qi::parse(input.begin(), input.end(), element, out);
- cnote << out;
-*/
/* RLPStream s;
BlockInfo::genesis().fillStream(s, false);
std::cout << RLP(s.out()) << std::endl;