Source code for synkit.IO.conversion
"""High-level conversion entry points.
This module provides I/O-facing access to conversions whose implementation
belongs to a domain-specific SynKit package.
"""
from __future__ import annotations
from typing import Any, Optional
[docs]
def ef_smirks_to_epd(
ef_smirks: str,
orbital_class: Optional[str] = None,
strict_bond_lookup: bool = True,
) -> dict[str, Any]:
"""Complete AAM and convert EF-SMIRKS text into generic and typed EPD.
See :func:`synkit.Graph.Mech.conversion.ef_smirks_to_epd` for the
EF-SMIRKS input format and returned fields.
"""
from synkit.Graph.Mech.conversion import ef_smirks_to_epd as _convert
return _convert(
ef_smirks,
orbital_class=orbital_class,
strict_bond_lookup=strict_bond_lookup,
)
[docs]
def epd_to_ef_smirks(complete_aam: str, epd: list[list[Any]]) -> str:
"""Convert complete atom-mapped RSMI and EPD records into EF-SMIRKS.
See :func:`synkit.Graph.Mech.conversion.epd_to_ef_smirks` for accepted
generic and typed EPD records.
"""
from synkit.Graph.Mech.conversion import epd_to_ef_smirks as _convert
return _convert(complete_aam, epd)
__all__ = ["ef_smirks_to_epd", "epd_to_ef_smirks"]