transformation_method

Transformation computation primitives.

This module defines analytical computations produced by distribution transformations. A transformation method remains compatible with AnalyticalComputation so that transformed distributions continue to participate in the existing characteristic graph and computation strategy.

class pysatl_core.transformations.transformation_method.TransformationMethod(*, target, transformation, bases, source_requirements, evaluator, owner)[source]

Bases: AnalyticalComputation, Generic

Analytical computation originating from a transformation.

Parameters:
  • target (GenericCharacteristicName) – Name of the target characteristic produced by the transformation.

  • transformation (TransformationName) – Logical name of the transformation that created this computation.

  • bases (Mapping[ParentRole, Distribution]) – Parent distributions grouped by role.

  • source_requirements (SourceRequirements) – Required parent characteristics used to build the computation.

  • evaluator (TransformationEvaluator[In, Out]) – Factory producing a transformed computation callable.

  • owner (object) – Transformation object passed to evaluator.

transformation: TransformationName
source_requirements: SourceRequirements
__init__(*, target, transformation, bases, source_requirements, evaluator, owner)[source]

Build a transformation method with source-semantics metadata.

Parameters:
  • target (GenericCharacteristicName) – Target characteristic produced by the method.

  • transformation (TransformationName) – Logical transformation name.

  • bases (Mapping[ParentRole, Distribution]) – Parent distributions grouped by role.

  • source_requirements (SourceRequirements) – Required parent characteristics.

  • evaluator (TransformationEvaluator[In, Out]) – Factory producing the bound transformed computation from resolved parent methods.

  • owner (object) – Transformation object passed to evaluator.

Raises:

ValueError – If none of required source characteristics is present in parent analytical computations.

Return type:

None

property is_analytical: bool

Return whether all required source loops are analytical.