Commit Graph

515 Commits

Author SHA1 Message Date
bluss a7b9afaf72 Merge pull request #169 from bluss/gh-actions
Change from travis to github actions
2020-12-08 21:24:00 +01:00
bluss 32623b8209 MAINT: Change from travis to github actions 2020-12-08 21:20:18 +01:00
bluss d5e9acdc00 Merge branch 'master' of https://github.com/bluss/arrayvec 2020-12-08 20:31:42 +01:00
bluss 0acbba4ceb Merge pull request #165 from c410-f3r/try
impl TryFrom<&'a str> for ArrayString
2020-12-01 02:22:36 +01:00
bluss d336f8c5c5 0.5.2 2020-10-23 18:31:24 +02:00
bluss 50c9ed1abd Merge pull request #166 from hbina/use_add_instead_of_offset
Use `add` instead of `offset` so we don't need to cast to isize.
2020-10-23 18:13:41 +02:00
Hanif Bin Ariffin 92867bb118 Use add instead of offset to avoid casting to isize. 2020-10-21 20:50:00 +08:00
bluss fdeed2d09d Merge pull request #161 from fusion-engineering-forks/const-new
Add unstable-const-fn feature to make new() functions const.
2020-10-21 13:11:45 +02:00
Caio 2267276dbb impl TryFrom<&'a str> for ArrayString 2020-08-28 08:16:20 -03:00
Mara Bos fe70c23e94 Add unstable-const-fn feature to make new() functions const. 2020-06-30 20:56:00 +02:00
bluss 4043c58de7 Merge pull request #159 from paulkernfeld/try-from-slice
Implement TryFrom<Slice> for ArrayVec
2020-05-12 21:11:13 +02:00
Paul Kernfeld 675e992741 allow items that implement Clone 2020-05-12 14:57:38 -04:00
Paul Kernfeld 488efd0b3e impl<A: Array> TryFrom<&[A::Item]> for ArrayVec<A>
For issue #106
2020-05-12 12:04:09 -04:00
bluss 04a3559eea FIX: travis link in readme 2020-04-11 18:25:34 +02:00
bluss 491e2ae621 Merge pull request #152 from Luro02/readme
add readme.md and move changelog to a separate file
2020-04-11 18:20:31 +02:00
bluss a3adad7db7 Rename readme.md to README.md 2020-04-11 18:20:09 +02:00
bluss 21b591f939 Rename changelog.md to CHANGELOG.md 2020-04-11 18:19:41 +02:00
bluss 902114f62f Merge pull request #157 from AnderEnder/remove-deprecated-error-description
Remove deprecated Error::description
2020-03-15 21:27:36 +01:00
bluss c61da29426 Merge pull request #156 from RalfJung/miri
enable another unwinding test in Miri
2020-03-15 21:26:04 +01:00
Andrii Radyk 2755d4acb3 remove deprecated Error::description 2020-01-04 00:50:35 +01:00
Ralf Jung b7fd8d6a22 enable another unwinding test in Miri 2019-12-07 12:13:31 +01:00
bluss 4f0faaf027 Merge pull request #155 from RalfJung/miri
Miri now supports catching panics
2019-12-06 11:54:48 +01:00
Ralf Jung 7ae9e2cd1f Miri now supports catching panics 2019-12-06 09:43:14 +01:00
Luro02 3b893b7f6e add readme.md and move changelog to a separate file 2019-11-24 11:50:21 +01:00
bluss badc118d6a Merge pull request #143 from nicbn/is_empty
Add is_empty method for ArrayVec and ArrayString
2019-11-20 18:59:17 +01:00
bluss 481c8ab683 Merge pull request #144 from RalfJung/miri
fix drain_range in Miri and add Miri to CI
2019-11-20 18:57:16 +01:00
bluss 3095e0e4e3 Merge pull request #146 from Phlosioneer/patch-1
Fix outdated comment
2019-11-20 18:56:09 +01:00
Phlosioneer 33d5d2ed96 Fix outdated comment
Comment referenced NoDrop which is no longer used.
2019-11-20 02:03:05 -05:00
Ralf Jung 9ed6941a51 run miri on CI 2019-11-16 09:52:18 +01:00
Ralf Jung 9beb753473 fix aliasing in drain_range 2019-11-16 09:52:18 +01:00
nicbn 633c863b0a Add is_empty method for ArrayVec and ArrayString 2019-11-14 18:58:22 -03:00
bluss fc6664c540 DOC: Fix typo in README 2019-10-09 16:43:40 +02:00
bluss 6905bdbb8a 0.5.1 2019-10-09 16:40:12 +02:00
bluss 618d027f71 Merge pull request #138 from bluss/array-string
Fix ArrayString encode_utf8 to use raw pointers
2019-10-09 12:42:14 +02:00
bluss 090a5c50cb FIX: Support uninitalized data in encode_utf8, and update try_push
We were using &mut [u8] in encode_utf8, but this is not right according
to the developing unsafe coding guidelines. We need to use raw pointers
to write to possibly uninit memory.

We use a raw pointer form for encode_utf8. It was first attempted to
encapsulate the trusted-to-be-valid raw pointer in a simple { *mut u8,
usize } struct, but the current way of passing ptr and len separately
was the only way to not regress performance.

This impl maintains the same performance in arraystring benches.

Add exhaustive-style tests for encode_utf8
2019-10-09 12:23:44 +02:00
bluss f665142854 FEAT: Add ArrayString::len
This method is no new feature, but it saves us from going through deref
to str to fetch the length.
2019-10-09 12:21:25 +02:00
bluss 05667bb860 MAINT: Add debug info to profiles (for bench/profiling) 2019-10-09 12:21:25 +02:00
bluss b7b8cf8777 Merge pull request #137 from bluss/various
Combined fixes: Adjust inlining, and Fix usage of `get_unchecked_mut`.
2019-10-09 10:47:21 +02:00
bluss fd72321191 FIX: Replace uses of <[T]>::get_unchecked_mut with raw pointer accessor
This is a soundness fix w.r.t unsafe coding guidelines.

In some of the instances, `get_unchecked_mut() -> &mut T as *mut T` was
used in places where the element was potentially uninitialized.

This was a problem in push. (Not a problem in IntoIter next/next_back,
where the whole range we're iterating is initialized).
2019-10-09 10:09:07 +02:00
bluss 1483c6d372 FIX: Adjust (mostly remove) inline directives
Using the following principles:

- Trivial methods (empty and simple constants) can be inline(always)
- Generic methods don't need any inlining directive at all.
  ..with the exception of Deref which just seems to be extra important.
- Non-generic items use #[inline] to enable inlining at the
  compiler's discretion.
2019-10-09 10:02:20 +02:00
bluss bf64376f91 API: Deprecate .dispose(), it no longer has a purpose without nodrop 2019-10-09 09:39:49 +02:00
bluss 2a376d966d Merge branch 'nodrop-updates' 2019-10-09 09:34:43 +02:00
bluss c110696a96 nodrop, nodrop-union: Mark deprecated
With the release of arrayvec 0.5, these crates are unused.

With the release of Rust 1.36 and MaybeUninit, these crates have no
purpose (but for older Rust releases).
2019-10-09 09:33:13 +02:00
bluss 58eee6aea5 Merge pull request #136 from tbu-/pr_asptr
Add `as_{,mut_}ptr` functions to `ArrayVec`, mirroring `Vec`
2019-10-05 21:11:11 +02:00
Tobias Bucher 516f1511f6 Add as_{,mut_}ptr functions to ArrayVec, mirroring Vec
Fixes #135.
2019-10-05 21:01:58 +02:00
bluss 8c3634ae9e Merge pull request #133 from mathstuf/target-as-symlink
gitignore: ignore target as a symlink
2019-10-04 21:20:43 +02:00
Ben Boeckel 84b5a04522 gitignore: ignore target as a symlink 2019-10-01 19:16:39 -04:00
bluss 87ad71366c DOC: Update README 2019-09-25 15:15:43 +02:00
bluss ea591bc2de 0.5.0 2019-09-25 15:13:50 +02:00
bluss 70a9ad67af DOC: Copyedit the Array doc comment again 2019-09-25 14:48:16 +02:00