Source code for buildcompiler.domain.plasmid
"""Normalized plasmid/backbone records."""
from dataclasses import dataclass, field
from typing import Any
from .material_state import MaterialState
[docs]
@dataclass
class IndexedPlasmid:
"""Inventory/index record for a plasmid-like material."""
identity: str
display_id: str | None = None
name: str | None = None
state: MaterialState = MaterialState.PLANNED
roles: list[str] = field(default_factory=list)
metadata: dict[str, Any] = field(default_factory=dict)
sbol_component: Any | None = None
[docs]
@dataclass
class IndexedBackbone:
"""Inventory/index record for a backbone material."""
identity: str
display_id: str | None = None
name: str | None = None
metadata: dict[str, Any] = field(default_factory=dict)
sbol_component: Any | None = None
[docs]
@dataclass
class IndexedStrain:
"""Inventory/index record for a transformed strain-like material."""
identity: str
display_id: str | None = None
name: str | None = None
state: MaterialState = MaterialState.TRANSFORMED
roles: list[str] = field(default_factory=list)
metadata: dict[str, Any] = field(default_factory=dict)
sbol_module: Any | None = None