summaryrefslogtreecommitdiff
path: root/deps/v8/src/ostreams.cc
diff options
context:
space:
mode:
authorMichaël Zasso <targos@protonmail.com>2016-09-06 22:49:51 +0200
committerMichaël Zasso <targos@protonmail.com>2016-09-22 09:51:19 +0200
commitec02b811a8a5c999bab4de312be2d732b7d9d50b (patch)
treeca3068017254f238cf413a451c57a803572983a4 /deps/v8/src/ostreams.cc
parentd2eb7ce0105369a9cad82787cb33a665e9bd00ad (diff)
downloadnode-new-ec02b811a8a5c999bab4de312be2d732b7d9d50b.tar.gz
deps: update V8 to 5.4.500.27
Pick up latest commit from the 5.4-lkgr branch. deps: edit V8 gitignore to allow trace event copy deps: update V8 trace event to 315bf1e2d45be7d53346c31cfcc37424a32c30c8 deps: edit V8 gitignore to allow gtest_prod.h copy deps: update V8 gtest to 6f8a66431cb592dad629028a50b3dd418a408c87 PR-URL: https://github.com/nodejs/node/pull/8317 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Diffstat (limited to 'deps/v8/src/ostreams.cc')
-rw-r--r--deps/v8/src/ostreams.cc16
1 files changed, 15 insertions, 1 deletions
diff --git a/deps/v8/src/ostreams.cc b/deps/v8/src/ostreams.cc
index 120db257cd..a0a548b607 100644
--- a/deps/v8/src/ostreams.cc
+++ b/deps/v8/src/ostreams.cc
@@ -61,6 +61,14 @@ std::ostream& PrintUC16(std::ostream& os, uint16_t c, bool (*pred)(uint16_t)) {
return os << buf;
}
+std::ostream& PrintUC16ForJSON(std::ostream& os, uint16_t c,
+ bool (*pred)(uint16_t)) {
+ // JSON does not allow \x99; must use \u0099.
+ char buf[10];
+ const char* format = pred(c) ? "%c" : "\\u%04x";
+ snprintf(buf, sizeof(buf), format, c);
+ return os << buf;
+}
std::ostream& PrintUC32(std::ostream& os, int32_t c, bool (*pred)(uint16_t)) {
if (c <= String::kMaxUtf16CodeUnit) {
@@ -84,7 +92,7 @@ std::ostream& operator<<(std::ostream& os, const AsEscapedUC16ForJSON& c) {
if (c.value == '\r') return os << "\\r";
if (c.value == '\t') return os << "\\t";
if (c.value == '\"') return os << "\\\"";
- return PrintUC16(os, c.value, IsOK);
+ return PrintUC16ForJSON(os, c.value, IsOK);
}
@@ -97,5 +105,11 @@ std::ostream& operator<<(std::ostream& os, const AsUC32& c) {
return PrintUC32(os, c.value, IsPrint);
}
+std::ostream& operator<<(std::ostream& os, const AsHex& hex) {
+ char buf[20];
+ snprintf(buf, sizeof(buf), "%.*" PRIx64, hex.min_width, hex.value);
+ return os << buf;
+}
+
} // namespace internal
} // namespace v8