• Daniel Ehrenberg's avatar
    [intl] Switch to using declared accessors · 4968b2c4
    Daniel Ehrenberg authored
    This patch cleans up the Intl code by switching to using declared
    accessors, rather than embedder fields, for holding references to
    ICU objects. Additionally:
    - Rename classes to be more similar to how other classes are named
    - Make some unreachable paths into check-fails, rather than throwing
      JS exceptions
    - Move some macros from objects-inl.h into object-macros.h, to allow
      the implementation here to not touch objects.h
    - Some setup logic is moved from runtime-i18n.cc to i18n.cc.
    
    This patch leaves type tags as they are; a future patch should move
    from a special Intl type tagging system to object types as other system
    objects use. Future patches should also move more logic to i18n.cc
    
    BUG=v8:5402,v8:5751,v8:6057
    CQ_INCLUDE_TRYBOTS=master.tryserver.v8:v8_linux_noi18n_rel_ng
    
    Change-Id: Ia9cbb25cf8f52662e3deb15e64179d792c10842c
    Reviewed-on: https://chromium-review.googlesource.com/479651
    Commit-Queue: Daniel Ehrenberg <littledan@chromium.org>
    Reviewed-by: 's avatarAdam Klein <adamk@chromium.org>
    Reviewed-by: 's avatarMichael Starzinger <mstarzinger@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#44804}
    4968b2c4
BUILD.gn 91.1 KB