besmarts.core.graph_visitors module

besmarts.core.graph_visitors

A set of classes that use a visitor pattern to perform operations on BESMARTS graphs

class besmarts.core.graph_visitors.encoding_visitor(primitive_codecs, ring_edges=None)[source]

Bases: graph_visitor

on_ascend()[source]
on_descend()[source]
on_edge(idx, smarts: bechem, *args, **kwargs)[source]
on_edge_enter(idx)[source]
on_edge_exit(idx)[source]
on_node(idx, smarts: bechem, *args, **kwargs)[source]
on_node_enter(idx)[source]
on_node_exit(idx)[source]
on_start(g: graph)[source]
on_stop(g: graph, result)[source]
besmarts.core.graph_visitors.enter_graph(visitor, g: graph, primary=None, adj=None, tag=None)[source]
besmarts.core.graph_visitors.find_branches(neighbors, visited, seen)[source]
class besmarts.core.graph_visitors.graph_visitor[source]

Bases: object

enter_graph(graph, primary=None, adj=None, tag=None)[source]
on_ascend()[source]
on_descend()[source]
on_edge(idx, bond: bechem, *args, **kwargs)[source]
on_edge_enter(idx)[source]
on_edge_exit(idx)[source]
on_graph()[source]
on_node(idx, atom: bechem, *args, **kwargs)[source]
on_node_edges(node, edges)[source]
on_node_enter(idx)[source]
on_node_exit(idx)[source]
on_start(g)[source]
on_stop(result)[source]
class besmarts.core.graph_visitors.index_visitor[source]

Bases: graph_visitor

on_ascend()[source]
on_descend()[source]
on_edge(idx, bond: bechem, *args, **kwargs)[source]
on_edge_enter(idx)[source]
on_edge_exit(idx)[source]
on_node(idx, atom: bechem, *args, **kwargs)[source]
on_node_enter(idx)[source]
on_node_exit(idx)[source]
on_start(g)[source]
on_stop(g, result)[source]
besmarts.core.graph_visitors.longest_path(tagged, paths, visited, source=None, avoid=None)[source]
class besmarts.core.graph_visitors.smarts_visitor(primitive_codecs, ring_edges=None)[source]

Bases: encoding_visitor

on_edge(idx, besmarts: bechem, *args, **kwargs)[source]
on_node(idx, besmarts: bechem, *args, **kwargs)[source]
on_node_enter(idx)[source]
on_node_exit(idx)[source]
class besmarts.core.graph_visitors.smiles_visitor(primitive_codecs, ring_edges=None)[source]

Bases: encoding_visitor

atom_encode_smarts(besmarts: bechem)[source]
bond_encode_smarts(besmarts: bechem)[source]
on_edge(idx, besmarts: bechem, *args, **kwargs)[source]
on_edge_enter(idx)[source]
on_edge_exit(idx)[source]
on_node(idx, smarts: bechem, *args, **kwargs)[source]
on_node_enter(idx)[source]
on_node_exit(idx)[source]
besmarts.core.graph_visitors.structure_iter_bits(bes: structure, skip_ones=False, iter_inverse=True, primitives=None) Generator[structure, None, None][source]
besmarts.core.graph_visitors.visit_descend(visitor, cg: graph, primary, visited, tag, source, branch, seen, paths, connected, current_path, encloser=('', ''))[source]
besmarts.core.graph_visitors.visit_graph(visitor, cg: graph, primary, paths, connected, visited=None, source=None, seen=None, current_path=None, tag=None)[source]