// Copyright 2016 Google Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License.! #ifndef BUILDER_H_ #define BUILDER_H_ #include <map> #include <string> #include <vector> #include "absl/strings/string_view.h" #include "common.h" #include "sentencepiece_model.pb.h" #include "sentencepiece_processor.h" namespace sentencepiece { namespace normalizer { // Builder creates a text normalization rule from user-defined string // to string mappings. The normalization mapping is compiled into // a single and compact blob index which is stored into the model proto. // This class also provides pre-defined rules based on Unicode NFKC. // https://en.wikipedia.org/wiki/Unicode_equivalence#Normalization class Builder { … }; } // namespace normalizer } // namespace sentencepiece #endif // BUILDER_H_