浏览代码

* Added TArray generic

git-svn-id: trunk@31462 -
michael 10 年之前
父节点
当前提交
a4502a50d5
共有 1 个文件被更改,包括 11 次插入3 次删除
  1. 11 3
      rtl/objpas/objpas.pp

+ 11 - 3
rtl/objpas/objpas.pp

@@ -19,11 +19,11 @@
 {$endif}
 {$endif}
 unit objpas;
 unit objpas;
 
 
-  interface
+interface
 
 
-    { first, in object pascal, the integer type must be redefined }
+  { first, in object pascal, the integer type must be redefined }
 {$ifdef CPU16}
 {$ifdef CPU16}
-    const
+   const
        MaxInt  = MaxSmallint;
        MaxInt  = MaxSmallint;
     type
     type
        Integer  = smallint;
        Integer  = smallint;
@@ -57,7 +57,15 @@ unit objpas;
        TBoundArray = array of integer;
        TBoundArray = array of integer;
 
 
 
 
+
 {$if FPC_FULLVERSION >= 20701}
 {$if FPC_FULLVERSION >= 20701}
+
+      { Generic array type. 
+        Slightly Less useful in FPC, since dyn array compatibility is at the element level. 
+        But still useful for generic methods and of course Delphi compatibility}
+      
+      Generic TArray<T> = Array of T;
+      
       { Generic support for enumerator interfaces. These are added here, because
       { Generic support for enumerator interfaces. These are added here, because
         mode (Obj)FPC does currently not allow the overloading of types with
         mode (Obj)FPC does currently not allow the overloading of types with
         generic types (this will need a modeswitch...) }
         generic types (this will need a modeswitch...) }