for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace ByTIC\Namefy\Strategies;
use ByTIC\Namefy\Name;
/**
* Class AbstractStrategy
* @package ByTIC\Namefy\Strategies
*/
abstract class AbstractStrategy
{
* @param $type
* @param $value
* @param Name $name
* @return mixed
public function from($type, $value, Name $name)
$method = 'from' . ucfirst($type);
return $this->$method($value, $name);
}
* @param $slug
* @return string
abstract public function fromRepository($slug, Name $name);
abstract public function fromModel($slug, Name $name);
abstract public function fromController($slug, Name $name);
public function to($type, $value)
$method = 'to' . ucfirst($type);
return $this->$method($value);
abstract public function toModel(Name $name);
abstract public function toController(Name $name);
abstract public function toRepository(Name $name);