bluss
97df44aa2a
Update Makefile for deps
2016-01-13 13:11:55 +01:00
bluss
6c71597565
Bump to 0.3.13
2016-01-13 13:10:36 +01:00
bluss
8a5efd1ddb
Merge pull request #19 from bluss/dispose-and-more
...
Dispose and more
2016-01-13 13:07:42 +01:00
bluss
c9b17628bf
Test on older rust releases in travis
2016-01-13 13:06:32 +01:00
bluss
62d372ce1f
Add DerefMut for ArrayString
2016-01-13 13:01:13 +01:00
bluss
2046e3f726
Add method CapacityError::simplify
...
This is needed so that CapacityError<&str> isn't prohibitively difficult
to use. It converts to CapacityError<()>.
2016-01-13 12:55:29 +01:00
bluss
d991c17a25
ArrayString::push_str: Write capacity check in safer style
...
Use an arithmetic overflow safe conditional.
2015-12-29 12:12:42 +01:00
bluss
440bcbf66b
Add ArrayVec::dispose()
2015-12-29 12:12:42 +01:00
bluss
455b28fd61
Merge pull request #18 from bluss/needs-drop
...
nodrop: Add feature flag use_needs_drop; Tag version 0.1.5
2015-12-14 04:27:05 +01:00
bluss
e929801c7e
Update travis.yml to only build master branch
2015-12-14 04:22:58 +01:00
bluss
2d55a2d507
nodrop: Add feature flag use_needs_drop; Tag version 0.1.5
2015-12-14 04:21:44 +01:00
bluss
1921048acd
Bump version
2015-09-20 16:07:54 +02:00
bluss
76205447ad
Merge pull request #15 from bluss/error-trait
...
Implement Error trait for CapacityError
2015-09-20 13:36:55 +02:00
bluss
c73d5fa203
Implement Error trait for CapacityError
2015-09-20 13:02:08 +02:00
bluss
d833e2c56d
Merge pull request #14 from bluss/arraystring
...
Arraystring
2015-09-20 12:49:39 +02:00
bluss
7b47f1e891
Use no public fields for CapacityError
2015-09-18 01:00:55 +02:00
bluss
90de29e6cb
Remove zero from the Index trait
2015-09-18 00:53:19 +02:00
bluss
6af588cb2c
ArrayString: Add PartialEq, Eq, Hash, and tests
2015-09-18 00:52:17 +02:00
bluss
fcd7b28124
Merge pull request #13 from tbu-/pr_arraystring
...
Add `ArrayString`, which is to `ArrayVec` what `String` is to `Vec`
2015-09-18 00:38:00 +02:00
Tobias Bucher
6a8fdfdedb
Make push and push_str return Results
...
The error type is called `CapacityError` and lets you extract the pushed
element.
2015-09-13 12:52:16 +01:00
bluss
10aa8245d8
ArrayString: Make Copy, don't use ArrayVec
2015-09-12 14:36:53 +02:00
Tobias Bucher
078dbf4b15
Move ArrayVec back into the main file
2015-09-12 13:22:30 +01:00
Tobias Bucher
4977da3502
Add ArrayString, which is to ArrayVec what String is to Vec
2015-09-11 14:45:09 +01:00
bluss
5a0e53257c
Bump version
2015-09-10 19:52:06 +02:00
bluss
def1be54ed
Add test for Write
2015-09-10 19:49:37 +02:00
bluss
81b5bd32c0
Merge pull request #12 from tbu-/pr_write
...
Add `io::Write` implementation akin to `Vec`
2015-09-10 19:47:53 +02:00
Tobias Bucher
98b1370e46
Add io::Write implementation akin to Vec
2015-09-10 18:35:30 +01:00
bluss
c3f2866bd3
Complete PartialOrd implementation
...
PartialOrd partialness requires all methods to be overridden to provide
consistent quirkyness with floats.
2015-09-10 15:13:26 +02:00
bluss
5b29055b5a
cleanup in insert
2015-09-10 15:10:04 +02:00
bluss
6bd31617b6
Remove redundant local
2015-09-10 15:10:04 +02:00
bluss
d2397e03ef
Merge pull request #11 from tbu-/pr_ord
...
Add `PartialOrd` and `Ord` implementation for `ArrayVec`
2015-09-10 15:09:06 +02:00
Tobias Bucher
1737a24e0d
Add PartialOrd and Ord implementation for ArrayVec
2015-09-10 13:51:47 +01:00
bluss
876c7c049b
Merge pull request #10 from tbu-/pr_default
...
Add `Default` implementation for `ArrayVec`
2015-09-10 14:32:20 +02:00
Tobias Bucher
32832aa0f2
Add Default implementation for ArrayVec
2015-09-10 13:04:30 +01:00
bluss
9afff02a69
Update doc style
...
Remove all headings in method docs
2015-08-21 15:32:55 +02:00
bluss
eaa884087d
Bump version
2015-08-21 14:58:24 +02:00
bluss
20500c5c6c
Merge pull request #6 from bluss/nodrop-restored
...
Use NoDrop to fix panic safety issues
2015-08-21 14:56:17 +02:00
bluss
ee3d164895
Update doc generation for having nodrop as a dependency
2015-08-21 14:54:33 +02:00
bluss
c35760e02c
Use NoDrop to fix panic safety issues
...
ArrayVec::drop was not panic safe — if there would be a panic during an
element's drop, the discriminant would never be set to Dropped, and the
array elements would potentially double drop.
Fix this by going back to the old NoDrop composition. The NoDrop struct
thas its own Drop impl, that will trigger too on panic during an element's
drop. This serves to make ArrayVec::drop panic safe.
Also tweak IntoIter::drop to make it panic safe: set inner ArrayVec's
length before dropping any elements.
Thank you to @Stebalien for reporting this bug and providing the
excellent testcases in this commit.
Using NoDrop expands ArrayVec to have two drop flags again, but this
is a temporary tradeoff, drop flags will eventually go away.
Fixes #3
2015-08-20 22:33:01 +02:00
bluss
804fb9692a
Add cargo test --release to the travis run
2015-08-20 22:26:49 +02:00
root
b6d4d82808
arrayvec: Bump version
2015-07-30 16:52:55 +02:00
root
9e4bac559c
arrayvec: Make nodrop purely a dev-dependency
...
We generate docs for it, but we don't need it.
2015-07-30 16:51:07 +02:00
root
d4612de8f4
Add custom.css for docs
2015-07-30 16:49:57 +02:00
bluss
235320e393
Merge pull request #1 from bluss/nodrop
...
Nodrop
2015-07-30 16:19:57 +02:00
root
d3728b654e
Bump version
2015-07-30 16:16:42 +02:00
root
cf273fec1f
Use a non-dropping enum directly
...
Don't use NoDrop as a separate abstraction: Then we have two drop flags,
one for ArrayVec and one for NoDrop. Instead import the logic from
NoDrop. The result is a much smaller ArrayVec value.
2015-07-30 16:14:04 +02:00
root
3634fa4633
Bump version
2015-06-22 16:39:52 +02:00
root
5c50c4dbc7
Add method .into_inner()
2015-06-22 16:35:21 +02:00
root
66d5d9a12e
Expose ArrayVec::set_len as a pub unsafe method
2015-06-22 00:17:23 +02:00
root
5ae6e1aadc
arrayvec: Use odds 0.2 and bump version
2015-06-14 14:53:05 +02:00