public static function loadDefinition(DefinitionInterface $definition): Graph
    {
        $graph = new Graph($definition);

        foreach ($definition->processes() as $id => $def) {
            $graph->addNode($id, $def[Net::COMPONENT]);
        }

        foreach ($definition->initializers() as $initializer) {
            $graph->addInitial(
                $initializer[Net::DATA],
                $initializer[Net::CONNECTION_TARGET][Net::PROCESS],
                $initializer[Net::CONNECTION_TARGET][Net::PORT]
            );
        }

        foreach ($definition->connections() as $conn) {
            $graph->addEdge(
                $conn[Net::CONNECTION_SOURCE][Net::PROCESS],
                $conn[Net::CONNECTION_SOURCE][Net::PORT],
                $conn[Net::CONNECTION_TARGET][Net::PROCESS],
                $conn[Net::CONNECTION_TARGET][Net::PORT]
            );
        }

        return $graph;
    }
public static function loadDefinition(DefinitionInterface $definition): Graph
    {
        $graph = new Graph($definition);

        foreach ($definition->processes() as $id => $def) {
            $graph->addNode($id, $def[Net::COMPONENT]);
        }

        foreach ($definition->initializers() as $initializer) {
            $graph->addInitial(
                $initializer[Net::DATA],
                $initializer[Net::CONNECTION_TARGET][Net::PROCESS],
                $initializer[Net::CONNECTION_TARGET][Net::PORT]
            );
        }

        foreach ($definition->connections() as $conn) {
            $graph->addEdge(
                $conn[Net::CONNECTION_SOURCE][Net::PROCESS],
                $conn[Net::CONNECTION_SOURCE][Net::PORT],
                $conn[Net::CONNECTION_TARGET][Net::PROCESS],
                $conn[Net::CONNECTION_TARGET][Net::PORT]
            );
        }

        return $graph;
    }
public static function loadDefinition ( DefinitionInterface $ definition ) : Graph { $ graph = new Graph ( $ definition ) ; foreach ( $ definition -> processes ( ) as $ id => $ def ) { $ graph -> addNode ( $ id , $ def [ Net :: COMPONENT ] ) ; } foreach ( $ definition -> initializers ( ) as $ initializer ) { $ graph -> addInitial ( $ initializer [ Net :: DATA ] , $ initializer [ Net :: CONNECTION_TARGET ] [ Net :: PROCESS ] , $ initializer [ Net :: CONNECTION_TARGET ] [ Net :: PORT ] ) ; } foreach ( $ definition -> connections ( ) as $ conn ) { $ graph -> addEdge ( $ conn [ Net :: CONNECTION_SOURCE ] [ Net :: PROCESS ] , $ conn [ Net :: CONNECTION_SOURCE ] [ Net :: PORT ] , $ conn [ Net :: CONNECTION_TARGET ] [ Net :: PROCESS ] , $ conn [ Net :: CONNECTION_TARGET ] [ Net :: PORT ] ) ; } return $ graph ; }
Load PhpFlo graph definition.

@param DefinitionInterface $definition
@return Graph
Load PhpFlo graph definition .