<?php
declare(strict_types=1);

namespace App\Service\Utils;

use Symfony\Component\Config\FileLocator;
use Symfony\Component\Yaml\Yaml;

/**
 * Class Parser : méthodes d'aide pour la gestion de parsing de fichier.
 * @package App\Service\Utils
 */
class Parser
{
    /**
     * Parse le fichier yaml passé en paramètre et renvoie un tableau PHP
     * @param string $directory
     * @param string $yamlFile
     * @return mixed
     * @see ParserTest::testYamlParser()
     */
    public function yamlParser(string $directory, string $yamlFile): mixed
    {
        $configDirectories = [$directory];
        $fileLocator = new FileLocator($configDirectories);
        $yamlConfig = $fileLocator->locate($yamlFile, null, false)[0];
        return Yaml::parseFile($yamlConfig);
    }
}
