/* * Copyright (c) 2021, Tim Flynn * * SPDX-License-Identifier: BSD-2-Clause */ #pragma once #include #include #include namespace JS::Intl { class NumberFormatFunction final : public NativeFunction { JS_OBJECT(NumberFormatFunction, NativeFunction); GC_DECLARE_ALLOCATOR(NumberFormatFunction); public: static GC::Ref create(Realm&, NumberFormat&); virtual ~NumberFormatFunction() override = default; virtual void initialize(Realm&) override; virtual ThrowCompletionOr call() override; private: explicit NumberFormatFunction(NumberFormat&, Object& prototype); virtual void visit_edges(Visitor&) override; GC::Ref m_number_format; // [[NumberFormat]] }; }