Browse Source

rtl: added tkHelper

mattias 6 years ago
parent
commit
01b3be4a07
1 changed files with 12 additions and 3 deletions
  1. 12 3
      packages/rtl/typinfo.pas

+ 12 - 3
packages/rtl/typinfo.pas

@@ -42,7 +42,7 @@ type
     tkPointer,  // 15
     tkPointer,  // 15
     tkJSValue,  // 16
     tkJSValue,  // 16
     tkRefToProcVar, // 17
     tkRefToProcVar, // 17
-    tkInterface // 18
+    tkInterface, // 18
     //tkObject,
     //tkObject,
     //tkSString,tkLString,tkAString,tkWString,
     //tkSString,tkLString,tkAString,tkWString,
     //tkVariant,
     //tkVariant,
@@ -51,12 +51,12 @@ type
     //tkQWord,
     //tkQWord,
     //tkInterfaceRaw,
     //tkInterfaceRaw,
     //tkUString,tkUChar,
     //tkUString,tkUChar,
-    //tkHelper,
+    tkHelper    // 19
     //tkFile,
     //tkFile,
     );
     );
   TTypeKinds = set of TTypeKind;
   TTypeKinds = set of TTypeKind;
 
 
-  // for compatibility with Delphi/FPC, ignored under pas2js
+  // TCallConv for compatibility with Delphi/FPC, ignored under pas2js
   TCallConv = (ccReg, ccCdecl, ccPascal, ccStdCall, ccSafeCall, ccCppdecl,
   TCallConv = (ccReg, ccCdecl, ccPascal, ccStdCall, ccSafeCall, ccCppdecl,
     ccFar16, ccOldFPCCall, ccInternProc, ccSysCall, ccSoftFloat, ccMWPascal);
     ccFar16, ccOldFPCCall, ccInternProc, ccSysCall, ccSoftFloat, ccMWPascal);
 
 
@@ -341,6 +341,15 @@ type
     Ancestor: TTypeInfoInterface external name 'ancestor';
     Ancestor: TTypeInfoInterface external name 'ancestor';
   end;
   end;
 
 
+  { TTypeInfoHelper - Kind = tkHelper }
+
+  TTypeInfoHelper = class external name 'rtl.tTypeInfoHelper'(TTypeInfoStruct)
+  public
+    HelperType: TJSObject external name 'helper';
+    Ancestor: TTypeInfoHelper external name 'ancestor';
+    HelperFor: TTypeInfo external name 'helperfor';
+  end;
+
   EPropertyError  = class(Exception);
   EPropertyError  = class(Exception);
 
 
 function GetClassMembers(aTIStruct: TTypeInfoStruct): TTypeMemberDynArray;
 function GetClassMembers(aTIStruct: TTypeInfoStruct): TTypeMemberDynArray;