bool OEParseSmiles(OEMolBase &mol, const char *str, bool canon=false)
The OEParseSmiles
function takes a SMILES string represented as
a constant character string passed as the second argument, and
populates the molecule instance passed as the first function argument.
If the SMILES string is invalid, or any failure occurs during the
parse or perception processes, the function will return a boolean
value of false. If the string is parsed correctly, the function will
return a boolean value of true. The final argument to the method can
be used to circumvent the post-process kekulization test. Passing a
boolean true value to the final argument indicates to the parser that
the SMILES string is canonical, and the data contained in the string
can be trusted. If the SMILES string passed to the function is known
to be canonical and valid, then passing a boolean true to the final
argument circumvents the sanity checking normally applied to verify
SMILES strings.