Add utilities for counting iterables and lazily-compiling regexes.

Review Request #13160 — Created July 25, 2023 and submitted — Latest diff uploaded

Information

Djblets
release-4.x

Reviewers

This introduces djblets.util.functional, which offers two useful
functions:

  • iterable_len(): Efficiently computes the length of a finite
    iterable.

  • lazy_re_compile(): Lazily compiles a regex on first access, reducing
    module load time for regexes as class/module attributes.

Unit tests pass.

Used both of these in some in-progress code.

Commits

Files