bndpresbufq

Check-in Differences
Login

Check-in Differences

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Difference From bndpresbufq-0.1.3 To bndpresbufq-0.1.4

2024-10-05
18:27
Release maintenance. Leaf check-in: e1bb2c5156 user: jan tags: bndpresbufq-0.1.4, trunk
18:21
Bugfix: Update the total queue size when try_return() is successful. check-in: 40a762cf04 user: jan tags: trunk
01:53
Release maintenance. check-in: 789a8bbe7d user: jan tags: bndpresbufq-0.1.3, trunk
01:51
Add try_return. check-in: 57133b16db user: jan tags: trunk

Changes to Cargo.toml.

1
2
3
4
5
6
7
8
9
10
[package]
name = "bndpresbufq"
version = "0.1.3"
edition = "2021"
license = "0BSD"
# https://crates.io/category_slugs
categories = [ "data-structures" ]
keywords = [ "buffer", "queue", "bounded", "bounds-preserving" ]
repository = "https://repos.qrnch.tech/pub/bndpresbufq"
description = "Bounds-preserving, optionally limited, buffer queue"


|







1
2
3
4
5
6
7
8
9
10
[package]
name = "bndpresbufq"
version = "0.1.4"
edition = "2021"
license = "0BSD"
# https://crates.io/category_slugs
categories = [ "data-structures" ]
keywords = [ "buffer", "queue", "bounded", "bounds-preserving" ]
repository = "https://repos.qrnch.tech/pub/bndpresbufq"
description = "Bounds-preserving, optionally limited, buffer queue"

Changes to src/lib.rs.

216
217
218
219
220
221
222


223

224
225
226
227
228
229
230
231

      // Make sure this node wouldn't exceed queue total capacity
      if self.size + nlen > max_size {
        return Err(n);
      }
    }



    self.size += nlen;

    self.q.try_return(n)
  }

  /// Take next buffer off queue.
  #[inline]
  pub fn pop(&mut self) -> Option<Vec<u8>> {
    let n = self.q.pop()?;
    self.size -= n.len();







>
>
|
>
|







216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234

      // Make sure this node wouldn't exceed queue total capacity
      if self.size + nlen > max_size {
        return Err(n);
      }
    }

    let ret = self.q.try_return(n);
    if ret.is_ok() {
      self.size += nlen;
    }
    ret
  }

  /// Take next buffer off queue.
  #[inline]
  pub fn pop(&mut self) -> Option<Vec<u8>> {
    let n = self.q.pop()?;
    self.size -= n.len();

Changes to www/changelog.md.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15











16
17
18
19
20
21
22
# Change Log

## [Unreleased]

[Details](/vdiff?from=bndpresbufq-0.1.3&to=trunk)

### Added

### Changed

### Removed

---

## [0.1.3]












[Details](/vdiff?from=bndpresbufq-0.1.2&to=bndpresbufq-0.1.3)

### Added

- `BndPresLimBufQ::try_return()` can be used to return a node that was just
  taken off the queue back to it so it will be return next.




|









|
>
>
>
>
>
>
>
>
>
>
>







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# Change Log

## [Unreleased]

[Details](/vdiff?from=bndpresbufq-0.1.4&to=trunk)

### Added

### Changed

### Removed

---

## [0.1.4] - 2024-10-05

[Details](/vdiff?from=bndpresbufq-0.1.3&to=bndpresbufq-0.1.4)

### Changed

- [bugfix] Didn't update the total queue size when `try_return()` was
  successful.

---

## [0.1.3] (yanked) - 2024-10-05

[Details](/vdiff?from=bndpresbufq-0.1.2&to=bndpresbufq-0.1.3)

### Added

- `BndPresLimBufQ::try_return()` can be used to return a node that was just
  taken off the queue back to it so it will be return next.