160916893Sopenharmony_ci/*
260916893Sopenharmony_ci * Copyright (c) 2021 Huawei Device Co., Ltd.
360916893Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
460916893Sopenharmony_ci * you may not use this file except in compliance with the License.
560916893Sopenharmony_ci * You may obtain a copy of the License at
660916893Sopenharmony_ci *
760916893Sopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
860916893Sopenharmony_ci *
960916893Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
1060916893Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
1160916893Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1260916893Sopenharmony_ci * See the License for the specific language governing permissions and
1360916893Sopenharmony_ci * limitations under the License.
1460916893Sopenharmony_ci */
1560916893Sopenharmony_ci
1660916893Sopenharmony_ci#ifndef PLURALRULE_H
1760916893Sopenharmony_ci#define PLURALRULE_H
1860916893Sopenharmony_ci
1960916893Sopenharmony_ci#include "types.h"
2060916893Sopenharmony_ci#include "locale_info.h"
2160916893Sopenharmony_ci
2260916893Sopenharmony_cinamespace OHOS {
2360916893Sopenharmony_cinamespace I18N {
2460916893Sopenharmony_ciclass PluralRules {
2560916893Sopenharmony_cipublic:
2660916893Sopenharmony_ci    PluralRules(std::string *rules, const int rulesLength, const int *rulesSize, const int sizesLength);
2760916893Sopenharmony_ci    virtual ~PluralRules();
2860916893Sopenharmony_ci    std::string mZeroRule = "";
2960916893Sopenharmony_ci    int mZeroRuleSize = 0;
3060916893Sopenharmony_ci    std::string mOneRule = "";
3160916893Sopenharmony_ci    int mOneRuleSize = 0;
3260916893Sopenharmony_ci    std::string mTwoRule = "";
3360916893Sopenharmony_ci    int mTwoRuleSize = 0;
3460916893Sopenharmony_ci    std::string mFewRule = "";
3560916893Sopenharmony_ci    int mFewRuleSize = 0;
3660916893Sopenharmony_ci    std::string mManyRule = "";
3760916893Sopenharmony_ci    int mManyRuleSize = 0;
3860916893Sopenharmony_ci    std::string mOtherRule = "";
3960916893Sopenharmony_ci    int mOtherRuleSize = 0;
4060916893Sopenharmony_ci};
4160916893Sopenharmony_ci} // namespace I18N
4260916893Sopenharmony_ci} // namespace OHOS
4360916893Sopenharmony_ci
4460916893Sopenharmony_ci#endif