
This is an editorial change in the Intl spec: https://github.com/tc39/ecma402/commit/d7c7157
36 lines
711 B
C++
36 lines
711 B
C++
/*
|
|
* Copyright (c) 2022, Tim Flynn <trflynn89@serenityos.org>
|
|
*
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <AK/String.h>
|
|
#include <AK/StringView.h>
|
|
#include <LibJS/Runtime/Intl/NumberFormat.h>
|
|
#include <LibJS/Runtime/Object.h>
|
|
|
|
namespace JS::Intl {
|
|
|
|
class PluralRules final : public NumberFormatBase {
|
|
JS_OBJECT(PluralRules, NumberFormatBase);
|
|
|
|
public:
|
|
enum class Type {
|
|
Cardinal,
|
|
Ordinal,
|
|
};
|
|
|
|
PluralRules(Object& prototype);
|
|
virtual ~PluralRules() override = default;
|
|
|
|
Type type() const { return m_type; }
|
|
StringView type_string() const;
|
|
void set_type(StringView type);
|
|
|
|
private:
|
|
Type m_type { Type::Cardinal }; // [[Type]]
|
|
};
|
|
|
|
}
|