Commit Graph

76 Commits

Author SHA1 Message Date
ager@chromium.org
fe6bdabc07 Some internal methods are requested when v8 is built as DLL (V8_SHARED), and
they are not available.
Make them no-op (or better yet part of public API).

TEST = Build Chromium with V8_SHARED

Review URL: http://codereview.chromium.org/7004051

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7973 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-05-23 06:14:32 +00:00
cira@chromium.org
11cc4dcfc6 Adding DateTimeFormat class to i18n API with following methods:
- format
- getWeekdays
- getMonths
- get Eras
- getAmPm

TEST=Visit i18n.kaziprst.org/datetimeformat.html
Review URL: http://codereview.chromium.org/7014019

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7967 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-05-19 21:12:47 +00:00
cira@chromium.org
9695ce9f37 Trying to re-land http://codereview.chromium.org/6901141.
Changes from previus revision:
- Made my own strncpy in I18NUtils class (we can't use OS::SNPrintF nor snprintf).
- Fixed a crashing bug related to ICU call in LanguageMatcher::BCP47ToICUFormat.

TEST=Visit i18n.kaziprst.org/locale.html
Review URL: http://codereview.chromium.org/6928017

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7796 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-05-05 17:18:22 +00:00
sgjesse@chromium.org
dfed2ce8a3 Revert r7768
This broke the Chromium Windows shared build.

BUG=none
TEST=Windows shared build works when pushed to Chromium
Review URL: http://codereview.chromium.org/6932007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7777 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-05-04 11:12:06 +00:00
cira@chromium.org
5a9fa7a8c6 Change v8Locale to match proposal - constructor is different (takes settings object, not a plain string) and I've added derive method to it.
Added comments to i18n.js methods and properties, and util functions to check settings and locale validity.

Added LanguageMatcher class until ICU gets C implementation (in progress, but late for our current deadline). I added TODO to remove LanguageMatcher code. 

TEST=Visit http://i18n.kaziprst.org/locale.html.
Review URL: http://codereview.chromium.org/6901141

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7768 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-05-03 20:43:51 +00:00
ricow@chromium.org
06932d0e6b Revert 7634, Fix experimental.gyp to include i18n-empty-js.cc so that js2c.py get correct parameters.
This caused all chromium based builds to fail (e.g., DumpRenderTree)
Review URL: http://codereview.chromium.org/6882003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7643 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-04-18 08:01:50 +00:00
cira@chromium.org
d637c32e63 Fix experimental.gyp to include i18n-empty-js.cc so that js2c.py get correct parameters.
Bug occured somewhere in the merge process.
Review URL: http://codereview.chromium.org/6875013

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7634 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-04-15 20:31:30 +00:00
ager@chromium.org
5fd4fa2a9e Introduce experimental natives that are enabled by a runtime flag.
Clean up the use of js2c. We generated two identical files.

R=sgjesse@chromium.org,rossberg@chromium.org
BUG=
TEST=

Review URL: http://codereview.chromium.org/6865013

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7630 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-04-15 12:31:03 +00:00
cira@chromium.org
8aaa0c6b18 Add v8Locale.Collator
This is a partial implementation of Collator per what's agreed upon at the last
ECMAScript meeting + mailing list. Only the following three options are implemented: ignoreAccent, ignoreCase, numeric. 

ChromeOS and Chrome need this feature for M12. This could be added as chrome extension API. Giiven that we have a rough agreement on the collation part of ECMAScript API, we thought it'd save us some duplicated work adding this to v8 (experimental i18n api) now rather than implementing it in Chrome now and moving it later. 


BUG=28604
TEST=http://i18nl10n.com/chrome/coll2.html
Review URL: http://codereview.chromium.org/6673011

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7620 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-04-14 19:10:51 +00:00
cira@chromium.org
261318b6a1 Moving locale code from i18n-extension.cc. Each part of the API now has separate cc file, and only extension related code is left in i18n-extension.{cc,h}.
There are no functional changes in this CL.
Review URL: http://codereview.chromium.org/6840024

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7608 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-04-13 21:09:22 +00:00
cira@chromium.org
df453b1203 Moving JavaScript code from i18n-extension.cc into i18n.js file using
tools/js2c.py script.
Added new type I18N to natives.h enum.
Review URL: http://codereview.chromium.org/6825049

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7591 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-04-12 18:19:40 +00:00
ager@chromium.org
20bdf9a07d Explicitly use icu namespace.
Chromium builds with U_USING_ICU_NAMESPACE=0, so we need this.

Landing for thakis@chromium.org.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7487 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-04-04 02:56:34 +00:00
vitalyr@chromium.org
7976ca2cbc Merge isolates to bleeding_edge.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7271 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-18 20:35:07 +00:00
vitalyr@chromium.org
76e226f832 Revert r7268: it borked the history.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7269 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-18 19:41:05 +00:00
vitalyr@chromium.org
6ff7fdebd3 Merge isolates to bleeding_edge.
Review URL: http://codereview.chromium.org/6685088

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7268 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-18 18:49:56 +00:00
cira@chromium.org
0f6709330c Fix memory corruption with AdoptText method.
Icu setText method keeps pointer to text, it doesn't copy it so we have to keep text around for the lifetime of the break iterator object,
or next setText operation.

Review URL: http://codereview.chromium.org/6609038

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7063 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-04 17:22:03 +00:00
cira@chromium.org
a0f0faa8e4 Adding break iterator support to the i18n api extension.
This is vendor specific, and is prefixed by v8.

WebKit layout tests will be added in a separate CL.

Review URL: http://codereview.chromium.org/6610006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7051 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-03 17:32:18 +00:00
ager@chromium.org
ed7265ea21 Remove break iterator support from the i18n api extension. It breaks
the Windows WebCore build.

http://build.chromium.org/p/client.v8/builders/Webkit/builds/854/steps/compile/logs/stdio

TBR=cira@chromium.org

Review URL: http://codereview.chromium.org/6596100

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7009 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-02 07:32:59 +00:00
ager@chromium.org
06ecb61598 Attempt to fix WebCore windows build.
If this does not work I will revert the latests changes to the
experimental i8n extension.

TBR=cira@chromium.org

Review URL: http://codereview.chromium.org/6594111

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7008 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-02 07:12:53 +00:00
cira@chromium.org
ac7bc8f1c3 Adding break iterator support to the i18n api extension.
This is vendor specific, and is prefixed by v8.

WebKit layout tests will be added in a separate CL.

Review URL: http://codereview.chromium.org/6598014

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7006 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-01 19:43:28 +00:00
ricow@chromium.org
a2aa84873e Add regression test for the deoptimizer immediately followed by gc bug.
In addition to the regression test I changed the gc-extension to take
a boolean flag specifying if compaction should be used (default is
false, existing tests will not change behaviour)

The regression test is disabled on arm and x64 with crankshaft
enabled. I made a bug to track this:
http://code.google.com/p/v8/issues/detail?id=1094


Review URL: http://codereview.chromium.org/6312118

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6619 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-02-03 13:47:27 +00:00
ager@chromium.org
0a9004aa07 Adding vendor prefix to Locale class (becoming v8Locale) to minimize risk of future changes.
Review URL: http://codereview.chromium.org/6332022

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6530 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-01-31 09:58:12 +00:00
ager@chromium.org
73e8bc9e1a WebKit build needs to be told where to look for ICU package.
Chromium already sets this variable in common.gypi which is force included to all gyp files in the build.

Review URL: http://codereview.chromium.org/6250025

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6433 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-01-24 06:54:51 +00:00
ager@chromium.org
0b047d7981 Landing for cira@chromium.org
Adding gyp file for all of the experimental extensions (currently i18n-extension only).
Embedder should define icu_src_path to point to their copy of ICU library.

Code review URL: http://codereview.chromium.org/6246003/

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6296 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-01-13 09:44:23 +00:00
ager@chromium.org
f1b702b8ae Landing for cira.
Adding experimental JavaScript internationalization API to V8 as an
extension.  This CL implements Locale object only.

Each embeder has to decide whether to include this extension or not by
editing their build rules.

See ecmascript strawman document for details on i18n
API. http://wiki.ecmascript.org/doku.php?id=strawman:i18n_api

TEST=WebKit CL (in progress) will have layout tests for extension.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5983 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-13 12:23:32 +00:00
ager@chromium.org
a24d627598 Extract extensions to a separate directory.
Remove extensions from the external reference table. They should never
be part of the serialized code.

Create extensions/experimental subdirectory for experimental
extensions not officially supported by V8.

Review URL: http://codereview.chromium.org/5094003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5838 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-17 12:28:30 +00:00