v8/include
rossberg@chromium.org 764e1a0fcf ES6 symbols: Introduce Symbol class, along with abstract Name class
The new instance type 'Symbol' represents ES6 symbols (a.k.a. private/unique names). Currently, symbols are simple data objects that only carry a hash code, random-generated upon allocation.

The new type 'Name' now serves as the common super class for strings and symbols, and is supposed to represent property names. We will eventually migrate APIs from String to Name for the standard key type.

Strings and symbols share the same hash field representation, via the Name class. This way, we should be able to use the same code paths for symbols and internalized strings in most cases. Also, Symbol's instance type code is allocated adjacent to internalized string codes in the enum, allowing a simple range check for the common case.

Baseline CL: https://codereview.chromium.org/12210083/

R=mstarzinger@chromium.org
BUG=

Review URL: https://codereview.chromium.org/12223071

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13783 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-03-01 10:34:31 +00:00
..
v8-debug.h Enable/disable LiveEdit using the (C++) debug API. 2012-09-10 09:24:17 +00:00
v8-preparser.h Fix building with GCC 3.x 2012-07-26 09:18:09 +00:00
v8-profiler.h Introduce callback for resolving global object name while taking heap snapshot 2012-12-04 17:17:55 +00:00
v8-testing.h Fix building with GCC 3.x 2012-07-26 09:18:09 +00:00
v8.h ES6 symbols: Introduce Symbol class, along with abstract Name class 2013-03-01 10:34:31 +00:00
v8stdint.h Include what you use in accessors.{h,cc}. 2012-01-25 00:16:07 +00:00