TDurationRemotable and TTimeRemotable are not implemented, so do not register them in the type register. Instead these types ( duration and time ) are typed string alias.

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@887 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
inoussa 2009-06-30 20:26:15 +00:00
parent 41dd09e69f
commit c8ad953c7c
3 changed files with 24 additions and 1 deletions

View File

@ -44,6 +44,12 @@ type
nonNegativeInteger = type LongWord;
positiveInteger = type nonNegativeInteger;
float = Single;
{$IFNDEF WST_HAS_TDURATIONREMOTABLE}
duration = type string;
{$ENDIF WST_HAS_TDURATIONREMOTABLE}
{$IFNDEF WST_HAS_TTIMEREMOTABLE}
time = type string;
{$ENDIF WST_HAS_TTIMEREMOTABLE}
TScopeType = Integer;
TArrayStyle = ( asScoped, asEmbeded, asNone );
@ -1684,8 +1690,16 @@ begin
r.Register(sXSD_NS,TypeInfo(Extended),'decimal').AddPascalSynonym('Extended');
r.Register(sXSD_NS,TypeInfo(TDateRemotable),'dateTime').AddPascalSynonym('TDateRemotable');
{$IFDEF WST_HAS_TDURATIONREMOTABLE}
r.Register(sXSD_NS,TypeInfo(TDurationRemotable),'duration').AddPascalSynonym('TDurationRemotable');
{$ELSE WST_HAS_TDURATIONREMOTABLE}
r.Register(sXSD_NS,TypeInfo(duration),'duration').AddPascalSynonym('duration');
{$ENDIF WST_HAS_TDURATIONREMOTABLE}
{$IFDEF WST_HAS_TTIMEREMOTABLE}
r.Register(sXSD_NS,TypeInfo(TTimeRemotable),'time').AddPascalSynonym('TTimeRemotable');
{$ELSE WST_HAS_TTIMEREMOTABLE}
r.Register(sXSD_NS,TypeInfo(time),'time').AddPascalSynonym('time');
{$ENDIF WST_HAS_TTIMEREMOTABLE}
ri := r.Register(sWST_BASE_NS,TypeInfo(TBaseArrayRemotable),'TBaseArrayRemotable');
ri.Options := ri.Options + [trioNonVisibleToMetadataService];

View File

@ -409,7 +409,9 @@ begin
AddClassDef(Result,'TBaseRemotable','',TPasNativeClassType);
AddClassDef(Result,'TAbstractSimpleRemotable','TBaseRemotable',TPasNativeClassType);
AContainer.RegisterExternalAlias(AddClassDef(Result,'TDateRemotable','TAbstractSimpleRemotable'),'dateTime');
{$IFDEF WST_HAS_TDURATIONREMOTABLE}
AContainer.RegisterExternalAlias(AddClassDef(Result,'TDurationRemotable','TAbstractSimpleRemotable'),'duration');
{$ENDIF WST_HAS_TDURATIONREMOTABLE}
AContainer.RegisterExternalAlias(AddClassDef(Result,'TTimeRemotable','TAbstractSimpleRemotable'),'time');
AddClassDef(Result,'TAbstractComplexRemotable','TBaseRemotable',TPasNativeClassType);
@ -446,7 +448,12 @@ begin
AddAlias('float','Single',Result);
AddAlias('nonNegativeInteger','LongWord',Result);
AddAlias('positiveInteger','nonNegativeInteger',Result);
//AddAlias('base64Binary','string',Result);
{$IFNDEF WST_HAS_TDURATIONREMOTABLE}
AddAlias('duration','string',Result);
{$ENDIF WST_HAS_TDURATIONREMOTABLE}
{$IFNDEF WST_HAS_TTIMEREMOTABLE}
AddAlias('time','string',Result);
{$ENDIF WST_HAS_TTIMEREMOTABLE}
except
FreeAndNil(Result);
raise;

View File

@ -3,6 +3,8 @@
{$UNDEF WST_TKPROCVAR}
{$UNDEF WST_UNICODESTRING}
{$UNDEF WST_SEMAPHORE_TIMEOUT}
{$UNDEF WST_HAS_TDURATIONREMOTABLE}
{$UNDEF WST_HAS_TTIMEREMOTABLE}
{$WARNINGS OFF}