ValenceDict

class openff.toolkit.topology.ValenceDict(*args, **kwargs)[source]

Enforce uniqueness in atom indices.

__init__(*args, **kwargs)

Methods

__init__(*args, **kwargs)

clear()

get(k[,d])

index_of(key[, possible])

Generates a canonical ordering of the equivalent permutations of key (equivalent rearrangements of indices) and identifies which of those possible orderings this particular ordering is.

items()

key_transform(key)

Reverse tuple if first element is larger than last element.

keys()

pop(k[,d])

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[,d])

update([E, ]**F)

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()

static key_transform(key)[source]

Reverse tuple if first element is larger than last element.

classmethod index_of(key: Iterable[int], possible: Iterable[Iterable[int]] | None = None) int[source]

Generates a canonical ordering of the equivalent permutations of key (equivalent rearrangements of indices) and identifies which of those possible orderings this particular ordering is. This method is useful when multiple SMARTS patterns might match the same atoms, but local molecular symmetry or the use of wildcards in the SMARTS could make the matches occur in arbitrary order.

This method can be restricted to a subset of the canonical orderings, by providing the optional possible keyword argument. If provided, the index returned by this method will be the index of the element in possible after undergoing the same canonical sorting as above.

Parameters:
  • key – A valid key for ValenceDict

  • possible – A subset of the possible orderings that this match might take.

Returns:

index

clear() None.  Remove all items from D.
get(k[, d]) D[k] if k in D, else d.  d defaults to None.
items() a set-like object providing a view on D's items
keys() a set-like object providing a view on D's keys
pop(k[, d]) v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem() (k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d]) D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F) None.  Update D from mapping/iterable E and F.

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values() an object providing a view on D's values