/* * 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, 2018 -2018 Apple Inc. All rights reserved. * 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 { /* ProcessObject */ #define WEBCORE_FOREACH_PROCESSOBJECT_BUILTIN_DATA(macro) \ #define WEBCORE_FOREACH_PROCESSOBJECT_BUILTIN_CODE(macro) \ #define WEBCORE_FOREACH_PROCESSOBJECT_BUILTIN_FUNCTION_NAME(macro) \ #define DECLARE_BUILTIN_GENERATOR(codeName, functionName, overriddenName, argumentCount) \ JSC::FunctionExecutable* codeName##Generator(JSC::VM&); WEBCORE_FOREACH_PROCESSOBJECT_BUILTIN_CODE(DECLARE_BUILTIN_GENERATOR) #undef DECLARE_BUILTIN_GENERATOR class ProcessObjectBuiltinsWrapper : private JSC::WeakHandleOwner { public: explicit ProcessObjectBuiltinsWrapper(JSC::VM& vm) : m_vm(vm) WEBCORE_FOREACH_PROCESSOBJECT_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_PROCESSOBJECT_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_PROCESSOBJECT_BUILTIN_CODE(EXPOSE_BUILTIN_EXECUTABLES) #undef EXPOSE_BUILTIN_EXECUTABLES WEBCORE_FOREACH_PROCESSOBJECT_BUILTIN_FUNCTION_NAME(DECLARE_BUILTIN_IDENTIFIER_ACCESSOR) void exportNames(); private: JSC::VM& m_vm; WEBCORE_FOREACH_PROCESSOBJECT_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_PROCESSOBJECT_BUILTIN_CODE(DECLARE_BUILTIN_SOURCE_MEMBERS) #undef DECLARE_BUILTIN_SOURCE_MEMBERS }; #define DEFINE_BUILTIN_EXECUTABLES(name, functionName, overriddenName, length) \ inline JSC::UnlinkedFunctionExecutable* ProcessObjectBuiltinsWrapper::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_PROCESSOBJECT_BUILTIN_CODE(DEFINE_BUILTIN_EXECUTABLES) #undef DEFINE_BUILTIN_EXECUTABLES inline void ProcessObjectBuiltinsWrapper::exportNames() { #define EXPORT_FUNCTION_NAME(name) m_vm.propertyNames->appendExternalName(name##PublicName(), name##PrivateName()); WEBCORE_FOREACH_PROCESSOBJECT_BUILTIN_FUNCTION_NAME(EXPORT_FUNCTION_NAME) #undef EXPORT_FUNCTION_NAME } } // namespace WebCore bsocket-upgrade Unnamed repository; edit this file 'description' to name the repository.
aboutsummaryrefslogtreecommitdiff
AgeCommit message (Expand)AuthorFilesLines
2022-10-24Update README.mdGravatar Jarred Sumner 1-1/+1
2022-10-24Update README.mdGravatar Jarred Sumner 1-4/+4
2022-10-24`Bun.peek`Gravatar Jarred Sumner 3-0/+228
2022-10-23Add `fd` to `SystemError` and fix 2 cases with invalid tagged unionGravatar Jarred Sumner 7-9/+42
2022-10-23fix(web): stop segfault on invalid fd error (#1386)Gravatar Carter Snook 2-1/+15
2022-10-23Preserve trailing newline when updating package.jsonGravatar Jarred Sumner 2-0/+14
2022-10-23Fix `ReadableStream.prototype.tee`Gravatar Jarred Sumner 3-2/+61
2022-10-23Add Web Crypto API (#1384)Gravatar Jarred Sumner 240-49/+18727
2022-10-23fix(fetch): stop `new Response(null)` from segfaulting (#1383)Gravatar Carter Snook 1-8/+1
2022-10-22Fix spawn exitcode (#1371)Gravatar zhiyuan 2-1/+30
2022-10-21Add sqlite to include listGravatar Jarred Sumner 1-1/+4
2022-10-21CodegenGravatar Jarred Sumner 2-16/+25
2022-10-21Treat invalid buffer value as utf8 stringGravatar Jarred Sumner 1-2/+3
2022-10-21Add test for `fs.createReadStream`Gravatar Jarred Sumner 1-0/+43
2022-10-21Implement `fs.createReadStream`, begin `fs.createWriteStream`Gravatar Jarred Sumner 1-3/+621
2022-10-21Make Node Streams work better in BunGravatar Jarred Sumner 1-140/+214
2022-10-21Fix error handling logic in read()Gravatar Jarred Sumner 1-51/+79
2022-10-21Fix bugs in mask boolean valuesGravatar Jarred Sumner 2-15/+21
2022-10-21Emit errorsGravatar Jarred Sumner 2-2/+37
2022-10-21Add test for ResolveError.position being inspectableGravatar Jarred Sumner 2-0/+12
2022-10-21Fix segfault when logging position object from failed nested importGravatar Jarred Sumner 1-114/+34
2022-10-21Implement `setMaxListeners` and `getMaxListeners`Gravatar Jarred Sumner 1-1/+46
2022-10-21Fix `import Foo, {bar}` when from hardcoded builtin modules in runtimeGravatar Jarred Sumner 2-19/+34
2022-10-21Fix test failureGravatar Jarred Sumner 1-2/+3
2022-10-21Reload node:fs in developmentGravatar Jarred Sumner 1-0/+9
2022-10-21chore: remove outdated `var` usages (#1364)Gravatar Carter Snook 1-34/+34
2022-10-21Fix "/" in exampleGravatar Jarred Sumner 1-3/+10
2022-10-21Fix infinite loopGravatar Jarred Sumner 1-3/+13
2022-10-21micro-optimizeGravatar Jarred Sumner 1-7/+14
2022-10-20Update install script to use secure flagsGravatar Ashcon Partovi 2-5/+5
2022-10-20Add installation method for HomebrewGravatar Ashcon Partovi 1-0/+7
2022-10-20Fix crash in `highWaterMark`Gravatar Jarred Sumner 1-143/+144
2022-10-20Fix Bun.serve error handler error param (#1359)Gravatar zhiyuan 7-4/+37
2022-10-19Fix calling `ws.publish` inside `close` when other clients are connectedGravatar Jarred Sumner 3-28/+111
2022-10-19Cache dir loader: Prefer `$BUN_INSTALL` and `$XDG_CACHE_HOME` to `$HOME`. (#1...Gravatar Lucas Garron 1-5/+5
2022-10-19Improve issue templates (#1353)Gravatar Ashcon Partovi 8-89/+136