|
@@ -194,14 +194,12 @@ end;
|
|
|
|
|
|
|
|
|
operator :=(const source : wordbool) dest : variant;{$ifdef SYSTEMINLINE}inline;{$endif}
|
|
|
-
|
|
|
begin
|
|
|
Variantmanager.varfromBool(Dest,Boolean(Source));
|
|
|
end;
|
|
|
|
|
|
|
|
|
operator :=(const source : longbool) dest : variant;{$ifdef SYSTEMINLINE}inline;{$endif}
|
|
|
-
|
|
|
begin
|
|
|
Variantmanager.varfromBool(Dest,Boolean(Source));
|
|
|
end;
|
|
@@ -210,14 +208,12 @@ end;
|
|
|
{ Chars }
|
|
|
|
|
|
operator :=(const source : char) dest : variant;{$ifdef SYSTEMINLINE}inline;{$endif}
|
|
|
-
|
|
|
begin
|
|
|
VariantManager.VarFromPStr(Dest,Source);
|
|
|
end;
|
|
|
|
|
|
|
|
|
operator :=(const source : widechar) dest : variant;{$ifdef SYSTEMINLINE}inline;{$endif}
|
|
|
-
|
|
|
begin
|
|
|
Variantmanager.varfromInt(Dest,word(Source),2);
|
|
|
end;
|
|
@@ -242,6 +238,18 @@ begin
|
|
|
end;
|
|
|
|
|
|
|
|
|
+operator :=(const source : UTF8String) dest : variant;{$ifdef SYSTEMINLINE}inline;{$endif}
|
|
|
+begin
|
|
|
+ VariantManager.VarFromWStr(Dest,UTF8Encode(Source));
|
|
|
+end;
|
|
|
+
|
|
|
+
|
|
|
+operator :=(const source : UCS4String) dest : variant;{$ifdef SYSTEMINLINE}inline;{$endif}
|
|
|
+begin
|
|
|
+ VariantManager.VarFromWStr(Dest,UCS4StringToWideString(Source));
|
|
|
+end;
|
|
|
+
|
|
|
+
|
|
|
{$ifndef FPC_WIDESTRING_EQUAL_UNICODESTRING}
|
|
|
operator :=(const source : UnicodeString) dest : variant;{$ifdef SYSTEMINLINE}inline;{$endif}
|
|
|
begin
|
|
@@ -357,14 +365,12 @@ operator :=(const source : variant) dest : longint;{$ifdef SYSTEMINLINE}inline;{
|
|
|
|
|
|
|
|
|
operator :=(const source : variant) dest : qword;{$ifdef SYSTEMINLINE}inline;{$endif}
|
|
|
-
|
|
|
begin
|
|
|
dest:=variantmanager.vartoword64(source);
|
|
|
end;
|
|
|
|
|
|
|
|
|
operator :=(const source : variant) dest : int64;{$ifdef SYSTEMINLINE}inline;{$endif}
|
|
|
-
|
|
|
begin
|
|
|
dest:=variantmanager.vartoint64(source);
|
|
|
end;
|
|
@@ -380,14 +386,12 @@ end;
|
|
|
|
|
|
|
|
|
operator :=(const source : variant) dest : wordbool;{$ifdef SYSTEMINLINE}inline;{$endif}
|
|
|
-
|
|
|
begin
|
|
|
dest:=variantmanager.vartobool(source);
|
|
|
end;
|
|
|
|
|
|
|
|
|
operator :=(const source : variant) dest : longbool;{$ifdef SYSTEMINLINE}inline;{$endif}
|
|
|
-
|
|
|
begin
|
|
|
dest:=variantmanager.vartobool(source);
|
|
|
end;
|
|
@@ -396,10 +400,8 @@ end;
|
|
|
{ Chars }
|
|
|
|
|
|
operator :=(const source : variant) dest : char;{$ifdef SYSTEMINLINE}inline;{$endif}
|
|
|
-
|
|
|
Var
|
|
|
S : String;
|
|
|
-
|
|
|
begin
|
|
|
VariantManager.VarToPStr(S,Source);
|
|
|
If Length(S)>0 then
|
|
@@ -408,7 +410,6 @@ end;
|
|
|
|
|
|
|
|
|
operator :=(const source : variant) dest : widechar;{$ifdef SYSTEMINLINE}inline;{$endif}
|
|
|
-
|
|
|
begin
|
|
|
dest:=widechar(variantmanager.vartoint(source));
|
|
|
end;
|
|
@@ -434,6 +435,25 @@ begin
|
|
|
end;
|
|
|
|
|
|
|
|
|
+operator :=(const source : variant) dest : UTF8String;{$ifdef SYSTEMINLINE}inline;{$endif}
|
|
|
+var
|
|
|
+ temp : Widestring;
|
|
|
+begin
|
|
|
+ VariantManager.VarToWStr(temp,Source);
|
|
|
+ dest:=UTF8Encode(temp);
|
|
|
+end;
|
|
|
+
|
|
|
+
|
|
|
+{$ifdef dummy}
|
|
|
+operator :=(const source : variant) dest : UCS4String;{$ifdef SYSTEMINLINE}inline;{$endif}
|
|
|
+var
|
|
|
+ temp : Widestring;
|
|
|
+begin
|
|
|
+ VariantManager.VarToWStr(temp,Source);
|
|
|
+ dest:=WideStringToUCS4String(temp);
|
|
|
+end;
|
|
|
+{$endif dummy}
|
|
|
+
|
|
|
{$ifndef FPC_WIDESTRING_EQUAL_UNICODESTRING}
|
|
|
operator :=(const source : variant) dest : UnicodeString;{$ifdef SYSTEMINLINE}inline;{$endif}
|
|
|
var
|