* Fixes#2450
adds `hasOwningMol()` to the public API for Bond and Atom
* add to other classes;
add to python wrappers
* get the smiles generation partially working
* changes in response to review
* Switch to uint32 for atom index to support more atoms
* Test adding and removing big number of atoms (70k)
* Change order of properites in Atom class
* Removes ATOM/BOND_SPTR in boost::graph in favor of raw pointers
* Actually delete atoms and bonds...
* RWMol::clear now calls destroy to handle atom/bond deletion
* Changes broken Atom lookup for windows/gcc
* Adds tests for running with valgrind
* Adds test designed for valgrind and molecule deletions
* Removes RNG, actually tests bond deletions
* update swig wrappers
* deal with most recent changes on the main branch
* Adds Atom atom map and rlabel apis
* Moves RLabels to their own namespace, adds other properties.
* Removes namespaces, liberally adds Atom to function names.
* move detail::computedPropName to RDKit::detail::computedPropName
* Adds RDAny (smaller generic holder) Updates all used dictionaries
This is an API compliant version of the current rdany system,
but uses a lot less memory in practice.
* Removes code duplication
* Converts CHECK_INVARIANT to TEST_ASSERT
* Fixes DoubleTag issue
* Adds Bool to DoubleMagic implementation
* Removes reference to property pickler
o rdkit gains a RDKit::common_properties namespace that contains common string value properties
o Dict.h and below gain getPropIfPresent that attempts to retrieve a property and returns
true/false on success or failure. This is used to optimize access.
o rdkit learns how to pass property keys by reference, not value.
A new namespace has been added to RDKit, common_properties
that contains the std::string values for commonly used
properties. This helps to avoid typos in string values
but also avoids a creation of std::strings from character
values. All accessors (has/get/clear and getPropIfPresent) now pass
the key by reference.
Additionally, getPropIfPresent removes the double lookup
of hasProp/getProp which can be a significant speedup
in the smiles and smarts parsers (10-20%)