Sönke Ludwig
2be696fe01
Add static assertion error message.
2021-01-14 10:43:36 +01:00
Sönke Ludwig
b160f80af6
Avoid instantiating emplace(O) for class instances.
...
Fixes a deprecation warning for ProxyStream.
2020-11-14 09:42:05 +01:00
Sönke Ludwig
3b82d4adca
Fix InterfaceProxy to work with null values.
...
Previously caused crashes and opCast!bool to return true for null instances.
2020-09-18 10:10:26 +02:00
Geod24
9a685523f9
Add support for DMD 2.094 -preview=in switch
...
This will allow users to use -preview=in as soon as it's released.
2020-08-31 06:59:50 +02:00
Geod24
a83b6a75e8
Improve error messages for unimplemented interfaces
...
Using backtips in the message of a static assert means that
the message will get the same syntax highlight as a compiler error message.
2020-08-02 18:25:01 +02:00
Geod24
e51a019d69
Add 'return' annotations to some tests
...
Currently those trigger deprecations messages.
Since they are just used in unittests, it doesn't affect client code.
2020-08-02 17:16:25 +02:00
Geod24
9ae3a2a263
Change a unittest that test for 'in' => 'const' lowering
...
As explained in details in dlang/dmd#11000 and dlang/dmd#11474 ,
'in' has been for a very long time lowered to simply 'const',
or 'scope const' when v2.092.0's '-preview=in' switch is used.
DMD PR 11474 aims to change this, so 'in' is not (visibly)
lowered, and shows up in any user-visible string.
This includes header generation, error messages, and stringof.
Since this code was testing stringof directly, it is affected
by the change. To support testing of both aforementioned DMD PRs,
the change is not tied to a version,
but uses the (soon-to-be) old way as a fallback.
2020-08-02 12:54:58 +02:00
Geod24
9b370b9a87
Remove unused import to enforceEx
...
This function wasn't used anymore, but still imported, despite being deprecated.
It was scheduled to be removed a few releases ago (see dlang/phobos#7545 ).
2020-08-02 12:54:34 +02:00
Sönke Ludwig
41f7357eb5
Merge pull request #188 from Geod24/body-do
...
Replace 'body' with 'do'
2020-04-17 12:10:16 +02:00
Geod24
bccd494072
Replace 'body' with 'do'
2020-04-17 01:29:16 +09:00
Sönke Ludwig
f8c25adf02
Ensure that HashMap with POD types is nothrow.
2020-04-16 09:53:13 +02:00
Sönke Ludwig
d2b777607a
Use normal task priority when handling events.
...
Defining VibeHighEventPriority to revers to the old event scheduling priority.
2020-03-15 10:54:55 +01:00
Sönke Ludwig
8e24c4a204
Correct copyright holder.
...
rejectedsoftware e.K. doesn't exist anymore since mid-2019.
2020-01-27 19:20:52 +01:00
Szabo Bogdan
7f5be316a1
Add a way to enforce that the GC is not running
2019-12-12 10:06:19 +01:00
Sönke Ludwig
2e4bc6a316
Improve performance of sanitizeUTF8/readFileUTF8.
...
Uses std.encoding.sanitize, which returns the original string, if all code points are properly encoded. Note that the performance could still be improved considerably by iterating over multiple bytes at once, fast skipping over characters that don't have the most significant bit set.
2019-10-22 11:40:23 +02:00
JinShil
bb25789132
Replace sizediff_t
with ptrdiff_t
2019-08-31 12:30:50 +09:00
Sönke Ludwig
dee54e505a
Make FixedRingBuffer compatible with non-copyable structs.
2019-01-14 22:15:38 +01:00
Sönke Ludwig
967654f175
Add unit test for postblit behavior of InterfaceProxy.
2018-03-16 18:00:56 +01:00
Sönke Ludwig
eb046e2295
Fix deprecation warnings on DMD 2.079.0.
2018-03-06 20:13:59 +01:00
Sönke Ludwig
ae0b326fbd
Remove noisy log message.
2018-02-22 14:09:20 +01:00
Sönke Ludwig
59b25701ac
Remove DMD 2.070.x compatibility code.
2018-02-14 13:10:34 +01:00
Sebastian Wilzbach
0eed0fe8b7
Use the stable stdx-allocator DUB package
2017-12-03 20:38:07 +01:00
Boris-Barboris
6634cbc645
switch to asyncAwait
2017-11-25 15:27:17 +01:00
Sönke Ludwig
fc89257afd
Fixup for c95306245f
.
2017-10-31 23:04:13 +01:00
Sönke Ludwig
c95306245f
Improve InterfaceProxy(Class).
...
- InterfaceProxyClass can now be allocated/freed using a custom allocator
- Non-copyable values can be moved into an InterfaceProxyClass instance
- Non-copyable values can be moved into an InterfaceProxy
2017-10-30 23:01:22 +01:00
Sönke Ludwig
b68d23f515
Add opCast(bool) to FreeListRef and remove opAssign with value type.
2017-10-30 22:58:30 +01:00
Sönke Ludwig
ecd981b1e1
Fix compile error in internal API.
2017-10-30 22:56:19 +01:00
Sönke Ludwig
72540d7eaf
Work around DigitalMars/optlink#18 .
2017-09-27 17:43:08 +02:00
Sönke Ludwig
9fe9783443
Convert Waitable from struct to pure template to avoid heap closures.
...
Also fixes a case where ThreadLocalWaiter.emitSingle overlaps a call to .emit.
2017-09-27 16:41:11 +02:00
Sönke Ludwig
e32d818873
Add CircularDList.insertAfter.
2017-09-27 16:41:11 +02:00
Sönke Ludwig
a60828d6da
Mark more classes as final.
2017-07-23 15:04:11 +02:00
Sönke Ludwig
536fa09780
Add helper module with intrusive singly and doubly linked lists.
2017-07-20 13:34:39 +02:00
Sönke Ludwig
cfb4f83113
Add makeGCSafe/disposeGCSafe as GC safe variants of make/dispose.
...
If necessary, these will call GC.addRange/GC.removeRange to avoid dangling GC references.
2017-07-20 13:34:12 +02:00
Sönke Ludwig
7f050af455
Merge pull request #21 from wilzbach/trailing-whitespace
...
Remove all trailing whitespace + add check
2017-07-19 09:20:19 +02:00
Sönke Ludwig
3d1175e821
Fix InterfaceProxy when used with class instances.
2017-07-19 00:10:39 +02:00
Sebastian Wilzbach
8f89733a86
Remove all trailing whitespace
...
sed 's/[ \t]*$//' -i **/*.d
2017-07-03 12:19:27 +02:00
Sönke Ludwig
58ee4a8839
Use a thread local allocator instead of processAllocator in HashMap.
...
This is required since processAllocator returns an ISharedAlloactor since 2.075.0. Because HashMap is operating only thread-local, this should generally be safe.
2017-06-28 17:22:13 +02:00
Sönke Ludwig
6f78310f26
Use scope parameters for FixedRingBuffer as appropriate.
2017-02-22 19:51:15 +01:00
Sönke Ludwig
02e00944f6
Fix possible range violation in BatchBuffer.popFront(N).
2017-01-30 17:27:17 +01:00
Sönke Ludwig
3a3eb73006
Fix InterfaceProxy when used with class instances.
2017-01-27 00:51:22 +01:00
Sönke Ludwig
822dcccf34
Add interfaceProxy function to allow for better vibe:core compatibility.
2017-01-26 23:53:18 +01:00
Sönke Ludwig
8985923e4d
Let InterfaceProxy handle parameter storage classes properly.
2017-01-25 22:40:07 +01:00
Sönke Ludwig
9d4e8086ff
Make the callback type the first argument to Waitable!().
2017-01-16 00:23:37 +01:00
Sönke Ludwig
964d72f3b5
Fix handling of scoped callback parameters in eventcore callbacks.
2017-01-16 00:20:35 +01:00
Sönke Ludwig
32d360baac
Add callback based result retrieval for asyncAwaitAny.
...
This can be used to safely retrieve scoped data.
2017-01-15 23:55:37 +01:00
Sönke Ludwig
f015662a94
TCPConnection and async improvements.
...
- asyncAwaitAny now takes the callback type, so that parameter storage classes are handled correctly
- Implement TCPConnection.remoteAddress/localAddress
- Implement TCPConnection.tcpNoDelay, keepAlive and readTimeout
- Implement timeout handling for TCPConnection.waitForData
2017-01-15 20:59:36 +01:00
Sönke Ludwig
35a94412d0
Make FileStream small enough to fit into an InterfaceProxy.
2016-12-26 21:28:36 +01:00
Sönke Ludwig
09d9ea47bf
Fix InterfaceProxy to not explicitly destroy contained class instances.
...
This lead to double-destruction in case an InterfaceProxy was copied.
2016-12-10 14:21:57 +01:00
Sönke Ludwig
81b7010724
Fix some safety annotation issues.
2016-11-10 12:19:39 +01:00
Sönke Ludwig
ccbd6a063f
Fix FreeListRef related issues.
2016-11-10 12:01:35 +01:00