62 Commits (96a085686bdfe8bb98ddb4827671b82879c189d9)
 

Author SHA1 Message Date
pantonshire 96a085686b test: improve test script to allow easily adding new runs
test.sh previously had each of its runs hard-coded; this patch changes
the script to loop over an array of cargo flags instead. This allows new
flags to be added to the array to easily add new runs to the test
script.
3 years ago
pantonshire c8783caae2 strings: CappedString now uses a MaybeUninit buf
CappedString was previously backed by a `[u8; N]`, which required
zeroing the buffer on creation. It now uses a `[MaybeUninit<u8>; N]`,
which does need to be zeroed. This should improve the performance of
creating a new CappedString, at the cost of slightly more unsafe code
required in its implementation.

Additionally, `as_bytes` and `as_bytes_mut` methods were introduced.
These are primarily used internally in the implementation of
CappedString, but are also provided as part of the public API to allow
users to do low-level operations on the underlying buffer backing the
CappedString. `as_bytes_mut` is unsafe, as this method can be used to
violate the UTF-8 property of the CappedString, which is undefined
behaviour.
3 years ago
pantonshire 5e612f153c Deny unsafe_op_in_unsafe_fn
The unsafe_op_in_unsafe_fn lint was previously set to allow, meaning
that unsafe function calls and operations were allowed within unsafe
functions without a surrounding unsafe block. This patch changes the
lint to deny, for the purpose of making unsafe operations in the
codebase more explicit.
3 years ago
pantonshire 299553bebf Documentation for CappedString 3 years ago
pantonshire d4c064c92e Conversions between CappedString and Box<str> 3 years ago
pantonshire ab9c62d993 Documentation 3 years ago
pantonshire 8f263e330a Optional decoding of plus character in percent encoded strings 3 years ago
pantonshire f0cc229a65 Percent decoding compliant with URL standard, export percent encoder and decoder types 3 years ago
pantonshire 2b27819104 Percent encode to String buffer 3 years ago
pantonshire d0ea531c05 RFC 3986 percent encoding, std feature now depends on alloc feature 3 years ago
pantonshire 5435784506 Make use of FixedString for hex encoding 3 years ago
pantonshire 8b605ca5c9 Fix for UUID 3 years ago
pantonshire 5535231475 Hex encoding functions now return arrays rather than tuples 3 years ago
Pantonshire 0e03fa87ba Fix doc tests for hex module 3 years ago
Pantonshire cf2648dde6 Seal the encoding::hex::Encode trait 3 years ago
Pantonshire eff2fab679 Encoding module 3 years ago
Pantonshire d1ca94954b impl Clone for InliningString 3 years ago
Pantonshire 5ca54944e8 Move the experimental InliningString to the inlining module 3 years ago
Pantonshire 6d6d35f2e0 More conversion functions for InliningString 3 years ago
Pantonshire f72b53e84f Improve test script 3 years ago
Pantonshire 8e733c444d Remove debugging info and use new serde::Deserialize impl for experimental InliningString 3 years ago
Pantonshire 45ae1c68eb Improved serde support 3 years ago
Pantonshire 0b4dbc6bc5 no_std support 3 years ago
Pantonshire 78b940ff19 Bash script for miri testing 3 years ago
Pantonshire c601e806dd Improve experimental InliningString documentation 3 years ago
Pantonshire b066273e66 Fixes to names and comments 3 years ago
Pantonshire 6bd8c8a111 Implement more traits for experimental InliningString 3 years ago
Pantonshire 821c75729d Experimental InliningString::empty, rename experimental ShString23 3 years ago
Pantonshire b10507ae24 Rename experimental ShString and enable the niche optimisation 3 years ago
Pantonshire 4d4e4486d1 ShString is now InliningString 3 years ago
Pantonshire 6211e60319 Add InlineStringError to strings module, rename ShString repr variant 3 years ago
Pantonshire 74e2bbf406 Rename StackString to InlineString to reflect the fact that it may not always be on the stack, rename modules 3 years ago
Pantonshire da09d5015b Documentation and API improvements to Either 3 years ago
Pantonshire 78ee3cfb4e Experimental ShString now supports efficient conversion to String 3 years ago
Pantonshire a9c431627b Fix clippy lint in convert module 3 years ago
Pantonshire 23df5f425f Minor formatting fix 3 years ago
Pantonshire b6f60fcfc3 Experimental ShString no longer needlessly zeroes memory, added experimental ShString23 3 years ago
Pantonshire 93a8cefd06 ShString now uses the StackString from the public API 3 years ago
Pantonshire 85de7505e5 Extra little test case :3 3 years ago
Pantonshire d0f9044222 Move StackString to its own public module 3 years ago
Pantonshire 378800ce89 No longer require default features for serde 4 years ago
Pantonshire 56179ac613 impl Serialize and Deserialize for ShString 4 years ago
Pantonshire c077cdf610 Proof of concept improvement for ShString 4 years ago
Pantonshire 4dd61aeaa2 FixedString data structure, improved UUID string encoding 4 years ago
Pantonshire da5f2235d2 Move ShString to its own submodule 4 years ago
Pantonshire 18767a8837 Serde support for uuid 4 years ago
Pantonshire c0f0a3a017 Note to self as a todo comment 4 years ago
Pantonshire bd2b3a8a29 impl Default for Uuid 4 years ago
Pantonshire 66f3bee9fc Remove sqlx feature, empty ShString function 4 years ago
Pantonshire ca1c08a6d7 UUID module, currently supporting UUID v5 4 years ago