Commit Graph

291 Commits

Author SHA1 Message Date
Eugen Wissner 64f2295d1a Fix #276
Add link to the source file for each module.
2017-08-12 17:01:51 +02:00
Eugen Wissner dea0eb9a37 Add function for comparing memory regions
memory.op.cmp.
2017-08-11 22:15:01 +02:00
Eugen Wissner 7c2abadb90 Add memory.op.copyBackward
Added function that can copy memory chunks that can overlap.
2017-08-09 07:01:57 +02:00
Eugen Wissner e6b28468ca Fix typo in the README, remove dmd 2.072 support 2017-08-08 05:59:04 +02:00
Eugen Wissner 2934bb16d7 Rename memory.op.zero into fill
- Rename memory.op.zero to fill, which accepts one template parameter: one
byte to fill the memory with.
- Fix bug on x86_64: RAX (register keeping the value to fill with) isn't set if
the pointer was already aligned.
2017-08-06 06:22:28 +02:00
Eugen Wissner ed92e3993e Add fast function to zero memory 2017-08-02 06:41:54 +02:00
Eugen Wissner 1a4d1238a1 Remove dmd 2.071.2 support 2017-08-01 05:17:57 +02:00
Eugen Wissner 04864559e2 Respect how Windows passes arrays on x86_64
tanya.memory.arch.x86_64:
Linux passes the array length and the data pointer in separate registers.
Windows passes a pointer to the whole array instead (pointer to the
array length practically).
2017-07-31 04:23:21 +02:00
Eugen Wissner 40e43c1465 Add memory.op.copy 2017-07-30 00:08:41 +02:00
Eugen Wissner 5d145f524c Add fast memory copy function for x86-64 2017-07-29 10:08:44 +02:00
Eugen Wissner 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
Eugen Wissner 3afb40e09e format.conv: Convert string to a boolean 2017-07-27 08:48:44 +02:00
Eugen Wissner a9cc135318 format.conv: Add conversion from bool to String 2017-07-26 06:49:33 +02:00
Eugen Wissner 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
Eugen Wissner a37c9b162e container.Set: Reduce duplicated code, add tests 2017-07-22 07:40:58 +02:00
Eugen Wissner cde492c279 Add dmd 2.075.0 support 2017-07-21 05:44:45 +02:00
Eugen Wissner 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
Eugen Wissner a0a28c76f7 Fix CONTRIBUTING.md typos 2017-07-19 07:58:20 +02:00
Eugen Wissner a1f4d2bc1c If scheme is invalid, parse everything as path 2017-07-18 23:01:57 +02:00
Eugen Wissner 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
Eugen Wissner 9ef5986288 Add some style guidelines for contributors 2017-07-16 18:56:48 +02:00
Eugen Wissner 42146c5e8a Fix #259
Get rid of std.experimental.
2017-07-15 22:25:29 +02:00
Eugen Wissner e6b91f70cb Add style checking
A lot of tests are disabled. They should be enabled successively.
2017-07-14 00:05:13 +02:00
Eugen Wissner 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
Eugen Wissner 839c740cb1 Fix mmap flags on linux 2017-07-12 10:04:48 +02:00
Eugen Wissner 2bd612fd19 Make MmapPool allocations pure 2017-07-12 09:30:07 +02:00
Eugen Wissner 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
Eugen Wissner 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
Eugen Wissner 97358ebc6c Ignore tanya-test-library.core (FreeBSD) 2017-07-08 15:54:47 +02:00
Eugen Wissner 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
Eugen Wissner 53df12897b Add missing methods to DList. Issue #209 2017-07-08 13:44:57 +02:00
Eugen Wissner 4ac890d7d3 Fix #260
DList invariant fails.
2017-07-08 05:41:04 +02:00
Eugen Wissner b79657f0d2 Fix 232 2017-07-06 08:35:16 +02:00
Eugen Wissner 9429e7bb14 Refer to net instead of network package in README 2017-07-05 23:11:54 +02:00
Eugen Wissner 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
Eugen Wissner e46e45ad5a Remove previously deprecated modules
* tanya.network.uri
* tanya.network.inet
* tanya.memory.types
2017-06-30 04:19:20 +02:00
Eugen Wissner e79c75df81 Fix typo in README, add CONTRIBUTING.md link 2017-06-29 11:06:40 +02:00
Eugen Wissner a6dfb3a19e Fix DList.opAssign not changing tail 2017-06-28 08:12:58 +02:00
Eugen Wissner 2af0db04bd Move network.url to net.uri 2017-06-27 13:23:17 +02:00
Eugen Wissner 2c9867c577 Fix generating async docs for different OS 2017-06-25 09:46:02 +02:00
Eugen Wissner 47b394d8c3 Add module documentation. Fix #248 2017-06-24 09:08:19 +02:00
Eugen Wissner 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
Eugen Wissner 7d5dda1cba Add Unique.isInitialized and Unique.release 2017-06-24 00:51:16 +02:00
Eugen Wissner e5f83c22fa Add support for enums to format.conv.to. Fix #240 2017-06-23 02:58:46 +02:00
Eugen Wissner a4de1cc754 toStringz returns a pointer 2017-06-22 11:48:58 +02:00
Eugen Wissner 8d3cdb8862 Add "Basic usage" section. Fix #238 2017-06-22 02:56:18 +02:00
Eugen Wissner ba1bd35d4a Finish CONTRIBUTING.md 2017-06-21 15:05:39 +02:00
Eugen Wissner dfacabd88b format.conv.to: Convert to/from boolean 2017-06-20 07:07:58 +02:00
Eugen Wissner aa306d9050 Add contributing information
Only the section with ways to get involved.
2017-06-19 09:13:02 +02:00
Eugen Wissner 10019d7df9 Add No Code of Conduct 2017-06-19 06:11:32 +02:00