Source code for httk.atomistic.models.structure.like
"""
The accepted-input union for structure functions in httk-atomistic.
"""
import io
import os
import urllib.request
from typing import Any
import httk.core
import httk.core.datastream
import httk.core.optimade
import httk.atomistic.integrations.ase.models
import httk.atomistic.integrations.pymatgen.models
import httk.atomistic.models.structure.asu
import httk.atomistic.models.structure.backend
import httk.atomistic.models.structure.unitcell
import httk.atomistic.models.structure.view
import httk.atomistic.storage.records
# A structure is any structure backend/view, a UnitcellStructure, an ASUStructure (a structure
# held as its asymmetric unit, expanded on demand), or an spglib-like
# (lattice, positions, numbers) triple whose lattice and positions are vector-like.
[docs]
type StructureLike = (
httk.atomistic.models.structure.backend.StructureBackend
| httk.atomistic.models.structure.view.StructureView
| httk.atomistic.models.structure.unitcell.UnitcellStructure
| httk.atomistic.storage.records.UnitcellStructureRecord
| httk.atomistic.storage.records.FundamentalDomainStructureRecord
| httk.atomistic.storage.records.ASUStructureRecord
| httk.atomistic.models.structure.asu.FundamentalDomainStructure
| httk.core.optimade.OptimadeResource
| str
| os.PathLike[str]
| httk.core.DatastreamURL
| urllib.request.Request
| io.IOBase
| httk.core.datastream.TextstreamBackend
| httk.core.datastream.TextstreamView
| httk.core.datastream.BytestreamBackend
| httk.core.datastream.BytestreamView
| httk.atomistic.integrations.ase.models.ASEAtomsProtocol
| httk.atomistic.integrations.pymatgen.models.PymatgenStructureProtocol
| tuple[httk.core.VectorLike, httk.core.VectorLike, Any]
| list[Any]
)