Commit Graph

474 Commits

Author SHA1 Message Date
Niklas Fiekas 12eee0677c Debug assert capacity in push_unchecked() 2017-05-24 21:16:27 +02:00
Niklas Fiekas 1b6e0a3bfb Use push_unchecked() for Extend 2017-05-13 23:51:17 +02:00
Niklas Fiekas d0ebfcd51f Factor out push_unchecked() 2017-05-13 23:51:17 +02:00
bluss adf08656cc Merge pull request #51 from tbu-/pr_arraystring_ord
Add `PartialOrd` and `Ord` implementation to `ArrayString`
2017-04-22 18:27:44 +02:00
Tobias Bucher 0c8f46796e Add PartialOrd and Ord implementation to ArrayString
Fixes #50.
2017-04-22 16:31:41 +02:00
bluss d3c105563a Add 0.3 branch to .travis 2017-03-25 15:20:44 +01:00
bluss 7721eff0d3 Merge pull request #49 from bluss/next-1
Prepare for next major version (Part 1)
2017-03-24 18:41:23 +00:00
bluss f65ea92da4 Remove the optional generic-array feature
- It can be added back later if needed
- A public dependency implies version coupling, and we can't afford to
  have it for a niche use case.
2017-03-24 18:57:39 +01:00
bluss e6c090de88 New minimum Rust version 2017-03-24 18:50:57 +01:00
Tobias Bucher 49c69d440e Ignore Cargo.lock in Git
This is a library project and should not check in its `Cargo.lock`.
Being in the `.gitignore` file helps achieve that.

http://doc.crates.io/faq.html#why-do-binaries-have-cargolock-in-version-control-but-not-libraries
2017-03-18 13:40:35 +01:00
bluss 738721a28d arrayvec 0.3.21 2017-03-17 18:50:36 +01:00
bluss 805f28f0d7 nodrop 0.1.9 2017-02-23 20:34:49 +01:00
bluss 5bbda855e1 Merge pull request #44 from bluss/next
Use u8 field in the NoDrop Dropped variant
2017-02-23 19:34:20 +00:00
bluss 34459766c2 Use u8 field in the NoDrop Dropped variant
We need to ensure NoDrop<&T> and similar are not using the enum layout
optimization. Using an enum { Alive(T), Dropped(u8) } is a simple way to
do that. The NoDrop (non-unions version) was already always at least
1 byte large anyway.
2017-02-23 20:19:11 +01:00
bluss da459bcf78 Add constructor ArrayString::from_byte_string(b"abc")
This is an alternative constructor that never has capacity errors.
Unfortunately the error case is invalid UTF-8!
2016-12-14 15:01:17 +01:00
bluss 3d69403dee Use encode_utf8 from crate odds 2016-10-16 11:54:44 +02:00
bluss d43c959fa8 0.3.20 2016-10-04 14:47:14 +02:00
bluss 7a7ec178b9 Fix ArrayString to implement .push(char) faster
Previously we used formatting, which is a virtual call and quite the
detour. Now copy the utf-8 encoding code from Rust (thank you Alex
Crichton) and use that.
2016-10-04 14:40:33 +02:00
bluss f331bb1228 0.3.19 2016-09-28 11:13:15 +02:00
bluss 3d2dcb4252 Merge pull request #41 from bluss/generic-array
Support generic-array as arrayvec backend
2016-09-28 11:10:32 +02:00
bluss 60a97632bc Support generic-array as arrayvec backend 2016-09-28 11:06:20 +02:00
bluss 82ab295554 0.3.18 2016-09-21 14:25:24 +02:00
bluss b1369460e3 Merge pull request #39 from bluss/insert
Fix bounds checking in ArrayVec::insert(index, element)
2016-09-21 14:25:17 +02:00
bluss 2a1378d3eb Fix bounds checking in ArrayVec::insert(index, element)
Must be `index <= len && index < capacity`
2016-09-21 14:21:07 +02:00
bluss d86f06b068 Change the doc generation script 2016-09-08 11:51:11 +02:00
bluss 03683a1aae Merge pull request #37 from bluss/next
Next versions
2016-09-08 11:46:50 +02:00
bluss 0c21d04a75 test use_union in travis 2016-09-08 11:46:26 +02:00
bluss 8785860ec4 arrayvec 0.3.17 2016-09-08 11:46:01 +02:00
bluss c2f6156b42 nodrop-union 0.1.9 2016-09-08 11:46:01 +02:00
bluss a91f077e8f nodrop-union: Update docs 2016-09-08 11:46:01 +02:00
bluss d4dfdea785 nodrop-union: Implement Copy, Clone on NoDrop<T>
Clone is not so important, but Copy is, since it's structural when
implemented, and adding the trait allows more versatile use of
NoDrop<T>.

Only the untagged unions version can implement Copy for NoDrop<T>, since
it truly has no destructor.
2016-09-08 11:46:01 +02:00
bluss 0327b0c164 nodrop: Fix warning for unused import 2016-09-06 19:20:14 +02:00
bluss e9746bab80 nodrop and nodrop-union 0.1.8 2016-09-06 11:47:20 +02:00
bluss 0fdb35baaf Merge pull request #36 from bluss/union
nodrop: Add nightly feature use_union
2016-09-06 11:46:10 +02:00
bluss 57348a2677 nodrop: Add nightly feature use_union
Use a separate crate (nodrop-union) so that we can conditionally use the
new union keyword without disrupting compatibility.
2016-09-06 11:41:47 +02:00
bluss ddd09cf04d Merge pull request #35 from shepmaster/is_full
Add is_full predicate methods
2016-08-26 12:26:10 +02:00
bluss db3cc4ebf5 rm no_drop_flag in travis config too 2016-08-25 18:22:28 +02:00
bluss 5df5ee1847 nodrop: 0.1.7 2016-08-25 18:07:02 +02:00
bluss af8f6b5d6e nodrop: Remove the no_drop_flag crate feature
This unstable feature is not supported in nightly anymore (and nor is it
meaningful).
2016-08-25 16:21:57 +02:00
Jake Goulding b0bf84b201 Add is_full predicate methods 2016-05-28 10:03:54 -04:00
bluss a41ecc0a29 Bump arrayvec to 0.3.16 2016-03-01 00:06:45 +01:00
bluss ab2d441153 Merge pull request #31 from bluss/as-slice
Add .as_slice(), .as_mut_slice(), .as_str()
2016-03-01 00:04:32 +01:00
bluss 8d30739409 Add .as_slice(), .as_mut_slice(), .as_str()
Vec and String now have these, so we do too to follow convention.
2016-02-29 23:53:52 +01:00
bluss cb2c2708c3 Merge pull request #30 from bluss/retain-plus
Add .retain()
2016-02-18 00:45:24 +01:00
bluss c5589aecdf Add .retain() method
Based on "retain_mut" as discussed for vec: we can provide &mut to the
element to remove effortlessly.
2016-02-18 00:34:40 +01:00
bluss 49be63d9b8 arrayvec: Reorder method pop 2016-02-17 23:08:46 +01:00
bluss 07b2ca2e1f Edit docs for methods returning Result 2016-02-17 23:08:46 +01:00
bluss 7504f0e1a4 Fix: Display is in libcore 2016-02-07 18:48:48 +01:00
bluss dfa7431c88 Add to readme: Requires Rust 1.2 2016-02-06 21:28:52 +01:00
bluss f9defd2fe0 Bump arrayvec to 0.3.15
Fixes #20
2016-02-06 20:24:24 +01:00