CompareResult VUUID::CompareTo (const VValueSingle& inValue, Boolean /*inDiacritical*/) const { if (!testAssert(inValue.GetValueKind() == VK_UUID)) return CR_UNRELEVANT; return CompareToSameKind(&inValue); }
JS4D::ValueRef JS4D::VValueToValue( ContextRef inContext, const VValueSingle& inValue, ValueRef *outException) { ValueRef jsValue; switch( inValue.GetValueKind()) { case VK_BYTE: case VK_WORD: case VK_LONG: case VK_LONG8: case VK_REAL: case VK_FLOAT: case VK_SUBTABLE_KEY: jsValue = inValue.IsNull() ? JSValueMakeNull( inContext) : JSValueMakeNumber( inContext, inValue.GetReal()); break; case VK_BOOLEAN: jsValue = inValue.IsNull() ? JSValueMakeNull( inContext) : JSValueMakeBoolean( inContext, inValue.GetBoolean() != 0); break; case VK_UUID: if (inValue.IsNull()) jsValue = JSValueMakeNull( inContext) ; else { VString tempS; inValue.GetString(tempS); jsValue = VStringToValue( inContext, tempS); } break; case VK_TEXT: case VK_STRING: #if VERSIONDEBUG jsValue = VStringToValue( inContext, dynamic_cast<const VString&>( inValue)); #else jsValue = VStringToValue( inContext, (const VString&)( inValue)); #endif break; case VK_TIME: #if VERSIONDEBUG jsValue = inValue.IsNull() ? JSValueMakeNull( inContext) : VTimeToObject( inContext, dynamic_cast<const VTime&>( inValue), outException); #else jsValue = inValue.IsNull() ? JSValueMakeNull( inContext) : VTimeToObject( inContext, (const VTime&)( inValue), outException); #endif break; case VK_DURATION: #if VERSIONDEBUG jsValue = VDurationToValue( inContext, dynamic_cast<const VDuration&>( inValue)); #else jsValue = VDurationToValue( inContext, (const VDuration&)( inValue)); #endif break; case VK_BLOB: jsValue = VBlobToValue( inContext, (const VBlob&)( inValue)); break; case VK_IMAGE: #if !VERSION_LINUX // Postponed Linux Implementation ! jsValue = VPictureToValue(inContext, (const VPicture&)( inValue)); #endif break; default: jsValue = JSValueMakeUndefined( inContext); // exception instead ? break; } return jsValue; }