Description: rtl-objpas
This file as text.
(active) Revisions in this set:
75fe6c23a5242eddfd19537e00200bf425cfdcbc,2840e5e1fda6a4d222057f583c6a65cb08a0074d,c38b8ac28fd17072e2db87f4d008c36e68e8e0a7
eed9bc1f356acc9da3471b862ae0b35e8fca0908,e65b822a0c2a0d0dbe11ae3766dc9876accdbf28,e95572921a85a84f64ce4864544d549ad0ef5b50
ac95c20c5a0fa5387aa87a963ef224fb86bcffe7,8c5bc91855dcdb1812d0d8ad851e1eef92047187,acaa4660fb7162c7e76d09c93e759cf384492bdb
7cde8df8c78c3e7f7af2758c53e57e2867680baa,6ffa3d4a89adc384b4bcc4459c63b30d1c0d830b,74fdf0692caf78d795585b06078f93310d7ae0cf
6084bb6d09aab6c4f337f0df1ae121f0c7149c7e,42b10196f16592cfabc4284ada2e8c3e78b44015,0bad315dafc027649333ae3ed76fbee3c1426734
4b5ffd1b2363b8853525a11d20d4ada6c8c5bc12,a7578e144d4dbb18405e80f55822e140fc049be8,ef5a32ab9531f0c6626fff54981a05d0cef3a0d0
56a906a4219bc5533335bf84c3df56250de1de37,9b783281753a1b7b76feb9b9fad04975bc7ac109,15e7dd3d9f5d94136f00c29235f9ffbcb8a5650c
5307ef07c43b0c3005f7d2a2da89b58cd2690993,f671db3fa691b70f720b266dc25c6bef77e1288c,557a324473694e56ffd934e2f9342ce64cd9b50d
74c995c06b7759bf741954b2e51ece96b9847f75,938207045477ae42af68ac7cf0b30d67de7dffb4,1ce1fcf5aeff6fe3ade196c3e4d1b1d58f80f5fd
b0fd2615194fa74e8b4de328974c9834e6ca06a4,dba81381756d73ff6bc9493bf5e6b15197d0118b,50344403834db619bdbf15f42ef88bce903d0692
2cec31d86f232e5c47fbe20dfd115d8caf2e5ba5,121f6fce223c975f5ec2d48cad8e40ae9c47cc1f,b6ccf369b97093839cdefcda2be4e46a65b27bc4
3a5db26abf2ab5fbae9577928a42d78d122e0ae7,2b0d98bf2ceb00ebe2b479f91a33bed106513791,cc81e183226bb1d36dd19b7755c51e2633be8f09
ca8d867d570f0a292fb8cb92e397926e34c9fac7,71a46465c8105ac3fa5f492d17ae73ac486b7060,476780df7710331877ee1c77af234dc75d13e8ba
9c5bfbeb780c296556b6317bdc517079c42e390a,09b0ca01ccf02d311c1a2223ac8c1c80ea16e78d,3f7cd9b8076ef8bb0f9fb3a1892d2beb944ccbdb
ba6696d9eda7872b99b9a3b3060545aa7e31051c,7589bb39b86dcb8ff1bd7a3bb4d836659062bf60,074cb3bcf4dd05140984e8f0ff1b42a2caed1ca3
54bb95da81571e745d02770318ceba5fecf4e0d2,d1432b73029b43b6f1a4746782e76c04ea75ac4a,c2176d27eaaeb68e6dc8c2a6a06cb76df6d91876
492717a25c7f4dd0a1f4f7dc98fb2697a38e6b2f,85494cdb1d831c5b0a3053bc4f9268d10ade1295,2463faf5c0b3a23d04d188e3f925960d1534d46b
9fe350bd91c0293c794a5c46e3211d29fb0e2727,ef6612170cbdd9794c3dee1bc5b10c22af57b7ff,92479574779ec3820fce0a6067a7a2bb17493d45
bc2d1cf51c4222b7cb18c93e990436df877a56b1,083e85854444fda9a392a67536d25701081f481e,78c8ca57adc378a75621a9ea921917ab57eae898
e75d97815d19b2540a5311eb0ac8f734765abfee,e67cccee374935361230e26d45ce42a01a5bfb8d,52d3a0d5e3befa86118c9dd762381cb2d20fcdea
6e03b24701771b77c804e1ca774d61d05ac8136c,91756b9e3e658799db1f34de15bfc0bd6267af3a,e7184f3126fe185c4b96edc5d8506fc08e2a97c1
666de1e77c5b8ae629c7e0ee5f9afac036b3e18e,f7214e6ae8314d5dc35caff50dd7e27f99a27cc2,9f5a4205049c74cd503a2e921309acb80c6e5dc7
05a6a498c0ee55b5b1462d5d9d9ca036dc67505d,fafb2934260208b23ba6f7d0e3d21a68dab2c138,7f94fb2a65a1b9b68fa1be9ce53b2e28098ac270
d851553f417233bb8cca6a0ec54f4be864d14056,40c3dc5809eb9842bf7a283ec5655b60d0f0c557,8eb0d1eaed1b9322706cbb199c093005b1839d43
713c9eea6a8e91d8dbb8a408575f740bbc79f2c3,ab115180bf06334c3b895be4df0e00ff74a186fc,14d65ced2eaa7747628d7f281f36ad2af56057b2
fac7c21b9b95ef254c27c365ddb218817da8c777,342d3338e50110e9f77574571e5fdac29330046b,93937f99ae6cc39b0e11d625aa9a1da05a5c6d67
3e098316fde811eaec9c9812f42a2dfd7f0015b0,92f937c40eb8ebad413e8819de0474306755a1a5,b5a0c3b1b6be6538d7111f2863e4575cd32da662
d3b14eb1ba8dc3b5f2ca1dd47db1faf79cffd2c3,149db318a0c4a4acff4fe5a23d43dd66e7704017,23dd7a51731239e06e2e1bdbc966d240dc4d21fc
6ff63107a68f173d9c03e99c41ab9c40738b2ff0,742158b678ba56230806c0c590c02602e528893c,d79c12ad5b7efafa4c8e8d7d3007d30b5794ca5a
b74411cf03d616201c8bd7a7370df77918d80735,f7bcabd9568c9c27b86b7e77fe6d01c1fc6f7d0e,2469fe8d700ebbfffa9d26b76f7c3607e9f2b15a
f70a430b6f170703190d7d53da1706b607eaf1b0,d9ec917586b3d945bd4d79a857b165c3bb0aab81,d96448cfafabdc0116dbd1f7e7c983b2c48b5a3c
2d0f8467fa235f102b3b7c2b39e5e00a243ab8cd,0b0193106fdde9c4cb466beb8af8136ed4fcbf41,1230e5a623c5c8e31a2c4f0e09f9f1e3fa89e28f
03f98e749cebb73d0bb431a430c6280ea25a9888,26b6d0223e08565cf3080313a5828462604660f2,8ffbbe6a93786927117165a122720e792cea961c
1b8209fee4c887946c9c8c49db9a52c4a3302519,a8ccf71bd0ac5b1c231bfa3d65d900c2cc1f7053,1c816990c33b47ee7b6ea90a2909407295d40b11
59457228111983bfb67ccd8cfbd5953034107499,69140d22eb808fed7f93970102904da246991518,98a7fe6204d5d2a966ae5497b9ebf76325b82b06
5a6b4ed8e4200680ca5ce39d4fd67e0570cd2f8b,6c1c3e35ee99b3646a349e58243530625cd21d74,072cb55315f8c79baf9561cb6218f6fbb77e5057
fd10c8826473e4cf3f333d09dd39e0b218919778,cc6aabaf8b68bb0454c4c960d81ccf85d0e5bc95,4a596a2de30c4b63c7cb535ddb367d9d84bc2964
0acff7a7c15779641a79847fa0a204146e243824,8a92f5f01e6a0b31962e5e584b247c42ea9b309a,2deb5e655740b037102c4ce76c1c0799efb57190
a1892091ed23cc85175403ddf8ef2e5e7ae8bc3a,76e2ee99701b89837445a5b636d4507eb435f567,cb072b6b8c4a228000f98307e63bb7744bf7287e
dfd8f5c62b03b013a348f00dde06dd9f7a0ee0be,b447ab211f4af8a5868970fb4ce4143d7cbe9931,4afc656ac59f5c5f7a37fdefb51ccb93ad7c0173
2070a452178eeeba70327863539c0c1e98394b18,e552165b7a737e8a2860df87da2f53c1dae69395,1f19edef004bad0ea37aa0f7dfdef2139de19ab4
8834c109fa68e83bb3929bea9361f766ab3e1414,774e96f8a9ff472cc47bd1a6f2c25beda6665413,a6e7e3e74345e9d508d57eaf592885763bd57d2c
72459026608d111de2682076c3d2464d5df104f1,4aed151833107e24c5256561422011dc5c786ed0,faf085662d8c8250a63530ac784a8d59886e4461
2e8b9e7e01ffbf180e5c0ac2a2a29d0e06b822a7,12db8a59b526a292182da0b43adb15e9e30b6c7c,6972d16c3ab08068898d123f5b677c6e56d96d1a
814370b894f989fa5c83ac4684e6e0f5465e6227,10e6a54b59b5d62dfe232c84a1b0159c6c73239c,b3d555c2584b513c07ec64abed99423fc5e4d41e
e062a5471663d71d47b16008021fd206877c9f7e,11076f084c5f4c2c536b07761c93b37c362cac83,a0a453f8903b9e9a261b5e6b74ae0b560301b4e4
7210366766d36d906073b8bf16d8ace84e7d4cf0,57a53d6532686a3e80ac1bcb62a10cf76c8fb8c4,b648c6e23716ebdae25e9f59e0cb2a844f44d507
bfa16c0b32b99bcf17abf8d67bc07919615838ec,f2d88692863dfe9896e5fd901a2cc5e58c12cb85,1208f4d5b9a5157cf205c71d9244fb9bf41ad15d
f23dbc2ecb1674a701d034aeecc8bb74ac0698b0,134e9645144fb7dab91d988763cf0eef02c42b12,c7275d0bde42998815200f5fbf78e1281f203c7d
083a05904325b4d1aad1905a5fb60fee6ffed742
Clicking a revision will expand files
* FreeRTOS: adapated packages to build
* fix for Mantis
0036895: the new epoll_pwait was missing the size parameter for the sigmask parameter
sinclairql: enable most of rtl-objpas and rtl-extra on the QL
+ enabled several rtl-objpas units for the WASI target
+ add type helpers for the remaining Boolean types (QWordBool and Boolean{8,16,32,64})
* i386 callback implementation: only skip the result argument if it was detected as one from the parameters
* Add examples for syshelpers from Zeljko Avramovic. Fix issue
gitlab 0039541
Improve NaturalCompareText behaviour as a comparer.
This version probably can’t return garbage or intransitive results.
Add loongarch64 packages support
* Some forgotten string -> shortstring instances
* Some fixes in INtToBin, XorDecode/XorEncode
* Dotted filenames for package rtl-objpas
Fix compilation for msdos targets
Fix order of parameters of FillChar
* patch and test by Rika: Redirect StrUtils.RPos to StrUtils.RPosEx, fix a bit, improve a bit, resolves
gitlab 0040394
bypass `real` → `integer` conversion → `real` promotion in `dateUtils.dateOf`
The `dateUtils.dateOf` function takes one `tDateTime` value, a `real` value,
converts it to an `integer` using `trunc`, and then the value is automatically
promoted to a `real` value again (because of result data type `tDateTime`).
This is unnecessary (unless an error is the desired behavior).
You can use just `system.int` to obtain the integral (= date) part of `tDateTime`.
+ simple test for Dateutils.DateOf
* Add system.actions unit for Delphi compatibility
* Add system.math.vectors for Delphi compatibility.
Refactor and fix a bug in Boyer-Moore.
* Patch from Rika to fix broken test (tw39885)
Refactor promotional features of StrUtils.
* Fix compilation of unicode RTL after patch by Rika
* Fix typo, missing brackets
* patch by Евгений Савин to make Variant to string convertion use CurrToStr for varCurrency, resolves
gitlab 0040624
* Add TRttiEnumerationType for Delphi compatibility
* Add TTouchTracking for Delphi compatibility
* Virtual key definitions added
* Get extended methods, fields and property info.
Fix msdos compilation failure by using CodePointer type for GetCodeAddress TRttiRecordMethod function
* Return delphi-compatible output for TValue.ToString when empty
+ Add Simple MonitorSupport implementation
* Get Field Attributes + tests
Create TMonitorData initialized.
Set ‘TMonitorData’s without locking.
Manage ‘TPulseData’s as linked list of structures allocated in ‘Wait’ stack frames.
‘LockCount’ does not require atomics.
TMonitor.Wait temporarily unlocks through recursive calls.
Use exponential backoff in timeouted ‘TMonitor.Enter’ and explain why it’s still a bad solution.
* Do not prefix with unit name unless necessary
* Fix wrong type for threadID
* Implement TRttiField.(G|S)etValue
Alternative implementation of TMonitor for Windows Vista+.
* Implement GetCodeAddress for TRttiInstanceMethod
* Remove additional memleak
* Fix duplicate registration of existing RTTI
* Fix ref count of interface during cast
* Synchronize Method/Field treatment. Correct parent for fields
* Complete erroneously partial commit
* Allow to call constructor using Invoke()
* Properly pass on FUsePublishedOnly to properties. Fixes issue
gitlab 0040702
* Allow ToString for object value
* Add missing PAlphaColorF
* Fixed DeclaredFields for record, should be the same as fields
* Add TCubicBezierCurve for Delphi compatibility
Move varutils.pp from src/common to src/inc directory
Fix directory for varutils unit
Use single main file src/inc/varutils.pp for Windows and other OSes
Adapt namespaces.lst to removal of src/win/varutils.pp separate source file
Fix syntax error in last commit
* Small correction in property resolve
* Correctly pass UsePublishedOnly on to sub-contexts. Fixes issue
gitlab 0040828
* Handle tkFloat in TValue.ToString
* Implement DropContext/KeepContext for Delphi compatibility. Patch by Artem Izmaylov. Fixes issue
gitlab 0040884
Adding some convinience functions to TNullable
+ Add license header to tuples, add to fpmake
Adding TNullPtr to types
Additional changes:
* Now using TNullPtr instead of custom type in TNullable
* Adding assignment of variants with TNulPtr to avoid name conflicts
* Adding comparison to TNullPtr (Pointers, TObjects, TNullable)
Adding pointer access to nullable
* Add GetMethod(name), patch by Lipinast Lekrisov, fixes issue
gitlab 0040953
* Patch from Lipinast Lekrisov to implement setting method-type properties. Fixes issue
gitlab 0040970
Added TRttiIndexedProperty, the whole property handling infrastructure has been significantly redesigned
Fixed TRttiRecordType.ResolveProperties (records do not have a published section)
* fix compilation on systems where SizeOf(CodePointer) <> SizeOf(Pointer): disable ToString for tkMethod on these systems for now
* in the Win64 ABI all const record parameters are passed by reference
* Patch from Евгений Савин to fix missing ansistring conversion in TryCast. Fixes issue
gitlab 0041002
* Patch from Евгений Савин to implement TValue.Cast for floats. Fixes issue
gitlab 0041011
* Delphi-compatible output for tvalue.asstring for float value. Fixes issue
gitlab 0041027
* Fix TValue casts, patch by Евгений Савин, fixes issue
gitlab 0041030
* Add IsType with aEmptyAsAnyType param
* Patch from Евгений Савин to fix TValue.From
. Fixes issue gitlab 0041013
* correct TValue.Cast
, patch by Евгений Савин. Fixes issue gitlab 0041042
* Add overload, needed when specializing in Delphi mode
* Allow assign of pointer to TValue. Patch by Lipinast Lekrisov
* Introduce AsRecord. Patch by Lipinast Lekrisov
* Allow to cast pointer TValue to class pointer. Patch from Lipinast Lekrisov
* TValue.From with buffer and typeinfo. Patch from Lipinast Lekrisov
* Delphi-compatible ToString for TRttiType. Patch from Lipinast Lekrisov
* Introduce AsOrdinal. Patch by Lipinast Lekrisov
* Get method by address. Patch by Lipinast Lekrisov
* Correct TRttiOrdinalType.GetIsOrdinal. Patch from Lipinast Lekrisov
* Introduce IsClassProperty, Index and Default in TRttiProperty. Patch from Lipinast Lekrisov
* Fix compiler warnings and hints
* Introduce TRttiMethodType.GetMethodKind. Patch by Lipinast Lekrisov
* Read/Write static properties. Patch from Lipinast Lekrisov
* Invoke for record methods, refactoring method rtti by Lipinast Lekrisov
* Improvements to TValue.ToString by Lipinast Lekrisov
* Small improvement in setting method prop, by Lipinast Lekrisov
* Forgot to commit, main part of indexed properties implementation by Lipinast Lekrisov
* TValue.Asstring for double
* Small change in indexed property .ToString
* SMall optimization in TRttiInstanceMethod.GetParameters
* GetDataSize is 0 for empty TValue
* GetHasExtendedInfo returns false in TRttiMethod
* optimization of TRttiInstanceType.ResolveExtendedDeclaredProperties
* Extend error message SErrInvokeArgInvalidType
* Fixes after re-running test
* Order of parent/child methods is now same as in delphi documentation
* Correctly set FDeclaredProperties length
* fix compilation on i8086 where depending on the memory type code and data pointers may be different (Note: this does not mean that the code works as the RTTI data generated by the compiler does not seem valid either)
- current Lazarus IDEs can handle generic methods, so no need for NoGenericMethods anymore
+ initial implementation of System.Rtti.Invoke() for WebAssembly. Currently
only works with the internal linker. Not all types have been tested, yet.
* proper handling for boolean results (especially Boolean64 and QWordBool) in System.Rtti.Invoke
* also handle enumeration results and integer result sizes, other than 32-bit in System.Rtti.Invoke for WebAssembly
Fix NaturalCompareText for string = unicodestring.
* Call correct newinstance when overridden. Fixes issue
gitlab 0041090
* Patch from Lipinast Lekrisov to get/set record-typed values. Fixes issue
gitlab 0041129
* Minimal TTimeZone class for Delphi compatibility
Try to solve compilation failure for msdos OS
* Various IsXYZ functions for TValue
Take into account the size of HexText TBytes open array before calling HexToBin overload with PAnsiChar first parameter
Add support for win16 target by introducing USE_WINDOWS_UNIT define, which is set for other Windows OSes
Use USE_WINDOWS_OLE_FUNCTIONS macro to avoid build failure for win16 OS target
Also use USE_WINDOWS_UNIT macro in rtti unit
* ported mechanism from unit activex to deal with ansi/unicode -> widestring conversion.
Targeted at bug
gitlab 0041235
Revert "* ported mechanism from unit activex to deal with ansi/unicode -> widestring conversion."
This reverts commit 1208f4d5b9a5157cf205c71d9244fb9bf41ad15d
* ported mechanism from unit activex to deal with ansi/unicode -> widestring conversion.
* 2nd attempt, now under $IFDEF MSWINDOWS
Set USE_MSWINDOWS_OLE macro on Windows OSes supporting OLE strings, and use it
* Patch from Lacak to add support for densely packed decimal64 format