// © 2016 and later: Unicode, Inc. and others. // License & terms of use: http://www.unicode.org/copyright.html /* ******************************************************************************* * Copyright (C) 1997-2015, International Business Machines Corporation and * others. All Rights Reserved. ******************************************************************************* * * File brkiter.cpp * * Modification History: * * Date Name Description * 02/18/97 aliu Converted from OpenClass. Added DONE. * 01/13/2000 helena Added UErrorCode parameter to createXXXInstance methods. ***************************************************************************************** */ // ***************************************************************************** // This file was generated from the java source file BreakIterator.java // ***************************************************************************** #include "unicode/utypes.h" #if !UCONFIG_NO_BREAK_ITERATION #include "unicode/rbbi.h" #include "unicode/brkiter.h" #include "unicode/udata.h" #include "unicode/uloc.h" #include "unicode/ures.h" #include "unicode/ustring.h" #include "unicode/filteredbrk.h" #include "bytesinkutil.h" #include "ucln_cmn.h" #include "cstring.h" #include "umutex.h" #include "servloc.h" #include "locbased.h" #include "uresimp.h" #include "uassert.h" #include "ubrkimpl.h" #include "utracimp.h" #include "charstr.h" // ***************************************************************************** // class BreakIterator // This class implements methods for finding the location of boundaries in text. // Instances of BreakIterator maintain a current position and scan over text // returning the index of characters where boundaries occur. // ***************************************************************************** U_NAMESPACE_BEGIN // ------------------------------------- BreakIterator* BreakIterator::buildInstance(const Locale& loc, const char *type, UErrorCode &status) { … } // Creates a break iterator for word breaks. BreakIterator* U_EXPORT2 BreakIterator::createWordInstance(const Locale& key, UErrorCode& status) { … } // ------------------------------------- // Creates a break iterator for line breaks. BreakIterator* U_EXPORT2 BreakIterator::createLineInstance(const Locale& key, UErrorCode& status) { … } // ------------------------------------- // Creates a break iterator for character breaks. BreakIterator* U_EXPORT2 BreakIterator::createCharacterInstance(const Locale& key, UErrorCode& status) { … } // ------------------------------------- // Creates a break iterator for sentence breaks. BreakIterator* U_EXPORT2 BreakIterator::createSentenceInstance(const Locale& key, UErrorCode& status) { … } // ------------------------------------- // Creates a break iterator for title casing breaks. BreakIterator* U_EXPORT2 BreakIterator::createTitleInstance(const Locale& key, UErrorCode& status) { … } // ------------------------------------- // Gets all the available locales that has localized text boundary data. const Locale* U_EXPORT2 BreakIterator::getAvailableLocales(int32_t& count) { … } // ------------------------------------------ // // Constructors, destructor and assignment operator // //------------------------------------------- BreakIterator::BreakIterator() { … } BreakIterator::BreakIterator(const BreakIterator &other) : … { … } BreakIterator &BreakIterator::operator =(const BreakIterator &other) { … } BreakIterator::~BreakIterator() { … } // ------------------------------------------ // // Registration // //------------------------------------------- #if !UCONFIG_NO_SERVICE // ------------------------------------- class ICUBreakIteratorFactory : public ICUResourceBundleFactory { … }; ICUBreakIteratorFactory::~ICUBreakIteratorFactory() { … } // ------------------------------------- class ICUBreakIteratorService : public ICULocaleService { … }; ICUBreakIteratorService::~ICUBreakIteratorService() { … } // ------------------------------------- // defined in ucln_cmn.h U_NAMESPACE_END static icu::UInitOnce gInitOnceBrkiter { … }; static icu::ICULocaleService* gService = …; /** * Release all static memory held by breakiterator. */ U_CDECL_BEGIN static UBool U_CALLCONV breakiterator_cleanup() { … } U_CDECL_END U_NAMESPACE_BEGIN static void U_CALLCONV initService() { … } static ICULocaleService* getService() { … } // ------------------------------------- static inline UBool hasService() { … } // ------------------------------------- URegistryKey U_EXPORT2 BreakIterator::registerInstance(BreakIterator* toAdopt, const Locale& locale, UBreakIteratorType kind, UErrorCode& status) { … } // ------------------------------------- UBool U_EXPORT2 BreakIterator::unregister(URegistryKey key, UErrorCode& status) { … } // ------------------------------------- StringEnumeration* U_EXPORT2 BreakIterator::getAvailableLocales() { … } #endif /* UCONFIG_NO_SERVICE */ // ------------------------------------- BreakIterator* BreakIterator::createInstance(const Locale& loc, int32_t kind, UErrorCode& status) { … } // ------------------------------------- enum { … }; BreakIterator* BreakIterator::makeInstance(const Locale& loc, int32_t kind, UErrorCode& status) { … } Locale BreakIterator::getLocale(ULocDataLocaleType type, UErrorCode& status) const { … } const char * BreakIterator::getLocaleID(ULocDataLocaleType type, UErrorCode& status) const { … } // This implementation of getRuleStatus is a do-nothing stub, here to // provide a default implementation for any derived BreakIterator classes that // do not implement it themselves. int32_t BreakIterator::getRuleStatus() const { … } // This implementation of getRuleStatusVec is a do-nothing stub, here to // provide a default implementation for any derived BreakIterator classes that // do not implement it themselves. int32_t BreakIterator::getRuleStatusVec(int32_t *fillInVec, int32_t capacity, UErrorCode &status) { … } BreakIterator::BreakIterator (const Locale& valid, const Locale& actual) { … } U_NAMESPACE_END #endif /* #if !UCONFIG_NO_BREAK_ITERATION */ //eof