TF_AXIOM(!TfIsUtf8CodePointXidContinue(
std::numeric_limits<uint32_t>::max()));
- // also TF_MAX_CODE_POINT is our upper limit, and should be an invalid
- // code point due to its being reserved
- TF_AXIOM(!TfIsUtf8CodePointXidStart(TF_MAX_CODE_POINT));
- TF_AXIOM(!TfIsUtf8CodePointXidContinue(TF_MAX_CODE_POINT));
+ // Test TfUtf8CodePoint::MaximumValue (the last valid) and
+ // TfUtf8CodePoint::MaximumValue + 1 (the first invalid)
+ TF_AXIOM(!TfIsUtf8CodePointXidStart(TfUtf8CodePoint::MaximumValue));
+ TF_AXIOM(!TfIsUtf8CodePointXidContinue(TfUtf8CodePoint::MaximumValue));
+ TF_AXIOM(!TfIsUtf8CodePointXidStart(TfUtf8CodePoint::MaximumValue + 1));
+ TF_AXIOM(!TfIsUtf8CodePointXidContinue(TfUtf8CodePoint::MaximumValue + 1));
return true;
}
//
#include "pxr/base/tf/diagnostic.h"
+#include "pxr/base/tf/unicodeCharacterClasses.h"
#include "pxr/base/tf/unicodeUtils.h"
PXR_NAMESPACE_OPEN_SCOPE
return TfUtf8InvalidCodePoint.AsUInt32();
}
+bool TfIsUtf8CodePointXidStart(uint32_t codePoint)
+{
+ return TfUnicodeGetXidStartFlagData().IsXidStartCodePoint(codePoint);
+}
+
+bool TfIsUtf8CodePointXidContinue(uint32_t codePoint)
+{
+ return TfUnicodeGetXidContinueFlagData().IsXidContinueCodePoint(codePoint);
+}
+
PXR_NAMESPACE_CLOSE_SCOPE
\ No newline at end of file
#include "pxr/pxr.h"
#include "pxr/base/tf/api.h"
#include "pxr/base/tf/diagnostic.h"
-#include "pxr/base/tf/unicodeCharacterClasses.h"
#include <ostream>
#include <string>
/// That is, the character must have a category of Lu | Ll | Lt | Lm | Lo | Nl
///
TF_API
-inline bool TfIsUtf8CodePointXidStart(uint32_t codePoint)
-{
- return TfUnicodeGetXidStartFlagData().IsXidStartCodePoint(codePoint);
-}
+bool TfIsUtf8CodePointXidStart(uint32_t codePoint);
/// Determines whether the given Unicode \a codePoint is in the XID_Continue
/// character class.
/// XID_Start | Nd | Mn | Mc | Pc
///
TF_API
-inline bool TfIsUtf8CodePointXidContinue(uint32_t codePoint)
-{
- return TfUnicodeGetXidContinueFlagData().IsXidContinueCodePoint(codePoint);
-}
+bool TfIsUtf8CodePointXidContinue(uint32_t codePoint);
PXR_NAMESPACE_CLOSE_SCOPE