mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-21 15:49:26 +02:00
+ basic rtl support for variant <-> interface implemented
This commit is contained in:
parent
3cb0a53eca
commit
13c5439bb1
@ -208,6 +208,8 @@ Procedure fpc_Write_Text_WideChar(Len : Longint;var t : Text;c : WideChar); comp
|
||||
procedure fpc_write_text_variant(Len : Longint;var f : Text;const v : variant); compilerproc;
|
||||
function fpc_variant_to_dynarray(const v : variant;typeinfo : pointer) : pointer;compilerproc;
|
||||
function fpc_dynarray_to_variant(dynarr : pointer;typeinfo : pointer) : variant;compilerproc;
|
||||
function fpc_variant_to_interface(const v : variant) : iinterface;compilerproc;
|
||||
function fpc_interface_to_variant(const i : iinterface) : variant;compilerproc;
|
||||
{$endif HASVARIANT}
|
||||
|
||||
Procedure fpc_Read_End(var f:Text); compilerproc;
|
||||
@ -356,7 +358,10 @@ function fpc_qword_to_double(q: qword): double; compilerproc;
|
||||
|
||||
{
|
||||
$Log$
|
||||
Revision 1.63 2005-01-06 13:39:59 florian
|
||||
Revision 1.64 2005-01-07 21:15:46 florian
|
||||
+ basic rtl support for variant <-> interface implemented
|
||||
|
||||
Revision 1.63 2005/01/06 13:39:59 florian
|
||||
* widecharray patch from Peter
|
||||
|
||||
Revision 1.62 2004/12/05 11:49:06 florian
|
||||
|
@ -66,7 +66,7 @@ Begin
|
||||
variantmanager.write0variant(f,v)
|
||||
else
|
||||
variantmanager.writevariant(f,v,len);
|
||||
fmInput:
|
||||
fmInput:
|
||||
InOutRes:=105
|
||||
else InOutRes:=103;
|
||||
end;
|
||||
@ -77,13 +77,26 @@ function fpc_variant_to_dynarray(const v : variant;typeinfo : pointer) : pointer
|
||||
begin
|
||||
variantmanager.vartodynarray(result,v,typeinfo);
|
||||
end;
|
||||
|
||||
|
||||
|
||||
function fpc_dynarray_to_variant(dynarr : pointer;typeinfo : pointer) : variant;compilerproc;
|
||||
begin
|
||||
variantmanager.varfromdynarray(result,dynarr,typeinfo);
|
||||
end;
|
||||
|
||||
|
||||
function fpc_variant_to_interface(const v : variant) : iinterface;compilerproc;
|
||||
begin
|
||||
variantmanager.vartointf(result,v);
|
||||
end;
|
||||
|
||||
|
||||
function fpc_interface_to_variant(const i : iinterface) : variant;compilerproc;
|
||||
begin
|
||||
variantmanager.varfromintf(result,i);
|
||||
end;
|
||||
|
||||
|
||||
{ ---------------------------------------------------------------------
|
||||
Overloaded operators.
|
||||
---------------------------------------------------------------------}
|
||||
@ -603,7 +616,10 @@ procedure initvariantmanager;
|
||||
|
||||
{
|
||||
$Log$
|
||||
Revision 1.19 2004-12-05 11:49:06 florian
|
||||
Revision 1.20 2005-01-07 21:15:46 florian
|
||||
+ basic rtl support for variant <-> interface implemented
|
||||
|
||||
Revision 1.19 2004/12/05 11:49:06 florian
|
||||
* implemented helper for variant<->dyn. array type cast
|
||||
|
||||
Revision 1.18 2004/08/18 21:03:35 florian
|
||||
|
Loading…
Reference in New Issue
Block a user