polymerist.polymers.smidgelib.smidgeread
Automata for reading SMIDGE strings into their graph representations
Attributes
Classes
Information accessed by machine states during the SMIDGE writing process |
|
Abstract based for reading MID graphs from SMIDGE strings |
|
Collect characters into a buffer |
|
Reset actions when beginning a new chain |
|
Begin reading in a new monomer |
|
Finish reading a monomer and add it to the graph |
|
Initialize reading of a bond token |
|
Abstract based for reading MID graphs from SMIDGE strings |
|
Mark position of branch point in stack for backtrack |
|
Return to previous branch point |
|
Pushdown automaton for translating SMIDGE strings to and from monomer graphs |
Module Contents
- polymerist.polymers.smidgelib.smidgeread.LOGGER
- class polymerist.polymers.smidgelib.smidgeread.SMIDGEReaderRegister[source]
Information accessed by machine states during the SMIDGE writing process
- monograph: polymerist.polymers.monographs.MonomerGraph | None
- curr_token: str = ''
- node_idx: int = 0
- str_buffer: str = ''
- node_stack: list[int] = []
- class polymerist.polymers.smidgelib.smidgeread.SMIDGEReadState[source]
Bases:
abc.ABCAbstract based for reading MID graphs from SMIDGE strings
- abstractmethod state_action(register: SMIDGEReaderRegister) None[source]
- transition(register: SMIDGEReaderRegister) SMIDGEReadState[source]
Define which states should follow the current one based on input
- class polymerist.polymers.smidgelib.smidgeread.Accumulate[source]
Bases:
SMIDGEReadStateCollect characters into a buffer
- state_action(register: SMIDGEReaderRegister) None[source]
- class polymerist.polymers.smidgelib.smidgeread.ChainNew[source]
Bases:
SMIDGEReadStateReset actions when beginning a new chain
- state_action(register: SMIDGEReaderRegister) None[source]
- class polymerist.polymers.smidgelib.smidgeread.MonomerStart[source]
Bases:
SMIDGEReadStateBegin reading in a new monomer
- state_action(register: SMIDGEReaderRegister) None[source]
- class polymerist.polymers.smidgelib.smidgeread.MonomerEnd[source]
Bases:
SMIDGEReadStateFinish reading a monomer and add it to the graph
- state_action(register: SMIDGEReaderRegister) None[source]
- class polymerist.polymers.smidgelib.smidgeread.BondStart[source]
Bases:
SMIDGEReadStateInitialize reading of a bond token
- state_action(register: SMIDGEReaderRegister) None[source]
- class polymerist.polymers.smidgelib.smidgeread.BondEnd[source]
Bases:
SMIDGEReadStateAbstract based for reading MID graphs from SMIDGE strings
- state_action(register: SMIDGEReaderRegister) None[source]
- class polymerist.polymers.smidgelib.smidgeread.BranchStart[source]
Bases:
SMIDGEReadStateMark position of branch point in stack for backtrack
- state_action(register: SMIDGEReaderRegister) None[source]
- class polymerist.polymers.smidgelib.smidgeread.BranchEnd[source]
Bases:
SMIDGEReadStateReturn to previous branch point
- state_action(register: SMIDGEReaderRegister) None[source]
- class polymerist.polymers.smidgelib.smidgeread.SMIDGEReader[source]
Pushdown automaton for translating SMIDGE strings to and from monomer graphs
- state: SMIDGEReadState
- read_smidge(smidge_string: str, start_node_idx: int = 0) polymerist.polymers.monographs.MonomerGraph[source]
Parse a SMIDGE (“SMILES-like Monomer Interconnectivity & Degree Graph Encoding”) string and read it into a networkX Graph