/* * Copyright (c) 2015 Igalia * Copyright (c) 2015 Igalia S.L. * Copyright (c) 2015 Igalia. * Copyright (c) 2015, 2016 Canon Inc. All rights reserved. * Copyright (c) 2015, 2016, 2017 Canon Inc. * Copyright (c) 2016, 2020 Apple Inc. All rights reserved. * Copyright (c) 2022 Codeblog Corp. 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. AND ITS CONTRIBUTORS ``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 ITS 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. * */ // DO NOT EDIT THIS FILE. It is automatically generated from JavaScript files for // builtins by the script: Source/JavaScriptCore/Scripts/generate-js-builtins.py #pragma once #include #include #include #include namespace JSC { class FunctionExecutable; } namespace WebCore { /* JSBufferConstructor */ extern const char* const s_jsBufferConstructorFromCode; extern const int s_jsBufferConstructorFromCodeLength; extern const JSC::ConstructAbility s_jsBufferConstructorFromCodeConstructAbility; extern const JSC::ConstructorKind s_jsBufferConstructorFromCodeConstructorKind; extern const JSC::ImplementationVisibility s_jsBufferConstructorFromCodeImplementationVisibility; #define WEBCORE_FOREACH_JSBUFFERCONSTRUCTOR_BUILTIN_DATA(macro) \ macro(from, jsBufferConstructorFrom, 1) \ #define WEBCORE_BUILTIN_JSBUFFERCONSTRUCTOR_FROM 1 #define WEBCORE_FOREACH_JSBUFFERCONSTRUCTOR_BUILTIN_CODE(macro) \ macro(jsBufferConstructorFromCode, from, ASCIILiteral(), s_jsBufferConstructorFromCodeLength) \ #define WEBCORE_FOREACH_JSBUFFERCONSTRUCTOR_BUILTIN_FUNCTION_NAME(macro) \ macro(from) \ #define DECLARE_BUILTIN_GENERATOR(codeName, functionName, overriddenName, argumentCount) \ JSC::FunctionExecutable* codeName##Generator(JSC::VM&); WEBCORE_FOREACH_JSBUFFERCONSTRUCTOR_BUILTIN_CODE(DECLARE_BUILTIN_GENERATOR) #undef DECLARE_BUILTIN_GENERATOR class JSBufferConstructorBuiltinsWrapper : private JSC::WeakHandleOwner { public: explicit JSBufferConstructorBuiltinsWrapper(JSC::VM& vm) : m_vm(vm) WEBCORE_FOREACH_JSBUFFERCONSTRUCTOR_BUILTIN_FUNCTION_NAME(INITIALIZE_BUILTIN_NAMES) #define INITIALIZE_BUILTIN_SOURCE_MEMBERS(name, functionName, overriddenName, length) , m_##name##Source(JSC::makeSource(StringImpl::createWithoutCopying(s_##name, length), { })) WEBCORE_FOREACH_JSBUFFERCONSTRUCTOR_BUILTIN_CODE(INITIALIZE_BUILTIN_SOURCE_MEMBERS) #undef INITIALIZE_BUILTIN_SOURCE_MEMBERS { } #define EXPOSE_BUILTIN_EXECUTABLES(name, functionName, overriddenName, length) \ JSC::UnlinkedFunctionExecutable* name##Executable(); \ const JSC::SourceCode& name##Source() const { return m_##name##Source; } WEBCORE_FOREACH_JSBUFFERCONSTRUCTOR_BUILTIN_CODE(EXPOSE_BUILTIN_EXECUTABLES) #undef EXPOSE_BUILTIN_EXECUTABLES WEBCORE_FOREACH_JSBUFFERCONSTRUCTOR_BUILTIN_FUNCTION_NAME(DECLARE_BUILTIN_IDENTIFIER_ACCESSOR) void exportNames(); private: JSC::VM& m_vm; WEBCORE_FOREACH_JSBUFFERCONSTRUCTOR_BUILTIN_FUNCTION_NAME(DECLARE_BUILTIN_NAMES) #define DECLARE_BUILTIN_SOURCE_MEMBERS(name, functionName, overriddenName, length) \ JSC::SourceCode m_##name##Source;\ JSC::Weak m_##name##Executable; WEBCORE_FOREACH_JSBUFFERCONSTRUCTOR_BUILTIN_CODE(DECLARE_BUILTIN_SOURCE_MEMBERS) #undef DECLARE_BUILTIN_SOURCE_MEMBERS }; #define DEFINE_BUILTIN_EXECUTABLES(name, functionName, overriddenName, length) \ inline JSC::UnlinkedFunctionExecutable* JSBufferConstructorBuiltinsWrapper::name##Executable() \ {\ if (!m_##name##Executable) {\ JSC::Identifier executableName = functionName##PublicName();\ if (overriddenName)\ executableName = JSC::Identifier::fromString(m_vm, overriddenName);\ m_##name##Executable = JSC::Weak(JSC::createBuiltinExecutable(m_vm, m_##name##Source, executableName, s_##name##ImplementationVisibility, s_##name##ConstructorKind, s_##name##ConstructAbility), this, &m_##name##Executable);\ }\ return m_##name##Executable.get();\ } WEBCORE_FOREACH_JSBUFFERCONSTRUCTOR_BUILTIN_CODE(DEFINE_BUILTIN_EXECUTABLES) #undef DEFINE_BUILTIN_EXECUTABLES inline void JSBufferConstructorBuiltinsWrapper::exportNames() { #define EXPORT_FUNCTION_NAME(name) m_vm.propertyNames->appendExternalName(name##PublicName(), name##PrivateName()); WEBCORE_FOREACH_JSBUFFERCONSTRUCTOR_BUILTIN_FUNCTION_NAME(EXPORT_FUNCTION_NAME) #undef EXPORT_FUNCTION_NAME } } // namespace WebCore tion value='jarred/ast'>jarred/ast Unnamed repository; edit this file 'description' to name the repository.
aboutsummaryrefslogtreecommitdiff
AgeCommit message (Expand)AuthorFilesLines
2021-06-10cool!Gravatar Jarred Sumner 15-79/+540
2021-06-09Fix expression simplification bugGravatar Jarred Sumner 1-6/+78
2021-06-09okGravatar Jarred Sumner 1-7/+2
2021-06-09lotsGravatar Jarred Sumner 28-21606/+1857
2021-06-08add propGravatar Jarred Sumner 1-0/+1
2021-06-08Generate summaryGravatar Jarred Sumner 10-933/+1199
2021-06-06jsonGravatar Jarred Sumner 1-0/+1
2021-06-06Fix crash that happens when hundreds of files have been parsed and process.en...Gravatar Jarred Sumner 1-18/+26
2021-06-06hashGravatar Jarred Sumner 2-3/+3
2021-06-06Upgrade hash tableGravatar Jarred Sumner 9-66/+126
2021-06-06Fix bug printing large scientific notation floatsGravatar Jarred Sumner 1-9/+29
2021-06-06hmGravatar Jarred Sumner 14-186/+167
2021-06-06WIP node module bundlesGravatar Jarred Sumner 22-1047/+1411
2021-06-06wipGravatar Jarred Sumner 1-1/+2
2021-06-06debug-only printGravatar Jarred Sumner 1-0/+12
2021-06-06Bump schemaGravatar Jarred Sumner 4-0/+926
2021-06-04Generate parser versions at compile timeGravatar Jarred Sumner 1-9667/+9690
2021-06-04oops typescriptGravatar Jarred Sumner 2-3/+7
2021-06-04Fix extra space in printerGravatar Jarred Sumner 3-28/+52
2021-06-04Fix extra underscore in ensureValidIdentifierGravatar Jarred Sumner 2-14/+21
2021-06-04Generate differnet versions of Bundler, Resolver, and Caches at comptime base...Gravatar Jarred Sumner 10-2236/+2303
2021-06-04mostly fix --resolve=disableGravatar Jarred Sumner 3-29/+145
2021-06-04renameGravatar Jarred Sumner 3-10/+9
2021-06-04readme was prematureGravatar Jarred Sumner 4-150/+16
2021-06-04fix the leaksGravatar Jarred Sumner 15-566/+21587
2021-06-02oklGravatar Jarred Sumner 5-13/+39
2021-06-02keep thatGravatar Jarred Sumner 1-2/+2
2021-06-02HTTP fixes + buffer stdout/in + a little HTTP cachingGravatar Jarred Sumner 15-108/+241
2021-06-02JSX & CJS work end-to-end!Gravatar Jarred Sumner 7-157/+292
2021-06-01wipGravatar Jarred Sumner 32-793/+13870
2021-05-31linker thingsGravatar Jarred Sumner 9-183/+322
2021-05-30Fix printing bugsGravatar Jarred Sumner 8-44/+206
2021-05-30coolGravatar Jarred Sumner 9-3/+54
2021-05-30stderrGravatar Jarred Sumner 3-6/+10
2021-05-30Fix indentGravatar Jarred Sumner 1-117/+56
2021-05-30Fix Define, JSX, use more pointers for property access to minimize calls to m...Gravatar Jarred Sumner 9-795/+364
2021-05-30This'll do for now, I guess.Gravatar Jarred Sumner 3-466/+168
2021-05-30This blocks approach seems to workGravatar Jarred Sumner 6-781/+469
2021-05-29Revert "WIP"Gravatar Jarred Sumner 8-498/+653
2021-05-29WIPGravatar Jarred Sumner 8-653/+498
2021-05-29micropGravatar Jarred Sumner 7-25/+92
2021-05-29fix crashGravatar Jarred Sumner 1-1/+1
2021-05-29microp-optimize hash table stuffGravatar Jarred Sumner 1-4/+36
2021-05-29Move wyhasxhGravatar Jarred Sumner 1-0/+0
2021-05-282Gravatar Jarred Sumner 1-1/+4
2021-05-28allGravatar Jarred Sumner 14-89/+591
2021-05-28wGravatar Jarred Sumner 1-1/+4