5d145f524c
Add fast memory copy function for x86-64
2017-07-29 10:08:44 +02:00
51ade45108
Add internal routing to convert a number to string
...
Add internal routing to write a number to a char buffer.
2017-07-28 09:08:58 +02:00
3afb40e09e
format.conv: Convert string to a boolean
2017-07-27 08:48:44 +02:00
a9cc135318
format.conv: Add conversion from bool to String
2017-07-26 06:49:33 +02:00
1389b03842
memory: Fix parameter name in the documentation
...
Size parameter for "make" was renamed into n, but the function
description wasn't fixed:
size => n
This commit also removes some redundant variables in "make".
2017-07-25 07:40:14 +02:00
a37c9b162e
container.Set: Reduce duplicated code, add tests
2017-07-22 07:40:58 +02:00
922c8bf7a3
Fix assigning a ByCodeUnit to the String slice
...
std.algorithm.mutation copy is unable to copy a char range into a char array slice.
2017-07-19 07:58:48 +02:00
a1f4d2bc1c
If scheme is invalid, parse everything as path
2017-07-18 23:01:57 +02:00
e5fb95ceb0
Fix #254
...
network.url Range violation.
Add a check after parsing "scheme://" whether only the scheme is available.
2017-07-17 04:57:33 +02:00
42146c5e8a
Fix #259
...
Get rid of std.experimental.
2017-07-15 22:25:29 +02:00
e6b91f70cb
Add style checking
...
A lot of tests are disabled. They should be enabled successively.
2017-07-14 00:05:13 +02:00
657f4a60d5
Fix #246
...
Make allocators pure.
* Methods allocating/deallocating memory are pure.
* Allocator.instance is pure (once initialized, it always returns
the same instance).
* defaultAllocator getter property is pure (should be set at the
beginning, and always return the same instance after that).
2017-07-13 16:01:21 +02:00
839c740cb1
Fix mmap flags on linux
2017-07-12 10:04:48 +02:00
2bd612fd19
Make MmapPool allocations pure
2017-07-12 09:30:07 +02:00
fc53779d3f
Fix #245
...
* Remove postcondition for functions calculating alignment
* Put MmapPool invariant into version (none) block
* Check that alignment doesn't overflow
2017-07-11 10:27:24 +02:00
7bdc778390
Fix inserting 3 byte wchar into String
...
* Fix inserting 3 byte wchar into String
* Improve documentation
2017-07-09 15:16:06 +02:00
4834b36271
Finish DList implementation. Fixes #209
...
* removeBack
* insertAfter
* Diverse fixes of insertion logic
* Internal moveFront and moveBack functions
* Internal makeList function
2017-07-08 15:51:17 +02:00
53df12897b
Add missing methods to DList. Issue #209
2017-07-08 13:44:57 +02:00
4ac890d7d3
Fix #260
...
DList invariant fails.
2017-07-08 05:41:04 +02:00
b79657f0d2
Fix 232
2017-07-06 08:35:16 +02:00
4fd37e84f8
Fix #232 for Array
...
Because const is transitive, if we create a range as Range!(const E)
there is no way to get the original type from inside of the range. So if
E is int*, the original type of const(E) could be const(int)* or int*.
Unqual!(const(int*)) returns const(int)*. So pass the whole container as
template parameter. It is a breaking change but since we have Range and
ConstRange aliases now, the usage should be fine.
2017-07-04 07:24:29 +02:00
e46e45ad5a
Remove previously deprecated modules
...
* tanya.network.uri
* tanya.network.inet
* tanya.memory.types
2017-06-30 04:19:20 +02:00
a6dfb3a19e
Fix DList.opAssign not changing tail
2017-06-28 08:12:58 +02:00
2af0db04bd
Move network.url to net.uri
2017-06-27 13:23:17 +02:00
2c9867c577
Fix generating async docs for different OS
2017-06-25 09:46:02 +02:00
47b394d8c3
Add module documentation. Fix #248
2017-06-24 09:08:19 +02:00
ede0107fd7
Fix #247
...
Assigning RefCounted to RefCounted fails at compile time.
https://issues.caraus.io/issues/247
2017-06-24 02:28:17 +02:00
7d5dda1cba
Add Unique.isInitialized and Unique.release
2017-06-24 00:51:16 +02:00
e5f83c22fa
Add support for enums to format.conv.to. Fix #240
2017-06-23 02:58:46 +02:00
a4de1cc754
toStringz returns a pointer
2017-06-22 11:48:58 +02:00
dfacabd88b
format.conv.to: Convert to/from boolean
2017-06-20 07:07:58 +02:00
ae36296ca6
Add tanya.format.conv.to
...
Function that converts between different types.
This first commit adds only conversion between integral types.
2017-06-18 18:05:50 +02:00
56406fb593
Mark Entropy class as nogc, add linux 64bit unittest
2017-06-17 08:58:44 +02:00
ec9b2db4b9
Add os package#
2017-06-16 21:41:23 +02:00
f5d0c2af8f
Revert "Add unittest for Linux random generator"
...
Doesn't work on 32-bit.
This reverts commit c62dc4063e
.
2017-06-15 11:21:56 +02:00
c62dc4063e
Add unittest for Linux random generator
2017-06-15 11:19:50 +02:00
3789853d98
Fix one Mallocator test
...
Test that if the reallocation fails, the pointer doesn't change.
2017-06-15 10:37:50 +02:00
f0d016bcde
Replace in and immutable with const in allocators
2017-06-15 10:27:12 +02:00
70e96c62b3
Make Unique.get and RefCounted.get return inout
...
Also revert the renaming of Scoped to Unique. And rename the whole
module to memory.smartref.
2017-06-14 22:11:57 +02:00
4b0134713c
Move new network modules into tanya.net package
...
tanya.net will combine tanya.async and tanya.network and provide one API
for blocking and non-blocking socket programming.
2017-06-13 10:42:35 +02:00
8443f1b385
Make test functions nogc
2017-06-11 09:45:33 +02:00
c9050c1a8e
Rename Scoped to Unique. Improve unit tests
...
Renaming to avoid confusing with Phobos Scoped.
2017-06-11 09:41:18 +02:00
bdf87570e2
Add basic unit tests for the event loop
2017-06-11 09:15:10 +02:00
faa44b6704
Remove deprecated tanya.container.vector
2017-06-09 19:27:54 +02:00
278e851414
Rename String.toString to String.get()
...
Last changed it only by the Range and forgotten about the string itself.
2017-06-08 07:59:16 +02:00
4633bcc680
Set: Fix comparing with removed elements
2017-06-07 07:57:22 +02:00
dc39efd316
Add some unit tests for InternetAddress
2017-06-03 15:18:53 +02:00
260937e4fb
Put socket overlapped I/O docs into a D_Ddoc block
2017-06-03 13:20:32 +02:00
bc32511254
Fix template parameters for Set
2017-06-01 22:36:38 +02:00
f30972f948
Add basic constructors and opAssign to Set
2017-06-01 06:26:06 +02:00