Browse Source

* move TRttiStructuredType and TRttiInstanceType further down as they need access to TRttiMember and its children

git-svn-id: trunk@37408 -
svenbarth 7 years ago
parent
commit
bfd37969ad
1 changed files with 19 additions and 20 deletions
  1. 19 20
      packages/rtl-objpas/src/inc/rtti.pp

+ 19 - 20
packages/rtl-objpas/src/inc/rtti.pp

@@ -205,10 +205,6 @@ type
     property TypeSize: integer read GetTypeSize;
   end;
 
-  TRttiStructuredType = class(TRttiType)
-
-  end;
-
   { TRttiFloatType }
 
   TRttiFloatType = class(TRttiType)
@@ -237,22 +233,6 @@ type
     property ReferredType: TRttiType read GetReferredType;
   end;
 
-  { TRttiInstanceType }
-
-  TRttiInstanceType = class(TRttiStructuredType)
-  private
-    function GetDeclaringUnitName: string;
-    function GetMetaClassType: TClass;
-  protected
-    function GetIsInstance: boolean; override;
-    function GetTypeSize: integer; override;
-    function GetBaseType: TRttiType; override;
-  public
-    property MetaClassType: TClass read GetMetaClassType;
-    property DeclaringUnitName: string read GetDeclaringUnitName;
-
-  end;
-
   { TRttiMember }
 
   TMemberVisibility=(mvPrivate, mvProtected, mvPublic, mvPublished);
@@ -290,6 +270,25 @@ type
     property Visibility: TMemberVisibility read GetVisibility;
   end;
 
+  TRttiStructuredType = class(TRttiType)
+
+  end;
+
+  { TRttiInstanceType }
+
+  TRttiInstanceType = class(TRttiStructuredType)
+  private
+    function GetDeclaringUnitName: string;
+    function GetMetaClassType: TClass;
+  protected
+    function GetIsInstance: boolean; override;
+    function GetTypeSize: integer; override;
+    function GetBaseType: TRttiType; override;
+  public
+    property MetaClassType: TClass read GetMetaClassType;
+    property DeclaringUnitName: string read GetDeclaringUnitName;
+  end;
+
   EInsufficientRtti = class(Exception);
   EInvocationError = class(Exception);
   ENonPublicType = class(Exception);