@@ -24,6 +24,7 @@ class HXCPP_EXTERN_CLASS_ATTRIBUTES Dynamic : public hx::ObjectPtr<hx::Object>
2424 Dynamic (unsigned short inVal);
2525 Dynamic (unsigned char inVal);
2626 Dynamic (signed char inVal);
27+ Dynamic (char16_t inVal);
2728 Dynamic (const cpp::CppInt32__ &inVal);
2829 Dynamic (bool inVal);
2930 Dynamic (double inVal);
@@ -71,6 +72,7 @@ class HXCPP_EXTERN_CLASS_ATTRIBUTES Dynamic : public hx::ObjectPtr<hx::Object>
7172 inline operator unsigned char () const { return mPtr ? mPtr ->__ToInt () : 0 ; }
7273 inline operator char () const { return mPtr ? mPtr ->__ToInt () : 0 ; }
7374 inline operator signed char () const { return mPtr ? mPtr ->__ToInt () : 0 ; }
75+ inline operator char16_t () const { return mPtr ? mPtr ->__ToInt () : 0 ; }
7476 inline operator bool () const { return mPtr && mPtr ->__ToInt (); }
7577 inline operator cpp::Int64 () const { return mPtr ? mPtr ->__ToInt64 () : 0 ; }
7678 inline operator cpp::UInt64 () const { return mPtr ? mPtr ->__ToInt64 () : 0 ; }
@@ -172,6 +174,7 @@ class HXCPP_EXTERN_CLASS_ATTRIBUTES Dynamic : public hx::ObjectPtr<hx::Object>
172174 bool operator op (unsigned short inRHS) const { return IsNumeric () && ((double )(*this ) op (double )inRHS); } \
173175 bool operator op (signed char inRHS) const { return IsNumeric () && ((double )(*this ) op (double )inRHS); } \
174176 bool operator op (unsigned char inRHS) const { return IsNumeric () && ((double )(*this ) op (double )inRHS); } \
177+ bool operator op (char16_t inRHS) const { return IsNumeric () && ((double )(*this ) op (double )inRHS); } \
175178 bool operator op (bool inRHS) const { return IsBool () && ((double )(*this ) op (double )inRHS); } \
176179
177180 bool operator != (const String &inRHS) const { return !mPtr || ((String)(*this ) != inRHS); }
@@ -185,6 +188,7 @@ class HXCPP_EXTERN_CLASS_ATTRIBUTES Dynamic : public hx::ObjectPtr<hx::Object>
185188 bool operator != (unsigned short inRHS) const { return !IsNumeric () || ((double )(*this ) != (double )inRHS); }
186189 bool operator != (signed char inRHS) const { return !IsNumeric () || ((double )(*this ) != (double )inRHS); }
187190 bool operator != (unsigned char inRHS) const { return !IsNumeric () || ((double )(*this ) != (double )inRHS); }
191+ bool operator != (char16_t inRHS) const { return !IsNumeric () || ((double )(*this ) != (double )inRHS); }
188192 bool operator != (bool inRHS) const { return !IsBool () || ((double )(*this ) != (double )inRHS); }
189193
190194
@@ -230,6 +234,7 @@ class HXCPP_EXTERN_CLASS_ATTRIBUTES Dynamic : public hx::ObjectPtr<hx::Object>
230234 Dynamic operator +(const unsigned short &i) const ;
231235 Dynamic operator +(const signed char &i) const ;
232236 Dynamic operator +(const unsigned char &i) const ;
237+ Dynamic operator +(const char16_t & i) const ;
233238 Dynamic operator +(const double &d) const ;
234239 Dynamic operator +(const float &d) const ;
235240 Dynamic operator +(const cpp::Variant &d) const ;
@@ -271,6 +276,8 @@ class HXCPP_EXTERN_CLASS_ATTRIBUTES Dynamic : public hx::ObjectPtr<hx::Object>
271276 { return mPtr ->__GetType ()==vtInt ? Dynamic ((int )(*this ) op inRHS) : Dynamic ((double )(*this ) op inRHS); } \
272277 Dynamic operator op (const unsigned char &inRHS) const \
273278 { return mPtr ->__GetType ()==vtInt ? Dynamic ((int )(*this ) op inRHS) : Dynamic ((double )(*this ) op inRHS); } \
279+ Dynamic operator op (const char16_t &inRHS) const \
280+ { return mPtr ->__GetType ()==vtInt ? Dynamic ((int )(*this ) op inRHS) : Dynamic ((double )(*this ) op inRHS); } \
274281 Dynamic operator op (const cpp::Int64 &inRHS) const \
275282 { return Dynamic ((double )(*this ) op inRHS); } \
276283 Dynamic operator op (const cpp::UInt64 &inRHS) const \
@@ -462,6 +469,7 @@ COMPARE_DYNAMIC_OP( > )
462469 inline double operator op (const unsigned short &inLHS,const Dynamic &inRHS) { return inLHS op (double )inRHS; } \
463470 inline double operator op (const signed char &inLHS,const Dynamic &inRHS) { return inLHS op (double )inRHS; } \
464471 inline double operator op (const unsigned char &inLHS,const Dynamic &inRHS) { return inLHS op (double )inRHS; } \
472+ inline double operator op (const char16_t &inLHS,const Dynamic &inRHS) { return inLHS op (double )inRHS; } \
465473
466474ARITH_DYNAMIC ( - )
467475ARITH_DYNAMIC( + )
0 commit comments