original_string: public static function fromArrayAndSettings($cfg, $settings, $artifact = null) {
          $chunkSpecification = new static($cfg, $settings->getDirectory());
          $chunkSpecification->set("source", null);
          $chunkSpecification->set("target", fphp\Helper\Path::join(
              $settings->getOptional("target", null), $chunkSpecification->getTarget()));
          return $chunkSpecification;
      }
code: public static function fromArrayAndSettings($cfg, $settings, $artifact = null) {
          $chunkSpecification = new static($cfg, $settings->getDirectory());
          $chunkSpecification->set("source", null);
          $chunkSpecification->set("target", fphp\Helper\Path::join(
              $settings->getOptional("target", null), $chunkSpecification->getTarget()));
          return $chunkSpecification;
      }
code_tokens: public static function fromArrayAndSettings ( $ cfg , $ settings , $ artifact = null ) { $ chunkSpecification = new static ( $ cfg , $ settings -> getDirectory ( ) ) ; $ chunkSpecification -> set ( "source" , null ) ; $ chunkSpecification -> set ( "target" , fphp \ Helper \ Path :: join ( $ settings -> getOptional ( "target" , null ) , $ chunkSpecification -> getTarget ( ) ) ) ; return $ chunkSpecification ; }
docstring: Creates a chunk specification from a plain settings array.
  The settings context is taken into consideration to generate paths
  relative to the settings.
  @param array $cfg a plain settings array
  @param \FeaturePhp\Settings $settings the settings context
  @param \FeaturePhp\Artifact\Artifact $artifact is ignored
  @return ChunkSpecification
docstring_tokens: Creates a chunk specification from a plain settings array . The settings context is taken into consideration to generate paths relative to the settings .