• Franziska Hinkelmann's avatar
    [api] Use query interceptor in Object.keys(). · 43bb2778
    Franziska Hinkelmann authored
    The V8 API provides interceptors. They are not part of the
    EcmaScript specification. But their behavior should be consistent.
    For example, when an EnumeratorInterceptor is defined, Object.keys(),
    Object.entries(), and Object.values() should all have the
    same number of entries.
    
    This CL creates consistent behavior among these
    functions. If a QueryCallback is present, it is used to
    filter the result from the EnumeratorCallback for
    enumerable properties.
    
    Bug: v8:6627
    Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
    Change-Id: I4f4271ddeb99a5e85918148c5033923c149b9468
    Reviewed-on: https://chromium-review.googlesource.com/649786Reviewed-by: 's avatarJakob Kummerow <jkummerow@chromium.org>
    Commit-Queue: Franziska Hinkelmann <franzih@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#47831}
    43bb2778
keys.cc 35.4 KB