@@ -323,9 +323,8 @@ where
323
323
324
324
impl < ' a , K , V > ZeroMap < ' a , K , V >
325
325
where
326
- K : ZeroMapKV < ' a , Container = ZeroVec < ' a , K > > + ? Sized ,
326
+ K : AsULE + ZeroMapKV < ' a , Container = ZeroVec < ' a , K > > ,
327
327
V : ZeroMapKV < ' a > + ?Sized ,
328
- K : AsULE ,
329
328
{
330
329
/// Cast a `ZeroMap<K, V>` to `ZeroMap<P, V>` where `K` and `P` are [`AsULE`] types
331
330
/// with the same representation.
@@ -335,7 +334,7 @@ where
335
334
/// If `K` and `P` have different ordering semantics, unexpected behavior may occur.
336
335
pub fn cast_zv_k_unchecked < P > ( self ) -> ZeroMap < ' a , P , V >
337
336
where
338
- P : AsULE < ULE = K :: ULE > + ZeroMapKV < ' a , Container = ZeroVec < ' a , P > > + ? Sized ,
337
+ P : AsULE < ULE = K :: ULE > + ZeroMapKV < ' a , Container = ZeroVec < ' a , P > > ,
339
338
{
340
339
ZeroMap {
341
340
keys : self . keys . cast ( ) ,
@@ -355,7 +354,7 @@ where
355
354
/// Panics if `K::ULE` and `P::ULE` are not the same size.
356
355
pub fn try_convert_zv_k_unchecked < P > ( self ) -> Result < ZeroMap < ' a , P , V > , ZeroVecError >
357
356
where
358
- P : AsULE + ZeroMapKV < ' a , Container = ZeroVec < ' a , P > > + ? Sized ,
357
+ P : AsULE + ZeroMapKV < ' a , Container = ZeroVec < ' a , P > > ,
359
358
{
360
359
Ok ( ZeroMap {
361
360
keys : self . keys . try_into_converted ( ) ?,
@@ -367,8 +366,7 @@ where
367
366
impl < ' a , K , V > ZeroMap < ' a , K , V >
368
367
where
369
368
K : ZeroMapKV < ' a > + ?Sized ,
370
- V : ZeroMapKV < ' a , Container = ZeroVec < ' a , V > > + ?Sized ,
371
- V : AsULE ,
369
+ V : AsULE + ZeroMapKV < ' a , Container = ZeroVec < ' a , V > > ,
372
370
{
373
371
/// Cast a `ZeroMap<K, V>` to `ZeroMap<K, P>` where `V` and `P` are [`AsULE`] types
374
372
/// with the same representation.
@@ -378,7 +376,7 @@ where
378
376
/// If `V` and `P` have different ordering semantics, unexpected behavior may occur.
379
377
pub fn cast_zv_v_unchecked < P > ( self ) -> ZeroMap < ' a , K , P >
380
378
where
381
- P : AsULE < ULE = V :: ULE > + ZeroMapKV < ' a , Container = ZeroVec < ' a , P > > + ? Sized ,
379
+ P : AsULE < ULE = V :: ULE > + ZeroMapKV < ' a , Container = ZeroVec < ' a , P > > ,
382
380
{
383
381
ZeroMap {
384
382
keys : self . keys ,
@@ -398,7 +396,7 @@ where
398
396
/// Panics if `V::ULE` and `P::ULE` are not the same size.
399
397
pub fn try_convert_zv_v_unchecked < P > ( self ) -> Result < ZeroMap < ' a , K , P > , ZeroVecError >
400
398
where
401
- P : AsULE + ZeroMapKV < ' a , Container = ZeroVec < ' a , P > > + ? Sized ,
399
+ P : AsULE + ZeroMapKV < ' a , Container = ZeroVec < ' a , P > > ,
402
400
{
403
401
Ok ( ZeroMap {
404
402
keys : self . keys ,
@@ -468,8 +466,7 @@ where
468
466
impl < ' a , K , V > ZeroMap < ' a , K , V >
469
467
where
470
468
K : ZeroMapKV < ' a > + ?Sized + Ord ,
471
- V : ZeroMapKV < ' a > + ?Sized ,
472
- V : Copy ,
469
+ V : Copy + ZeroMapKV < ' a > ,
473
470
{
474
471
/// For cases when `V` is fixed-size, obtain a direct copy of `V` instead of `V::ULE`.
475
472
///
@@ -523,8 +520,7 @@ where
523
520
impl < ' a , K , V > ZeroMap < ' a , K , V >
524
521
where
525
522
K : ZeroMapKV < ' a > + ?Sized ,
526
- V : ZeroMapKV < ' a , Container = ZeroVec < ' a , V > > + ?Sized ,
527
- V : AsULE + Copy ,
523
+ V : AsULE + ZeroMapKV < ' a , Container = ZeroVec < ' a , V > > ,
528
524
{
529
525
/// Similar to [`Self::iter()`] except it returns a direct copy of the values instead of references
530
526
/// to `V::ULE`, in cases when `V` is fixed-size
@@ -544,10 +540,8 @@ where
544
540
545
541
impl < ' a , K , V > ZeroMap < ' a , K , V >
546
542
where
547
- K : ZeroMapKV < ' a , Container = ZeroVec < ' a , K > > + ?Sized ,
548
- V : ZeroMapKV < ' a , Container = ZeroVec < ' a , V > > + ?Sized ,
549
- K : AsULE + Copy ,
550
- V : AsULE + Copy ,
543
+ K : AsULE + ZeroMapKV < ' a , Container = ZeroVec < ' a , K > > ,
544
+ V : AsULE + ZeroMapKV < ' a , Container = ZeroVec < ' a , V > > ,
551
545
{
552
546
/// Similar to [`Self::iter()`] except it returns a direct copy of the keys values instead of references
553
547
/// to `K::ULE` and `V::ULE`, in cases when `K` and `V` are fixed-size
0 commit comments