zah
9960d8eea9
Add a helper for creating open arrays from pointers ( #36 )
...
* Add a helper for creating open arrays from pointers
* doh, toOpenArray is broken in Nim 0.19.0
* Make openarrays from typed pointers
* remove the ptr.toOpenArray seq work-around
2019-02-22 19:51:42 +02:00
Ștefan Talpalaru
d645a88dfe
fix breakage with Nim HEAD
2019-01-05 14:42:21 +02:00
Zahary Karadjov
b11110240f
add pointer distance function
2018-12-18 01:02:16 +02:00
Timothee Cour
f776d57b3e
fixup for backward compat
2018-11-28 02:28:23 +02:00
Timothee Cour
3b8e821b85
cleanup: use UncheckedArray instead of array[0, T]]
2018-11-28 02:28:23 +02:00
Timothee Cour
19645abeaf
fix #30
2018-11-28 02:28:23 +02:00
Zahary Karadjov
f268a02fb8
name the big endian bitrange APIs as a default choice
2018-11-27 13:31:24 +02:00
Zahary Karadjov
543d53ac7e
adds bit manipulations over byte openarrays
2018-11-27 13:31:24 +02:00
Eugene Kabanov
6798d45e5e
Fix shallow for MutRange[T]. ( #29 )
...
* Fix shallow for MutRange[T].
Add shallow for slices of Range[T] and MutRange[T].
Add testing procedure.
Add tests.
* Fix appveyor to use status-im nim compiler.
2018-08-30 13:20:46 +03:00
Eugene Kabanov
6efa5b365a
Workaround for Nim's issue #8044 . ( #27 )
2018-08-27 18:53:34 +03:00
Eugene Kabanov
d49a57f943
Fix MutRange[T] problems. ( #26 )
2018-08-27 17:37:39 +03:00
Eugene Kabanov
49f32c604b
Add seek() operation with tests. ( #25 )
...
* Add seek() operation with tests.
* Workaround for Nim issue with `|`.
* Range length from int32 to int.
seek() got renamed to advance().
Zero advance is allowed.
tryAdvance() is now non-throw version of advance().
* Allow advance() to make zero length ranges.
2018-08-27 15:20:30 +03:00
Yuriy Glukhov
5dab1b35f4
Fixed potential memory corruption, added allocStackArrayNoInit
2018-07-20 13:05:08 +03:00
Timothee Cour
8340969ec2
test toOpenArray and clarify doc to say 0 in cast[ptr array[0, T] is irrelevant
2018-07-19 20:44:09 -07:00
Zahary Karadjov
f6dae4edbc
bugfix: allow the slice operators to return empty ranges
2018-06-23 16:25:33 +03:00
Zahary Karadjov
cf118e240b
add additional APIs for unsafe range construction that will be more searchable in the code
2018-06-21 11:37:29 +03:00
Zahary Karadjov
ba631f7f5d
add a pushFront operation for the bitranges
2018-06-20 21:23:46 +03:00
Zahary Karadjov
580043724c
helpers for manipulating binary formats using bit sequences
2018-06-20 19:45:10 +03:00
andri lim
8ea8a4ff27
fix hash function
2018-06-17 12:46:39 +03:00
andri lim
08478bc225
fix hash function
2018-06-17 12:46:39 +03:00
andri lim
d6b0dad73e
add hash function
2018-06-17 12:46:39 +03:00
Yuriy Glukhov
42c8e730de
Fixes #10
2018-06-15 14:15:00 +03:00
andri lim
af939d8ac4
fix zero length concat
2018-06-12 16:00:45 +07:00
andri lim
39f0a3cd03
fix concat operation
2018-06-08 10:07:47 +07:00
andri lim
c23f4ddf1b
add concat operation
2018-06-07 22:26:08 +07:00
andri lim
d9e93b33a0
add equality operator
2018-06-06 22:53:02 +07:00
cheatfate
efcc9e1910
Fix windows compilation error for alloca.
...
Added MacOS testing.
2018-04-19 23:47:12 +03:00
Yuriy Glukhov
3e3d2d4a2f
Some fixes
2018-04-19 22:00:22 +03:00
Zahary Karadjov
3cc2b9eb5f
more disclaimers and possible future directions
2018-04-19 15:42:02 +03:00
Zahary Karadjov
5145020c30
review changes:
...
* the length is stored as int32
* negative indexing is now supported with arr[^idx]
* toOpenArray supports slicing
* raise operations extracted in procs in order to reduce code bloat
A large disclaimer has been added warning about the possible risks
of using the StackArray type.
2018-04-19 15:42:02 +03:00
Zahary Karadjov
51121411a0
rename ranges/stackarray to stackarrays for consitency
2018-04-19 15:42:02 +03:00
Zahary Karadjov
0fb54a8a9d
Implement helpers for using alloca-based stack arrays
2018-04-19 15:42:02 +03:00
Yuriy Glukhov
991bdb8443
Moved toOpenArray above its usage
2018-04-11 17:24:16 +03:00
Yuriy Glukhov
86037c1d93
Typed ranges
2018-03-26 16:17:22 +03:00
Yuriy Glukhov
eb6e359d93
Some additions
2018-03-14 14:55:28 +02:00
Zahary Karadjov
9ad57df473
obtain mem ranges from strings and sequences
2018-02-16 16:58:46 +02:00
Zahary Karadjov
ee803f088f
pointer arithmetic helpers
2018-02-16 16:39:44 +02:00
Zahary Karadjov
9815d9708f
initial definition of a MemRange type
2018-02-16 16:38:25 +02:00