Commit History

Author SHA1 Message Date
  svenbarth a076677336 * instead of a flags field generate a table with all Initialize operators of all fields (nested or not, parent class or not) for class types; objects and records don't use this (yet) 7 years ago
  svenbarth 2e1327b6b2 * use pooled constant references for the parameter locations as more often than not they're equal between multiple methdos (e.g. the Self argument is always the same) 7 years ago
  svenbarth 029ec93df6 * use pooled constant references for the names of VMT methods in the RTTI 7 years ago
  svenbarth 228d3252cc * use pooled constant references for the parameter names of VMT methods in the RTTI 7 years ago
  svenbarth 8536abce8a * as the management operator feature is not platform specific using a specific define for it aside from a 7 years ago
  svenbarth ac0322c323 + add a flags field to the record init RTTI which declares whether 7 years ago
  michael 16ba47be46 * Patch from Ondrej Pokorny to convert unit names to CamelCase (bug ID 33481) 7 years ago
  michael 3f09294aab * Functions to see whether a published property is readable or writeable 7 years ago
  michael a3bcefd78c * Use pointer get/set methods 7 years ago
  michael 3d3bbcfa9c * Raise error if property cannot be written (Enhanced patch from Ondrej Pokorny, bug ID #32586) 7 years ago
  svenbarth 7e3ad42f33 + add types for the VMT's message table (the names are Delphi compatible, even if TVmtMethodEntry has no Len field) 7 years ago
  svenbarth e6b39ebf15 + add methods for easier enumeration of the fields in a class' field table 7 years ago
  svenbarth 0ba1073615 + add new type TVmtFieldClassTab for the class table of the field table (Delphi compatible) 7 years ago
  svenbarth 1ae344394a + add data record for easier access to a class' data 7 years ago
  svenbarth 5c97248f85 + also write the set's size to the RTTI as that simplifies handling in Invoke() 8 years ago
  svenbarth 8b5461367b * move TTypeKind from TypInfo unit to System unit as it's necessary for the future GetTypeKind() intrinsic 8 years ago
  michael c788256fc9 * Added AddEnumElementAliases/TypInfo.RemoveEnumElementAliases (bug ID 30961) 8 years ago
  Károly Balogh ea635bfda5 typinfo: push/pop doesn't save packrecords. also, always use AlignTypeData on m68k, which might have less than pointer sized (word, 2 byte) alignments in the typeinfo, because on most systems C compilers also use 2 byte alignments, so we need that for compatibility 8 years ago
  michael ac207e867b * Fix bug ID #30952 8 years ago
  maciej-izak 3900ccf260 * Rename RecordOp to ManagementOp (more relevant name) 8 years ago
  maciej-izak af8e0efe57 * Rtti info about Management Operators (MO) in init table for records. Note: commit contains minimal changes for RTL (for proper "make") no functional changes. More RTL changes for fully functionally MO in next commits. 8 years ago
  svenbarth 870bffc70d * provide access to the method table for raw interfaces (it is written even though $M is not respected by such interfaces currently) 8 years ago
  svenbarth fd1047c715 * use the correct alignment for the field following the unit name of an interface (raw or not doesn't matter) 8 years ago
  svenbarth 060cb62f2a * correctly handle alignment for TParameterLocations 8 years ago
  svenbarth f1a5fbc0df * rename TIntfMethodEntry.ReturnLoc to ResultLocs for consistency with both ResultType and TVmtMethodParam.ParaLocs 8 years ago
  svenbarth 26135d605f + implement interface RTTI inspired by the changes from Steve Hildebrandt, yet not exactly the same. Like his implementation this one isn't Delphi compatible either. 8 years ago
  svenbarth 03715bd9a8 + add data records TInterfaceData for COM and TInterfaceRawData for raw interfaces that allow for easier access to data that's only accessible by using pointers (and keeping track of alignment) without further polluting TTypeData 8 years ago
  svenbarth c6233697be + add utility properties to TPropData to access a specific TPropInfo or the end of the known data of all properties 8 years ago
  svenbarth bf2891938f + add utility properties to TPropInfo to easily access the next TPropInfo in a list of prop infos (TPropInfo.Next) or the direct, unpadded end of the known information (TPropInfo.Tail) 8 years ago
  svenbarth 3b1ae57844 * allow for AlignTypeData() to be inlined 8 years ago