/* * Copyright (C) 2022 Apple Inc. All Rights Reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * */ #pragma once namespace WebCore { class WebCoreOpaqueRoot { public: template>> explicit WebCoreOpaqueRoot(T* pointer) : m_pointer(static_cast(pointer)) { } WebCoreOpaqueRoot(std::nullptr_t) { } bool isNode() const { return false; } void* pointer() const { return m_pointer; } private: void* m_pointer { nullptr }; bool m_isNode { false }; }; template ALWAYS_INLINE void addWebCoreOpaqueRoot(Visitor& visitor, WebCoreOpaqueRoot root) { visitor.addOpaqueRoot(root.pointer()); } template ALWAYS_INLINE void addWebCoreOpaqueRoot(Visitor& visitor, ImplType* impl) { addWebCoreOpaqueRoot(visitor, root(impl)); } template ALWAYS_INLINE void addWebCoreOpaqueRoot(Visitor& visitor, ImplType& impl) { addWebCoreOpaqueRoot(visitor, root(&impl)); } template ALWAYS_INLINE bool containsWebCoreOpaqueRoot(Visitor& visitor, WebCoreOpaqueRoot root) { return visitor.containsOpaqueRoot(root.pointer()); } template ALWAYS_INLINE bool containsWebCoreOpaqueRoot(Visitor& visitor, ImplType& impl) { return containsWebCoreOpaqueRoot(visitor, root(&impl)); } template ALWAYS_INLINE bool containsWebCoreOpaqueRoot(Visitor& visitor, ImplType* impl) { return containsWebCoreOpaqueRoot(visitor, root(impl)); } } // namespace WebCore e/postinstall_2 Unnamed repository; edit this file 'description' to name the repository.
aboutsummaryrefslogtreecommitdiff
AgeCommit message (Expand)AuthorFilesLines
2022-06-22It connects! but the frames are corruptGravatar Jarred Sumner 3-31/+34
2022-06-22WebSocket is a globalGravatar Jarred Sumner 23-266/+350
2022-06-22Fix most of the errorsGravatar Jarred Sumner 6-119/+117
2022-06-22more codeGravatar Jarred Sumner 4-58/+209
2022-06-22WIP WebSocketGravatar Jarred Sumner 19-22/+3701
2022-06-20Group zsh completion options by type (#194)Gravatar Alexander Kuznetsov 1-28/+16
2022-06-17Import most of `MessageEvent` from WebKitGravatar Jarred Sumner 18-12/+1410
2022-06-15some more testsGravatar Jarred Sumner 2-10/+62
2022-06-15Update WebKitGravatar Jarred Sumner 1-0/+0
2022-06-15[web standards] Add `CloseEvent` from WebKitGravatar Jarred Sumner 9-6/+636
2022-06-15Fix lazy loading internal streamsGravatar Jarred Sumner 13-360/+424
2022-06-15direct streams mostly workjarred/directGravatar Jarred Sumner 26-1167/+1782
2022-06-15wip direct streamsGravatar Jarred Sumner 24-398/+2276
2022-06-12ArrayBufferSink works and it's good.Gravatar Jarred Sumner 26-170/+2054
2022-06-12Fix build issueGravatar Jarred Sumner 2-0/+6
2022-06-12Delete broken submoduleGravatar Jarred Sumner 1-0/+0
2022-06-10Update Dockerfile.baseGravatar Jarred Sumner 1-1/+1
2022-06-10Update WebKitGravatar Jarred Sumner 1-0/+0
2022-06-10Update event_loop.zigGravatar Jarred Sumner 1-0/+1
2022-06-10Missing errno on linuxGravatar Jarred Sumner 1-3/+1
2022-06-10Update js_parser.zigGravatar Jarred Sumner 1-21/+200
2022-06-10Update MakefileGravatar Jarred Sumner 1-4/+4
2022-06-10wip fix linux buildGravatar Jarred Sumner 1-9/+11
2022-06-10Don't show generic crash info when given invalid bunfig.tomlGravatar Jarred Sumner 1-0/+4
2022-06-10Update logger.zigGravatar Jarred Sumner 1-0/+4
2022-06-10Show tracingGravatar Jarred Sumner 1-1/+1
2022-06-10Update bunfig.zigGravatar Jarred Sumner 1-0/+1
2022-06-10Update jest.zigGravatar Jarred Sumner 1-6/+9
2022-06-09Update bun.d.tsGravatar Jarred Sumner 1-2/+5
2022-06-09Add typesGravatar Jarred Sumner 1-2/+32
2022-06-09`new Response(stream).arrayBuffer()` + 3 moreGravatar Jarred Sumner 16-39/+478
2022-06-09fix some memory leaks with stringsGravatar Jarred Sumner 4-28/+45
2022-06-09Support console.log(myBigInt)Gravatar Jarred Sumner 1-1/+6
2022-06-09Fix defaultProps with JSX optimizationGravatar Jarred Sumner 6-34/+73
2022-06-09small perf improvements to encodingGravatar Jarred Sumner 1-43/+37
2022-06-07Update event_loop.zigGravatar Jarred Sumner 1-1/+2