gnzlbg
9f57879028
fix undefined behavior in DerefMut of ArrayString
2018-08-31 22:43:05 +02:00
bluss
a2e3fcea3f
DOC: Minor fixes in docs, for ' → ’
2017-10-27 22:54:46 +02:00
bluss
456aeaf557
FEAT: Remove odds dependency in arrayvec
...
Copy the encode_utf8 function from odds. std encode_utf8 requires Rust
1.15 and has a different signature, this one seems to fit us better.
2017-10-27 22:31:49 +02:00
bluss
895d450366
DOC: Promise debug assertions for unsafe methods
...
Instead of being vague about it, we can promise it.
We continue to be a bit vague in ArrayString::set_len. I don't see how
to add a char boundary check in ArrayString::set_len unfortunately.
It's a tricky issue, checking char boundaries requires reading the
memory of the string, and we don't even know if the user of set_len has
initialized that area of memory yet (but they hopefully did).
2017-10-26 19:27:47 +02:00
Richard McCormack
187dd627e0
Add pop, truncate, and remove functions to ArrayString. Addresses #66
2017-10-26 12:57:14 -04:00
bluss
ace20a9f43
DOC: Add docs for default values
2017-10-16 22:45:27 +02:00
bluss
9825e58061
FEAT: Add CapacityError::new
2017-09-24 18:07:12 +02:00
Tobias Bucher
9d0f801763
Add Default implementation for ArrayString
...
Fixes #67 .
2017-09-11 19:59:06 +02:00
bluss
80d54a12ac
DOC: Update ArrayString doc for push, push_str after 0.4 changes.
2017-09-11 19:44:15 +02:00
bluss
f33c4e44dd
DOC: Mention serde-1 feature
2017-09-11 19:43:54 +02:00
bluss
54457c7db9
DOC: Fix ArrayString docs for push/push_str
2017-08-08 21:07:02 +02:00
bluss
bc9e0362bd
FEAT: Remove InsertError again
...
try_insert has a capacity error, but panics if the index is out of
bounds.
2017-08-05 17:40:12 +02:00
bluss
1e83039426
FEAT: Align ArrayString .push and .push_str with String
...
Use same signatures (meaning: panics on errors). Add fallible versions
.try_push() and .try_push_str()
2017-07-30 15:38:42 +02:00
David Ross
704f237282
Remove ambiguities in serde expecting messages.
2017-06-14 21:55:57 -07:00
David Ross
1b0168bb6f
Change feature name from 'serde' to 'serde-1'.
2017-06-08 12:02:21 -07:00
David Ross
21cd20ff26
Add 'serde' feature for serializing and deserializing ArrayVec and ArrayString.
...
This implements serde support under the optional 'serde' feature, and adds unit tests to test said support.
https://serde.rs/unit-testing.html used as a guide for the unit tests - using 'serde_test' makes for much
less boilerplate here, but it does require that the project have a non-optional dev dependency on 'serde_test'.
2017-06-08 01:42:34 -07:00
Tobias Bucher
0c8f46796e
Add PartialOrd and Ord implementation to ArrayString
...
Fixes #50 .
2017-04-22 16:31:41 +02: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
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
Jake Goulding
b0bf84b201
Add is_full predicate methods
2016-05-28 10:03:54 -04: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
07b2ca2e1f
Edit docs for methods returning Result
2016-02-17 23:08:46 +01:00
bluss
c9789f3461
Merge pull request #24 from bluss/clone_from
...
impl clone_from for ArrayVec and ArrayString
2016-02-06 20:22:40 +01:00
bluss
595db1ffcc
Add feature "std" to arrayvec: Allow opting out of libstd
2016-02-06 20:16:43 +01:00
bluss
a17c764f98
impl clone_from for ArrayVec and ArrayString
2016-02-06 15:22:27 +01:00
bluss
9fdb7dd631
Fixup indentation
2016-02-06 00:59:37 +01:00
Alexander Regueiro
0a413975f5
Re-added accidentally removed test method.
...
Also fixed indentation.
2016-02-05 22:56:44 +00:00
Alexander Regueiro
9845491060
Added ArrayString::from constructor that takes string slice.
...
Also added corresponding test.
2016-02-05 22:30:24 +00:00
bluss
62d372ce1f
Add DerefMut for ArrayString
2016-01-13 13:01:13 +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
7b47f1e891
Use no public fields for CapacityError
2015-09-18 01:00:55 +02:00
bluss
6af588cb2c
ArrayString: Add PartialEq, Eq, Hash, and tests
2015-09-18 00:52:17 +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