Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(80)

Unified Diff: mojo/public/tools/bindings/generators/mojom_cpp_generator.py

Issue 474063002: Mojo: add support for {double,float}.{INFINITY,NEGATIVE_INFINITY,NAN} (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: mojo/public/tools/bindings/generators/mojom_cpp_generator.py
diff --git a/mojo/public/tools/bindings/generators/mojom_cpp_generator.py b/mojo/public/tools/bindings/generators/mojom_cpp_generator.py
index 8f90c419d57c1dc1377f79806d743a5723290856..3cfab78ee621b76e6fa2411b0a5c729bf675b83a 100644
--- a/mojo/public/tools/bindings/generators/mojom_cpp_generator.py
+++ b/mojo/public/tools/bindings/generators/mojom_cpp_generator.py
@@ -223,6 +223,23 @@ def TranslateConstants(token, kind):
else:
name.append(token.name)
return "::".join(name)
+
+ if kind == mojom.DOUBLE:
+ if token == "Inf" or token == "+Inf":
+ return "std::numeric_limits<double>::infinity()"
viettrungluu 2014/08/14 22:32:25 This (and everything else) probably creates a stat
+ if token == "-Inf":
+ return "-std::numeric_limits<double>::infinity()"
+ if token == "NaN":
+ return "std::numeric_limits<double>::quiet_NaN()"
+
+ if kind == mojom.FLOAT:
+ if token == "Inf" or token == "+Inf":
+ return "std::numeric_limits<float>::infinity()"
+ if token == "-Inf":
+ return "-std::numeric_limits<float>::infinity()"
+ if token == "NaN":
+ return "std::numeric_limits<float>::quiet_NaN()"
+
return '%s%s' % (token, _kind_to_cpp_literal_suffix.get(kind, ''))
def ExpressionToText(value, kind=None):

Powered by Google App Engine
This is Rietveld 408576698