1 /* 2 * Copyright (c) 2022-2025 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16 #ifndef ECMASCRIPT_COMPILER_BUILTINS_CALL_SIGNATURE_ID_PROPERTIES_H 17 #define ECMASCRIPT_COMPILER_BUILTINS_CALL_SIGNATURE_ID_PROPERTIES_H 18 19 #include "ecmascript/compiler/builtins/builtins_call_signature_list.h" 20 #include "ecmascript/global_env_constants.h" 21 #include "ecmascript/js_tagged_value.h" 22 23 namespace panda::ecmascript::kungfu::stubcsigns { 24 enum BuiltinsStubCSignsID { 25 #define DEF_STUB_ID(name) name, 26 #define DEF_STUB_ID_DYN(name, type, ...) type##name, 27 PADDING_BUILTINS_STUB_LIST(DEF_STUB_ID) 28 BUILTINS_STUB_LIST(DEF_STUB_ID, DEF_STUB_ID_DYN, DEF_STUB_ID) 29 NUM_OF_BUILTINS_STUBS, 30 BUILTINS_NOSTUB_LIST(DEF_STUB_ID) 31 AOT_BUILTINS_STUB_LIST(DEF_STUB_ID) 32 AOT_BUILTINS_INLINE_LIST(DEF_STUB_ID) 33 #undef DEF_STUB_ID_DYN 34 #undef DEF_STUB_ID 35 NUM_OF_BUILTINS_ID, 36 BUILTINS_CONSTRUCTOR_STUB_FIRST = BooleanConstructor, 37 TYPED_BUILTINS_FIRST = JsonStringify, 38 TYPED_BUILTINS_LAST = IteratorProtoReturn, 39 INVALID = 0xFFFF, 40 }; 41 } // namespace panda::ecmascript::kungfu::stubcsigns 42 43 #endif // ECMASCRIPT_COMPILER_BUILTINS_CALL_SIGNATURE_ID_PROPERTIES_H 44