fUDataMem = udm;
}
-UBool RBBIDataWrapper::isDataVersionAcceptable(const uint8_t version[]) {
- for (int i=0; i<UPRV_LENGTHOF(RBBI_DATA_FORMAT_VERSION); ++i) {
- if (RBBI_DATA_FORMAT_VERSION[i] != version[i]) {
- return false;
- }
- }
- return true;
+UBool RBBIDataWrapper::isDataVersionAcceptable(const UVersionInfo version) {
+ return RBBI_DATA_FORMAT_VERSION[0] == version[0];
}
#include "unicode/uobject.h"
#include "unicode/unistr.h"
+#include "unicode/uversion.h"
#include "umutex.h"
#include "utrie2.h"
*/
struct RBBIDataHeader {
uint32_t fMagic; /* == 0xbla0 */
- uint8_t fFormatVersion[4]; /* Data Format. Same as the value in struct UDataInfo */
+ UVersionInfo fFormatVersion; /* Data Format. Same as the value in struct UDataInfo */
/* if there is one associated with this data. */
/* (version originates in rbbi, is copied to UDataInfo) */
- /* For ICU 3.2 and earlier, this field was */
- /* uint32_t fVersion */
- /* with a value of 1. */
uint32_t fLength; /* Total length in bytes of this RBBI Data, */
/* including all sections, not just the header. */
uint32_t fCatCount; /* Number of character categories. */
RBBIDataWrapper(UDataMemory* udm, UErrorCode &status);
~RBBIDataWrapper();
- static UBool isDataVersionAcceptable(const uint8_t version[]);
+ static UBool isDataVersionAcceptable(const UVersionInfo version);
void init0();
void init(const RBBIDataHeader *data, UErrorCode &status);