瀏覽代碼

* Define RTTI directive parameters

Ryan Joseph 2 年之前
父節點
當前提交
bc72021039
共有 1 個文件被更改,包括 25 次插入0 次删除
  1. 25 0
      compiler/globtype.pas

+ 25 - 0
compiler/globtype.pas

@@ -941,6 +941,31 @@ interface
 
    Const AllTransformations = [Low(tfilenametransformation)..high(tfilenametransformation)];
 
+  { extended rtti directive }
+  type
+    trtti_clause = (
+      rtc_none,
+      rtc_inherit,
+      rtc_explicit
+    );
+    trtti_visibility = (
+      rv_private,
+      rv_protected,
+      rv_public,
+      rv_published
+    );
+    trtti_visibilities = set of trtti_visibility;
+    prtti_visibilities = ^trtti_visibilities;
+    trtti_option = (
+     ro_methods,
+     ro_fields,
+     ro_properties
+    );
+    trtti_directive = record
+      clause: trtti_clause;
+      options: array[trtti_option] of trtti_visibilities;
+    end;
+
 implementation
 
 end.