From 96c3872ffebd588eece13ba37e75cd17faf76cfa Mon Sep 17 00:00:00 2001 From: "alanknight@google.com" Date: Tue, 21 Aug 2012 17:30:21 +0000 Subject: [PATCH] Rename i18n to intl Review URL: https://chromiumcodereview.appspot.com//10829442 git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@11076 260f80e4-7a28-3924-810f-c04153c831b5 --- pkg/{i18n => intl}/bidi_formatter.dart | 0 pkg/{i18n => intl}/bidi_utils.dart | 0 pkg/{i18n => intl}/date_format.dart | 0 pkg/{i18n => intl}/date_symbol_data.dart | 0 pkg/{i18n => intl}/date_symbols.dart | 0 pkg/{i18n => intl}/date_time_patterns.dart | 0 pkg/{i18n => intl}/intl.dart | 0 pkg/{i18n => intl}/intl_message.dart | 0 pkg/{i18n => intl}/lib/date_format_field.dart | 1 + pkg/{i18n => intl}/lib/date_format_helpers.dart | 13 +++++-------- pkg/{i18n => intl}/number_format.dart | 0 pkg/{i18n => intl}/number_symbols.dart | 0 pkg/{i18n => intl}/number_symbols_data.dart | 0 pkg/{i18n => intl}/pubspec.yaml | 2 +- pkg/{i18n => intl}/test/bidi_format_test.dart | 0 pkg/{i18n => intl}/test/bidi_utils_test.dart | 0 pkg/{i18n => intl}/test/date_time_format_test.dart | 0 .../test/date_time_format_test_data.dart | 0 pkg/{i18n => intl}/test/intl_message_test.dart | 0 pkg/{i18n => intl}/test/intl_test.dart | 0 pkg/{i18n => intl}/test/number_format_test.dart | 0 tools/create_sdk.py | 8 +++++--- utils/apidoc/apidoc.dart | 2 +- 23 files changed, 13 insertions(+), 13 deletions(-) rename pkg/{i18n => intl}/bidi_formatter.dart (100%) rename pkg/{i18n => intl}/bidi_utils.dart (100%) rename pkg/{i18n => intl}/date_format.dart (100%) rename pkg/{i18n => intl}/date_symbol_data.dart (100%) rename pkg/{i18n => intl}/date_symbols.dart (100%) rename pkg/{i18n => intl}/date_time_patterns.dart (100%) rename pkg/{i18n => intl}/intl.dart (100%) rename pkg/{i18n => intl}/intl_message.dart (100%) rename pkg/{i18n => intl}/lib/date_format_field.dart (99%) rename pkg/{i18n => intl}/lib/date_format_helpers.dart (90%) rename pkg/{i18n => intl}/number_format.dart (100%) rename pkg/{i18n => intl}/number_symbols.dart (100%) rename pkg/{i18n => intl}/number_symbols_data.dart (100%) rename pkg/{i18n => intl}/pubspec.yaml (95%) rename pkg/{i18n => intl}/test/bidi_format_test.dart (100%) rename pkg/{i18n => intl}/test/bidi_utils_test.dart (100%) rename pkg/{i18n => intl}/test/date_time_format_test.dart (100%) rename pkg/{i18n => intl}/test/date_time_format_test_data.dart (100%) rename pkg/{i18n => intl}/test/intl_message_test.dart (100%) rename pkg/{i18n => intl}/test/intl_test.dart (100%) rename pkg/{i18n => intl}/test/number_format_test.dart (100%) diff --git a/pkg/i18n/bidi_formatter.dart b/pkg/intl/bidi_formatter.dart similarity index 100% rename from pkg/i18n/bidi_formatter.dart rename to pkg/intl/bidi_formatter.dart diff --git a/pkg/i18n/bidi_utils.dart b/pkg/intl/bidi_utils.dart similarity index 100% rename from pkg/i18n/bidi_utils.dart rename to pkg/intl/bidi_utils.dart diff --git a/pkg/i18n/date_format.dart b/pkg/intl/date_format.dart similarity index 100% rename from pkg/i18n/date_format.dart rename to pkg/intl/date_format.dart diff --git a/pkg/i18n/date_symbol_data.dart b/pkg/intl/date_symbol_data.dart similarity index 100% rename from pkg/i18n/date_symbol_data.dart rename to pkg/intl/date_symbol_data.dart diff --git a/pkg/i18n/date_symbols.dart b/pkg/intl/date_symbols.dart similarity index 100% rename from pkg/i18n/date_symbols.dart rename to pkg/intl/date_symbols.dart diff --git a/pkg/i18n/date_time_patterns.dart b/pkg/intl/date_time_patterns.dart similarity index 100% rename from pkg/i18n/date_time_patterns.dart rename to pkg/intl/date_time_patterns.dart diff --git a/pkg/i18n/intl.dart b/pkg/intl/intl.dart similarity index 100% rename from pkg/i18n/intl.dart rename to pkg/intl/intl.dart diff --git a/pkg/i18n/intl_message.dart b/pkg/intl/intl_message.dart similarity index 100% rename from pkg/i18n/intl_message.dart rename to pkg/intl/intl_message.dart diff --git a/pkg/i18n/lib/date_format_field.dart b/pkg/intl/lib/date_format_field.dart similarity index 99% rename from pkg/i18n/lib/date_format_field.dart rename to pkg/intl/lib/date_format_field.dart index 7ed77133ecc..01ec5a0910c 100644 --- a/pkg/i18n/lib/date_format_field.dart +++ b/pkg/intl/lib/date_format_field.dart @@ -203,6 +203,7 @@ class _DateFormatPatternField extends _DateFormatField { */ void handleNumericField(_Stream input, Function setter, [int offset = 0]) { var result = input.nextInteger(); + if (result == null) throwFormatException(input); setter(result + offset); } diff --git a/pkg/i18n/lib/date_format_helpers.dart b/pkg/intl/lib/date_format_helpers.dart similarity index 90% rename from pkg/i18n/lib/date_format_helpers.dart rename to pkg/intl/lib/date_format_helpers.dart index 62e48a8f7f9..3deda226ebd 100644 --- a/pkg/i18n/lib/date_format_helpers.dart +++ b/pkg/intl/lib/date_format_helpers.dart @@ -125,14 +125,11 @@ class _Stream { * Assuming that the contents are characters, read as many digits as we * can see and then return the corresponding integer. Advance the stream. */ - var digitMatcher = const RegExp(@'\d'); + var digitMatcher = const RegExp(@'\d+'); int nextInteger() { - // Doing this with a regular expression is slightly slower on the VM, - // but makes a moderate difference in Javascript right now. - var digits = []; - while (!atEnd() && (digitMatcher.hasMatch(peek()))) { - digits.add(next().charCodeAt(0)); - } - return Math.parseInt(new String.fromCharCodes(digits)); + var string = digitMatcher.stringMatch(rest()); + if (string == null || string.isEmpty()) return null; + read(string.length); + return Math.parseInt(string); } } \ No newline at end of file diff --git a/pkg/i18n/number_format.dart b/pkg/intl/number_format.dart similarity index 100% rename from pkg/i18n/number_format.dart rename to pkg/intl/number_format.dart diff --git a/pkg/i18n/number_symbols.dart b/pkg/intl/number_symbols.dart similarity index 100% rename from pkg/i18n/number_symbols.dart rename to pkg/intl/number_symbols.dart diff --git a/pkg/i18n/number_symbols_data.dart b/pkg/intl/number_symbols_data.dart similarity index 100% rename from pkg/i18n/number_symbols_data.dart rename to pkg/intl/number_symbols_data.dart diff --git a/pkg/i18n/pubspec.yaml b/pkg/intl/pubspec.yaml similarity index 95% rename from pkg/i18n/pubspec.yaml rename to pkg/intl/pubspec.yaml index 4014b8fbcb2..975e9a1b278 100644 --- a/pkg/i18n/pubspec.yaml +++ b/pkg/intl/pubspec.yaml @@ -1,4 +1,4 @@ -name: i18n +name: intl description: > Contains code to deal with internationalized/localized messages, date and number formatting and parsing, diff --git a/pkg/i18n/test/bidi_format_test.dart b/pkg/intl/test/bidi_format_test.dart similarity index 100% rename from pkg/i18n/test/bidi_format_test.dart rename to pkg/intl/test/bidi_format_test.dart diff --git a/pkg/i18n/test/bidi_utils_test.dart b/pkg/intl/test/bidi_utils_test.dart similarity index 100% rename from pkg/i18n/test/bidi_utils_test.dart rename to pkg/intl/test/bidi_utils_test.dart diff --git a/pkg/i18n/test/date_time_format_test.dart b/pkg/intl/test/date_time_format_test.dart similarity index 100% rename from pkg/i18n/test/date_time_format_test.dart rename to pkg/intl/test/date_time_format_test.dart diff --git a/pkg/i18n/test/date_time_format_test_data.dart b/pkg/intl/test/date_time_format_test_data.dart similarity index 100% rename from pkg/i18n/test/date_time_format_test_data.dart rename to pkg/intl/test/date_time_format_test_data.dart diff --git a/pkg/i18n/test/intl_message_test.dart b/pkg/intl/test/intl_message_test.dart similarity index 100% rename from pkg/i18n/test/intl_message_test.dart rename to pkg/intl/test/intl_message_test.dart diff --git a/pkg/i18n/test/intl_test.dart b/pkg/intl/test/intl_test.dart similarity index 100% rename from pkg/i18n/test/intl_test.dart rename to pkg/intl/test/intl_test.dart diff --git a/pkg/i18n/test/number_format_test.dart b/pkg/intl/test/number_format_test.dart similarity index 100% rename from pkg/i18n/test/number_format_test.dart rename to pkg/intl/test/number_format_test.dart diff --git a/tools/create_sdk.py b/tools/create_sdk.py index 78f0db0e382..500ce6b6d93 100755 --- a/tools/create_sdk.py +++ b/tools/create_sdk.py @@ -58,7 +58,7 @@ # ....pkg/ # ......args/ # ......dartdoc/ -# ......i18n/ +# ......intl/ # ......logging/ # ......(more will come here) # ....util/ @@ -410,10 +410,10 @@ def Main(argv): os.makedirs(PKG) # - # Create and populate pkg/{args, i18n, logging, unittest} + # Create and populate pkg/{args, intl, logging, unittest} # - for library in ['args', 'i18n', 'logging', 'unittest']: + for library in ['args', 'intl', 'logging', 'unittest']: src_dir = join(HOME, 'pkg', library) dest_dir = join(PKG, library) os.makedirs(dest_dir) @@ -421,6 +421,8 @@ def Main(argv): for filename in os.listdir(src_dir): if filename.endswith('.dart'): copyfile(join(src_dir, filename), join(dest_dir, filename)) + if exists(join(src_dir, 'lib')): + copytree(join(src_dir, 'lib'), join(dest_dir, 'lib')) # Create and populate pkg/dartdoc. dartdoc_src_dir = join(HOME, 'pkg', 'dartdoc') diff --git a/utils/apidoc/apidoc.dart b/utils/apidoc/apidoc.dart index 0fa4171db6c..98198081790 100644 --- a/utils/apidoc/apidoc.dart +++ b/utils/apidoc/apidoc.dart @@ -110,7 +110,7 @@ void main() { } }); apidocLibraries.add(doc.scriptDir.append('../../pkg/unittest/unittest.dart')); - apidocLibraries.add(doc.scriptDir.append('../../pkg/i18n/intl.dart')); + apidocLibraries.add(doc.scriptDir.append('../../pkg/intl/intl.dart')); print('Generating docs...'); final apidoc = new Apidoc(mdn, htmldoc, outputDir, mode, generateAppCache);