Files
rdkit/Code/GraphMol
Greg Landrum 6d75052459 Support using iterators with MolSuppliers (#9230)
* iterators for random-access MolSuppliers
add optional caching to SDMolSupplier

* add support to SmilesMolSupplier too
There is a lot of duplicate code between the random-access suppliers that would be worth trying to remove
but at the moment it looks like it would require multiple inheritance, and I think we want to avoid that

* add input iterators for ForwardSDMolSupplier()

* throw when calling begin() on a used supplier

* switch to use the spaceship operator

* init() should reset the mol cache

* Make SDMolSupplier and SmilesMolSupplier safe for multi-threaded reads

* add benchmarking

* add TDTMolSupplier support
improved testing
add benchmarks for parallel iteration
optional TBB support

* better const handling, add reverse iterators

doesn't look like const_iterator is possible since getting data from the underlyng supplier object is non-const

* improve docs
more usings
add reverse iterator to TDTMolSupplier

* tests only try execution::par when it is there

* fix typo

* more testing/demo

* remove accidentally added files

* review changes

* add default ctors

* disable a false-positive compiler warning
it is stupid to have to do this

---------

Co-authored-by: = <=>
2026-05-05 13:36:15 +02:00
..
2026-03-12 18:29:59 +01:00
2026-04-01 05:37:02 +02:00
2019-10-10 20:18:43 +09:00
2026-02-26 08:58:36 +01:00
2019-10-10 20:18:43 +09:00
2026-04-01 05:37:02 +02:00
2025-03-20 07:40:33 +01:00
2026-03-20 04:28:17 +01:00
2026-03-12 05:54:20 +01:00
2026-03-20 04:28:17 +01:00
2025-10-08 16:08:01 +02:00
2026-04-01 05:37:02 +02:00
2018-07-25 09:14:17 +02:00
2026-04-18 05:22:09 +02:00
2025-03-17 19:54:15 +01:00
2021-07-09 15:06:54 +02:00
2018-07-25 09:14:17 +02:00
2019-10-10 20:18:43 +09:00
2020-09-02 04:51:20 +02:00
2019-12-31 06:43:27 +01:00
2026-04-13 17:13:04 +02:00
2025-12-09 15:06:29 +01:00