03c40ecace
Fix removing all elements from DList
2018-02-25 18:25:19 +01:00
9c70e9a058
Annotate list unittests
2018-02-25 15:42:32 +01:00
5ae20512af
Fix inserting before/after a range into the string
2018-02-25 12:53:42 +01:00
d30de300d6
Fix slicing a null pointer when deallocating
2018-02-25 11:09:57 +01:00
464a0fecbb
Make math.nbtheory.ln to a template function
2018-02-25 05:38:21 +01:00
af942116e4
Merge remote-tracking branch 'n8sh/getrandom-syscall'
...
Fix #18 .
2018-02-22 05:25:59 +01:00
Nathan Sashihara
7ee4af9e79
Use correct getrandom linux syscall on non-x86_64
2018-02-21 04:49:48 -05:00
Nathan Sashihara
9876d9245c
Implement PlatformEntropySource for macOS, Microsoft Windows, NetBSD, OpenBSD, Solaris
2018-02-21 03:18:52 -05:00
2cda82eeea
Fix handling of misaligned bytes in fill
2018-02-04 07:23:56 +01:00
e9f70853c6
Fix #12
2018-02-02 16:13:55 +01:00
4aaa71a7d0
Format ranges
2018-02-02 14:34:36 +01:00
cbc68c2c43
Implement formatting for enums
2018-02-01 16:29:13 +01:00
048ddf21ff
Replace body with do
2018-01-31 12:05:06 +01:00
b69d737845
Add typeid formatting tests
2018-01-16 17:44:09 +01:00
904451ccaa
Remove moved and deprecated conv module
2018-01-14 19:13:12 +01:00
8db1851c5c
Update dmd to 2.078.0
2018-01-04 05:36:46 +01:00
12de700706
Fix formatting null class references
2017-12-16 09:42:57 +01:00
78a8afdf75
Format stringish ranges
2017-12-15 22:42:18 +01:00
3c996d7c57
Add struct formatting
2017-12-14 19:47:13 +01:00
2a68048fc1
Put real formatting code into a separate function
2017-12-09 10:02:54 +01:00
7fe69ccc5c
format: Aggregate types
2017-12-08 10:56:59 +01:00
26c3532e28
Wrap formatting into printToString
...
printToString gets the output string as argument and can be called
recursive with the same output string to format ranges.
2017-12-03 19:53:06 +01:00
9e16d84f9e
Reintroduce isStruct, isClass and isInterface
...
since they can be useful for generic programming.
2017-11-29 19:53:28 +01:00
7e7bf40f70
Move remaining to methods to tanya.conv
2017-11-29 19:09:58 +01:00
642717883e
Add boolean and null formatting
2017-11-29 18:44:51 +01:00
85be35c5e0
Make floating formatting safe
2017-11-29 07:49:20 +01:00
664298f038
Remove buffer argument from format
2017-11-28 22:11:19 +01:00
c199cdd47c
Merge changes to reals formatting from master
2017-11-28 09:32:20 +01:00
3a24e9e462
Make pointer to string conversion safer
2017-11-27 15:10:17 +01:00
f334e6a1a0
Check format specifier at compile time
2017-11-25 22:29:45 +01:00
72d5760589
Change default pointer format
2017-11-25 19:01:20 +01:00
b28dde9d8e
Remove triplet comma
2017-11-25 17:10:59 +01:00
b612e978bf
format: Add format string tests
2017-11-25 15:24:45 +01:00
02d1d8218b
Port vsprintf
2017-11-25 15:11:43 +01:00
fbf6ec5250
format: Check if the scientific form is to be used
2017-11-25 14:59:27 +01:00
ac317aa9d6
math.min: Drop useless second isFloatingPoint check
2017-11-19 22:37:15 +01:00
10022d158c
Replace aho/ali usage with HP
2017-11-16 19:28:44 +01:00
a38242d0ac
Make real2String more readable
2017-11-16 19:19:18 +01:00
a84c71f26d
Revert usage of "do" instead of "body"
...
And fix GCC build.
2017-11-16 19:15:56 +01:00
7797f0a1fe
format.conv.number2String -> format.integral2String (intern)
2017-11-12 11:57:47 +01:00
4bbc8b510a
conv: Use assertThrown to check ConvException is thrown
2017-11-12 11:44:45 +01:00
87ea1f98dc
Add range primitives that remove several elements
...
- isOutputRange
- popFrontN
- popFrontExactly
- popBackN
- popBackExactly
2017-11-05 07:00:10 +01:00
13407fcf8a
math: Add min/max
2017-11-02 06:00:11 +01:00
e06cc5a071
Fix moveEmplace for static arrays
2017-11-01 14:27:39 +01:00
12fb9ff9f6
Add algorithm.mutation.swap
2017-11-01 13:03:48 +01:00
392cdcf192
Fix moveEmplace not being pure
2017-11-01 12:30:27 +01:00
09b6655b9a
memory.op: Check for valid .ptr and .length
...
typeid(T).initializer can return an array, whose .ptr is null but the
length not. Assert that .ptr and .length are consistent.
2017-11-01 00:01:43 +01:00
7a2768340e
Add algorithm package with move and moveEmplace
2017-10-29 07:51:00 +01:00
414d7a11a8
Add meta.trait.Fields
2017-10-27 20:28:34 +02:00
0d69c7fc79
Make math.mp.Integer pure
2017-10-24 11:50:32 +02:00
d1d55be7c2
Fix lowerHexDigits string
2017-10-18 06:40:22 +02:00
7b21238db7
String: Fix byCodePoint.popFront for multibyte chars
2017-10-14 13:47:16 +02:00
e316631f6e
Add test package
2017-10-12 07:41:35 +02:00
5d6f8e5299
Implement pure onOutOfMemory
2017-10-10 06:59:34 +02:00
87bfd77373
container.string: Add missing postblit
2017-10-08 15:53:29 +02:00
17005e4ac9
Fix isInnerClass for templates, sort unittest attributes
2017-10-06 12:28:14 +02:00
85ad88bc4d
Rename isPolymorphic into isPolymorphicType
2017-10-06 12:06:47 +02:00
211f590caa
Tests and better documentation for memory.stateSize
2017-10-06 07:45:46 +02:00
2f4dd34582
Replace isInterface, isClass, isStruct with isPolymorphic
2017-10-05 07:12:27 +02:00
7e93bcdeeb
meta: Add canFind and isInnerClass
2017-10-04 06:06:26 +02:00
e4cd57a615
math.nbtheory: Implement natural logarithm
2017-10-02 14:55:30 +02:00
74b085b88d
Sort imports
2017-10-01 19:03:42 +02:00
a576c36d02
Replace memcpy/memmove with copy/copyBackward
2017-09-30 08:15:02 +02:00
1056a2984e
Fix #303
...
Allocation schema is displayed incorrectly in HTML.
Add pre-tag for the schema.
2017-09-27 17:56:15 +02:00
faebf3e4d5
Fix #304
...
Replace inline assembly with GAS.
2017-09-26 08:26:12 +02:00
ee48c25328
Replace "Ditto." with "ditto"
...
ddox doesn't recognize "Ditto.".
2017-09-22 04:08:50 +02:00
4612d5eb6d
Add tanya.encoding.ascii
2017-09-21 06:57:49 +02:00
8d3a4860e6
Add memory.op.find for looking for a byte in a memory block
2017-09-20 08:31:54 +02:00
3df6c83376
Move formatting development to the io branch
2017-09-19 15:10:24 +02:00
14f91b6942
Don't import math submodules publically
2017-09-18 12:28:13 +02:00
be551e9349
Add docs and tests for fp classificators
2017-09-18 11:31:37 +02:00
586d12b6c7
Classificators for double extended floating point numbers
2017-09-17 10:30:12 +02:00
27146f7e0c
Add tanya.math.fp
2017-09-16 22:35:31 +02:00
9b54017840
Move all windows specific definitions from network.socket to the sys-package
2017-09-15 10:58:23 +02:00
aabb6334be
Import extern windows fill/copy memory functions
2017-09-14 18:49:13 +02:00
ce425b9ce5
Move simple socket definitions to sys.windows
2017-09-14 07:31:26 +02:00
3e9ca359da
math: Add floating point support to abs
2017-09-13 06:43:49 +02:00
edc3296083
Drop support for dmd 2.073.2, remove deprecations
2017-09-12 06:07:16 +02:00
e8143bd0cc
Fix template constraints style in tanya.math
2017-09-11 06:48:47 +02:00
3eb8618c32
Add range.primitive
2017-09-10 10:35:05 +02:00
3567a6608e
Add generic description for 'meta' package
2017-09-09 11:48:30 +02:00
520bd399a3
Add template-time Set and set-theoretic metafunctions
2017-09-05 05:51:34 +02:00
d38e33593e
Add traits for working with UDAs
2017-09-03 00:00:43 +02:00
34b79ad46e
Update compiler version list in the README
2017-09-02 09:48:28 +02:00
515bf619e8
Add support for dmd 2.076.0
2017-09-01 19:38:44 +02:00
617eaab9a2
tanya.format: Cast lookup array index to size_t
2017-08-30 12:20:42 +02:00
d946b598fd
Add internal sprintf-compatible format function
...
format() has full support for sprintf format but is written completely in D.
It is currently internal, since it is not typesafe and uses GC at one place.
After some work the function can be made public.
2017-08-29 10:38:03 +02:00
e9d7e9eb73
Add documention for newly added metafunctions
...
Docs for:
* ZipWith
* Min
* Max
Unittests for "Instantiate".
2017-08-28 16:07:02 +02:00
4dbfbe9874
Add new metafunctions: Min, Max, ZipWith
...
Documentation follow
2017-08-27 15:32:05 +02:00
25d59ffdda
Remove "static" prefix from metafunctions
2017-08-26 10:37:22 +02:00
2c064eb05b
Add hasElaborate traits
2017-08-25 14:50:15 +02:00
c9a4a2f651
Add "native" configuration and TanyaPhobos version
2017-08-25 00:29:43 +02:00
0e99effaeb
net.inet: Remove htonl/htons based unit tests
2017-08-24 07:45:16 +02:00
0f1e53b4b9
format.conv: Replace loop with copy()
2017-08-22 12:47:13 +02:00
666d59c231
Add traits for checking if class, iface, struct
...
They are useful for compile-time algorithms like Filter, StaticMap and
so on.
2017-08-22 11:12:41 +02:00
ce90b4865b
Make front and popFront for arrays public
...
This commit adds tanya.range.array module which contains functions to make
the arrays act as ranges. These functions don't do any auto-decoding for
strings.
2017-08-21 06:49:02 +02:00
beb5d6963b
Complete tanya.meta.metafunction
2017-08-20 12:29:48 +02:00
a188f8b6e2
Rename traits module to trait
2017-08-19 11:28:08 +02:00
9355c54163
Add metafunctions
2017-08-18 23:38:41 +02:00
e8dd6e3217
Add more traits
2017-08-16 06:45:15 +02:00