| Index: pkg/yaml/lib/composer.dart
|
| diff --git a/pkg/yaml/lib/composer.dart b/pkg/yaml/lib/composer.dart
|
| index e9c187969aa9dbcb51e277c80c08e4a4d0fde813..e22159f34c30f73a06c4911a83ad63efda5ac56e 100644
|
| --- a/pkg/yaml/lib/composer.dart
|
| +++ b/pkg/yaml/lib/composer.dart
|
| @@ -120,12 +120,7 @@ class _Composer extends _Visitor {
|
|
|
| match = new RegExp("^0o([0-7]+)\$").firstMatch(content);
|
| if (match != null) {
|
| - // TODO(nweiz): clean this up when Dart can parse an octal string
|
| - var n = 0;
|
| - for (var c in match.group(1).charCodes) {
|
| - n *= 8;
|
| - n += c - 48;
|
| - }
|
| + int n = int.parse(match.group(1), radix: 8);
|
| return new _ScalarNode(_Tag.yaml("int"), value: n);
|
| }
|
|
|
| @@ -153,15 +148,13 @@ class _Composer extends _Visitor {
|
|
|
| match = new RegExp("^([+-]?)\.(inf|Inf|INF)\$").firstMatch(content);
|
| if (match != null) {
|
| - var infinityStr = match.group(1) == "-" ? "-Infinity" : "Infinity";
|
| - return new _ScalarNode(_Tag.yaml("float"),
|
| - value: double.parse(infinityStr));
|
| + var value = match.group(1) == "-" ? -double.INFINITY : double.INFINITY;
|
| + return new _ScalarNode(_Tag.yaml("float"), value: value);
|
| }
|
|
|
| match = new RegExp("^\.(nan|NaN|NAN)\$").firstMatch(content);
|
| if (match != null) {
|
| - return new _ScalarNode(_Tag.yaml("float"),
|
| - value: double.parse("NaN"));
|
| + return new _ScalarNode(_Tag.yaml("float"), value: double.NAN);
|
| }
|
|
|
| return null;
|
|
|