diff options
author | chriseth <chris@ethereum.org> | 2017-08-25 18:43:58 +0800 |
---|---|---|
committer | Alex Beregszaszi <alex@rtfs.hu> | 2017-08-29 22:50:28 +0800 |
commit | cd22da1d9e77a9a7b6fe3ecf5bd828977acc6282 (patch) | |
tree | 2360a810f3d800407a5bbd4e6bd483b51dfa028f | |
parent | a3f77527e9da0005e3c6d9cbd4c6a56c17c1089c (diff) | |
download | dexon-solidity-cd22da1d9e77a9a7b6fe3ecf5bd828977acc6282.tar.gz dexon-solidity-cd22da1d9e77a9a7b6fe3ecf5bd828977acc6282.tar.zst dexon-solidity-cd22da1d9e77a9a7b6fe3ecf5bd828977acc6282.zip |
Remove escape function.
-rw-r--r-- | libdevcore/CommonData.cpp | 28 | ||||
-rw-r--r-- | libsolidity/ast/ASTPrinter.cpp | 14 |
2 files changed, 11 insertions, 31 deletions
diff --git a/libdevcore/CommonData.cpp b/libdevcore/CommonData.cpp index 14caf494..db11e61c 100644 --- a/libdevcore/CommonData.cpp +++ b/libdevcore/CommonData.cpp @@ -28,34 +28,6 @@ using namespace std; using namespace dev; -std::string dev::escaped(std::string const& _s, bool _all) -{ - static const map<char, char> prettyEscapes{{'\r', 'r'}, {'\n', 'n'}, {'\t', 't'}, {'\v', 'v'}}; - std::string ret; - ret.reserve(_s.size() + 2); - ret.push_back('"'); - for (auto i: _s) - if (i == '"' && !_all) - ret += "\\\""; - else if (i == '\\' && !_all) - ret += "\\\\"; - else if (prettyEscapes.count(i) && !_all) - { - ret += '\\'; - ret += prettyEscapes.find(i)->second; - } - else if (i < ' ' || _all) - { - ret += "\\x"; - ret.push_back("0123456789abcdef"[(uint8_t)i / 16]); - ret.push_back("0123456789abcdef"[(uint8_t)i % 16]); - } - else - ret.push_back(i); - ret.push_back('"'); - return ret; -} - int dev::fromHex(char _i, WhenError _throw) { if (_i >= '0' && _i <= '9') diff --git a/libsolidity/ast/ASTPrinter.cpp b/libsolidity/ast/ASTPrinter.cpp index 392179ef..09191433 100644 --- a/libsolidity/ast/ASTPrinter.cpp +++ b/libsolidity/ast/ASTPrinter.cpp @@ -21,9 +21,12 @@ */ #include <libsolidity/ast/ASTPrinter.h> -#include <boost/algorithm/string/join.hpp> #include <libsolidity/ast/AST.h> +#include <libdevcore/JSON.h> + +#include <boost/algorithm/string/join.hpp> + using namespace std; namespace dev @@ -579,8 +582,13 @@ void ASTPrinter::printSourcePart(ASTNode const& _node) if (!m_source.empty()) { SourceLocation const& location(_node.location()); - *m_ostream << indentation() << " Source: " - << escaped(m_source.substr(location.start, location.end - location.start), false) << endl; + *m_ostream << + indentation() << + " Source: " << + /// Note: this "abuses" the JSON library to print a string (as it is not a valid root node). + /// It also makes a copy of the string. + jsonCompactPrint(m_source.substr(location.start, location.end - location.start)) << + endl; } } |