diff --git a/source/vibe/core/concurrency.d b/source/vibe/core/concurrency.d index 70be177..f6402c5 100644 --- a/source/vibe/core/concurrency.d +++ b/source/vibe/core/concurrency.d @@ -769,7 +769,7 @@ private mixin template isolatedArrayMethods(T, bool mutableRef = true) @property void length(size_t value) pure { m_array.length = value; } - void opCatAssign(T item) pure + void opOpAssign(string op = "~")(T item) pure { static if( isCopyable!T ) m_array ~= item; else { @@ -778,7 +778,7 @@ private mixin template isolatedArrayMethods(T, bool mutableRef = true) } } - void opCatAssign(IsolatedArray!T array) pure + void opOpAssign(string op = "~")(IsolatedArray!T array) pure { static if( isCopyable!T ) m_array ~= array.m_array; else { diff --git a/source/vibe/core/core.d b/source/vibe/core/core.d index ee507a2..543ed2b 100644 --- a/source/vibe/core/core.d +++ b/source/vibe/core/core.d @@ -1145,7 +1145,7 @@ struct Timer { /** Resets the timer to the specified timeout */ void rearm(Duration dur, bool periodic = false) nothrow - in { assert(dur > 0.seconds, "Negative timer duration specified."); } + in { assert(dur >= 0.seconds, "Negative timer duration specified."); } body { m_driver.timers.set(m_id, dur, periodic ? dur : 0.seconds); } /** Resets the timer and avoids any firing. diff --git a/source/vibe/core/stream.d b/source/vibe/core/stream.d index 6a68f87..ab34f6a 100644 --- a/source/vibe/core/stream.d +++ b/source/vibe/core/stream.d @@ -27,12 +27,12 @@ public import eventcore.driver : IOMode; /** Pipes an InputStream directly into this OutputStream. - The number of bytes written is either the whole input stream when `nbytes == 0`, or exactly - `nbytes` for `nbytes > 0`. If the input stream contains less than `nbytes` of data, an - exception is thrown. + The number of bytes written is either the whole input stream when + `nbytes == ulong.max`, or exactly `nbytes` for `nbytes < ulong.max`. If the + input stream contains less than `nbytes` of data, an exception is thrown. Returns: - The actual number of bytes written is returned. If `nbytes` is given + The actual number of bytes written is returned. If `nbytes` is given and not equal to `ulong.max`, íts value will be returned. */ ulong pipe(InputStream, OutputStream)(InputStream source, OutputStream sink, ulong nbytes)