Mattias Gaertner
663ac37c1c
fcl-passrc: parser: dot after true,false,char,string
...
git-svn-id: trunk@41275 -
2019-02-10 09:59:04 +00:00
marco
a387e0b9bb
* add reg_qword. Feedback on #35050
...
git-svn-id: trunk@41274 -
2019-02-10 09:20:54 +00:00
Mattias Gaertner
e98d7f2a86
pastojs: type helper: arg/var/const/result
...
git-svn-id: trunk@41273 -
2019-02-10 00:24:23 +00:00
Mattias Gaertner
cb1a53c680
fcl-passrc: resolver: error on record helper for byte in mode objfpc
...
git-svn-id: trunk@41272 -
2019-02-10 00:22:18 +00:00
michael
3779d69075
* libmagic headers by Silvio Clecio
...
git-svn-id: trunk@41271 -
2019-02-09 19:57:11 +00:00
michael
76f577ccbf
* Added switch so the server can act as simple file server
...
git-svn-id: trunk@41270 -
2019-02-09 18:33:39 +00:00
marco
d6b39276bb
* makerop to dword mantis #34712
...
git-svn-id: trunk@41269 -
2019-02-09 17:53:05 +00:00
marco
93fcce4ba1
* tohexstring calls inttohex instead of hexstr. Hexstr has fixed number of
...
digits, inttohex a minimum number. Mantis #35015
git-svn-id: trunk@41268 -
2019-02-09 17:12:20 +00:00
marco
8b956a580e
* commit 64-bit type support to fcl-register, patch by CCRDude, mantis #34875
...
git-svn-id: trunk@41267 -
2019-02-09 13:57:19 +00:00
marco
46aa5f2712
* _S_ and _E_ first and last were already there, just in an unexpected winerror. Found after testing ->revert all but the last line.
...
git-svn-id: trunk@41266 -
2019-02-09 13:41:22 +00:00
marco
ec87ab2870
* some _E_ and _S_ constants from winerror.h used in activex patch.
...
git-svn-id: trunk@41265 -
2019-02-09 13:34:52 +00:00
marco
be62b0ced0
* regcls constants from MSDN
...
git-svn-id: trunk@41264 -
2019-02-09 13:29:14 +00:00
marco
86168dfdd1
* Patch from Serge Anvarov with missing strutils aliases. Mantis #35047
...
git-svn-id: trunk@41263 -
2019-02-09 12:31:15 +00:00
marco
3a6d0d9d41
* flashwindowex, mantis #35048 , patch by 440bx
...
git-svn-id: trunk@41262 -
2019-02-09 12:07:30 +00:00
Mattias Gaertner
c617546fcd
pastojs: record helper constructor
...
git-svn-id: trunk@41259 -
2019-02-08 17:52:42 +00:00
nickysn
b0ca862f32
+ implemented IntroSort (hybrid between QuickSort and HeapSort) in unit SortAlgs
...
git-svn-id: trunk@41258 -
2019-02-08 15:34:29 +00:00
Mattias Gaertner
e290e24c06
pastojs: helper: for in class helper
...
git-svn-id: trunk@41257 -
2019-02-08 14:52:16 +00:00
Mattias Gaertner
fcc78d311b
pastojs: helper: class property with static class method
...
git-svn-id: trunk@41256 -
2019-02-08 13:07:16 +00:00
Mattias Gaertner
67dd6b5bf3
fcl-passrc: resolver: option to allow class property with non static getter/setter
...
git-svn-id: trunk@41255 -
2019-02-08 13:07:02 +00:00
marco
6ec527df23
* add IDANI_CAPTION, mantis #35042
...
git-svn-id: trunk@41254 -
2019-02-08 10:25:30 +00:00
marco
76bb5d1a22
* add loadlibraryex flags, mantis #35041
...
git-svn-id: trunk@41253 -
2019-02-08 10:18:52 +00:00
Mattias Gaertner
15ec036a69
pastojs: helper: default array property
...
git-svn-id: trunk@41252 -
2019-02-08 10:10:30 +00:00
Mattias Gaertner
9a06e90b47
pastojs: helper: array property
...
git-svn-id: trunk@41251 -
2019-02-08 09:15:28 +00:00
nickysn
ff90e7622a
+ added .Sort overloads, that specify an algorithm and use the sortbase defined
...
algorithms for sorting TList, TFPList and TStringList when FPC_TESTGENERICS is
defined as well. Unfortunately, I couldn't test it, because the RTL doesn't
compile with FPC_TESTGENERICS, due to errors, completely unrelated to the
sortbase changes.
git-svn-id: trunk@41248 -
2019-02-07 15:45:13 +00:00
nickysn
8b17af1f89
+ added test for unit sortalgs, that tests the heapsort and randomized quicksort algorithms
...
git-svn-id: trunk@41247 -
2019-02-07 14:41:33 +00:00
Mattias Gaertner
46462a01ed
pastojs: property getter/setter in helper
...
git-svn-id: trunk@41246 -
2019-02-07 12:29:28 +00:00
pierre
4d8dcfc42e
Fix compilation on targets without Random: add $ifdef FPC_HAS_FEATURE_RANDOM
...
git-svn-id: trunk@41245 -
2019-02-07 10:46:41 +00:00
Mattias Gaertner
fce57c5528
pastojs: helper inherited
...
git-svn-id: trunk@41244 -
2019-02-06 22:10:33 +00:00
Jonas Maebe
3b87b10904
* explicitly link libobjc to prevent the symbol __objc_empty_cache from
...
resolving to CoreFoundation on macOS 10.14 (which will break running
such programs on older macOS/(Mac) OS X versions)
git-svn-id: trunk@41243 -
2019-02-06 19:48:47 +00:00
nickysn
1c64f4c751
* some formatting changes to avoid very large lines in the source code
...
git-svn-id: trunk@41242 -
2019-02-06 18:26:05 +00:00
nickysn
00a67caa40
* select the middle element in the default quicksort implementation in a way
...
that doesn't generate arithmetic overflow for very large arrays
git-svn-id: trunk@41241 -
2019-02-06 18:05:48 +00:00
pierre
e467d2387d
Add sortbase unit to global units list, as it can be compiled for all CPUs
...
git-svn-id: trunk@41240 -
2019-02-06 15:51:54 +00:00
Mattias Gaertner
3e7c53a3bb
pastojs: class helper: constructor
...
git-svn-id: trunk@41239 -
2019-02-06 15:20:59 +00:00
Mattias Gaertner
c657042f0f
fcl-passrc: adv record: allow static only for class procedure/function
...
git-svn-id: trunk@41238 -
2019-02-06 15:20:35 +00:00
nickysn
52b4fc039c
+ added randomized quicksort to unit sortalgs
...
git-svn-id: trunk@41237 -
2019-02-06 14:20:40 +00:00
nickysn
f4718831ca
* fixed quicksort comment about memory use - our implementation uses O(log n) stack, not O(n log n)
...
git-svn-id: trunk@41236 -
2019-02-06 12:22:08 +00:00
Mattias Gaertner
4d8ae767f7
pastojs: proc ref of helper method
...
git-svn-id: trunk@41235 -
2019-02-06 10:16:03 +00:00
Mattias Gaertner
75bf1e4291
fcl-passrc: resolver: added GetSelfScope
...
git-svn-id: trunk@41234 -
2019-02-06 10:15:31 +00:00
nickysn
c728a1204a
+ added additional notes in the comments for HeapSort
...
git-svn-id: trunk@41233 -
2019-02-05 18:25:27 +00:00
nickysn
f32748a8e7
+ added comment with information about QuickSort and its specific implementation in unit SortBase
...
git-svn-id: trunk@41232 -
2019-02-05 18:02:48 +00:00
nickysn
eca60a0a89
* partition elements equal to the pivot on both sides of the pivot, since that
...
leads to much better performance when sorting lots of repeating elements
git-svn-id: trunk@41231 -
2019-02-05 17:32:28 +00:00
nickysn
bea9961d2d
* use SizeUInt instead of longint for the array indices in the quicksort
...
implementations. This:
1) allows sorting arrays with >4G elements on 64-bit systems
2) allows sorting arrays with up to 4G (>2G) elements on 32-bit systems
3) uses 16-bit instead of the less efficient 32-bit indices on 16-bit and
8-bit platforms
git-svn-id: trunk@41230 -
2019-02-05 16:20:56 +00:00
nickysn
f5f25f7ae6
* use a more robust QuickSort implementation, that is guaranteed to never loop
...
forever and never access index out of bounds elements from the array when
being passed an incorrect comparison function. The resulting sort order is
still undefined in this case, though.
git-svn-id: trunk@41229 -
2019-02-05 16:00:42 +00:00
nickysn
de80621e1e
* use a try..finally block to protect against memory leaks if the comparison
...
callback function raises an exception in QuickSort_ItemList_Context
git-svn-id: trunk@41228 -
2019-02-05 12:14:09 +00:00
joost
e5492d8992
* Fixed version-number without build-number, bug #29055
...
git-svn-id: trunk@41226 -
2019-02-04 21:36:36 +00:00
Mattias Gaertner
9a878f99db
fcl-passrc: fixed parsing (expr).name()
...
git-svn-id: trunk@41225 -
2019-02-04 16:49:07 +00:00
Mattias Gaertner
bf1af93938
pastojs: typecast string(unicodestring), unicodestring(string)
...
git-svn-id: trunk@41224 -
2019-02-04 16:02:42 +00:00
Mattias Gaertner
cfe65c8cd8
fcl-passrc: resolver: typecast string(unicodestring), unicodestring(string)
...
git-svn-id: trunk@41223 -
2019-02-04 16:02:28 +00:00
nickysn
26486bbaea
+ keep track of the pivot index in all quicksort implementations. No functional changes,
...
but will be used to prevent overlap in the divided subregions and also infinite loops
in case of an incorrect compare function.
git-svn-id: trunk@41222 -
2019-02-04 15:32:41 +00:00
Mattias Gaertner
b47c58dddc
fcl-passrc: fixed case of widechar
...
git-svn-id: trunk@41221 -
2019-02-04 15:08:50 +00:00