1  /*
2   * Copyright (c) 2021 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  #include "plural_rules.h"
17  
18  using namespace OHOS::I18N;
19  
PluralRules(std::string * rules,const int rulesLength,const int * ruleSize,const int sizesLength)20  PluralRules::PluralRules(std::string *rules, const int rulesLength, const int *ruleSize, const int sizesLength)
21  {
22      if ((rules != nullptr) && (ruleSize != nullptr) &&
23          (rulesLength > PluralRuleType::OTHER) && (sizesLength > PluralRuleType::OTHER)) {
24          mZeroRule = rules[PluralRuleType::ZERO];
25          mZeroRuleSize = ruleSize[PluralRuleType::ZERO];
26          mOneRule = rules[PluralRuleType::ONE];
27          mOneRuleSize = ruleSize[PluralRuleType::ONE];
28          mTwoRule = rules[PluralRuleType::TWO];
29          mTwoRuleSize = ruleSize[PluralRuleType::TWO];
30          mFewRule = rules[PluralRuleType::FEW];
31          mFewRuleSize = ruleSize[PluralRuleType::FEW];
32          mManyRule = rules[PluralRuleType::MANY];
33          mManyRuleSize = ruleSize[PluralRuleType::MANY];
34          mOtherRule = rules[PluralRuleType::OTHER];
35          mOtherRuleSize = ruleSize[PluralRuleType::OTHER];
36      }
37  }
38  
~PluralRules()39  PluralRules::~PluralRules() {}