blark.dependency_store.PlcProjectMetadata

class blark.dependency_store.PlcProjectMetadata(name: str, filename: Path, include_dependencies: bool, code: List[ParseResult], summary: CodeSummary, loaded_files: Dict[Path, str], dependencies: Dict[str, DependencyVersion], plc: TwincatPlcProject | None)[source]

Bases: object

This is a per-PLC project metadata container.

Methods

__init__(name, filename, ...)

from_plcproject(plc[, include_dependencies])

Create a PlcProjectMetadata instance from a TwincatPlcProject.

from_project_filename(project[, ...])

Given a project/solution filename, get all PlcProjectMetadata.

Attributes

name

filename

include_dependencies

code

summary

loaded_files

dependencies

plc

name: str
filename: Path
include_dependencies: bool
code: List[ParseResult]
summary: CodeSummary
loaded_files: Dict[Path, str]
dependencies: Dict[str, DependencyVersion]
plc: TwincatPlcProject | None
classmethod from_plcproject(plc: TwincatPlcProject, include_dependencies: bool = True) PlcProjectMetadata | None[source]

Create a PlcProjectMetadata instance from a TwincatPlcProject.

classmethod from_project_filename(project: str | Path, include_dependencies: bool = True, plc_whitelist: List[str] | None = None) Generator[PlcProjectMetadata, None, None][source]

Given a project/solution filename, get all PlcProjectMetadata.

__init__(name: str, filename: Path, include_dependencies: bool, code: List[ParseResult], summary: CodeSummary, loaded_files: Dict[Path, str], dependencies: Dict[str, DependencyVersion], plc: TwincatPlcProject | None) None