for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
/*
* This file is a part of graphql-youshido project.
*
* @author Alexandr Viniychuk <[email protected]>
* created: 11/27/15 2:05 AM
*/
namespace Youshido\GraphQL\Type;
use Youshido\GraphQL\Type\Config\Object\EnumTypeConfig;
use Youshido\GraphQL\Type\Config\Object\InputObjectTypeConfig;
use Youshido\GraphQL\Type\Config\Object\ObjectTypeConfig;
abstract class AbstractType implements TypeInterface
{
/**
* @var ObjectTypeConfig|InputObjectTypeConfig
protected $config;
protected $isBuild = false;
public function getDescription()
return $this->getConfig()->get('description', '');
}
* @return ObjectTypeConfig|InputObjectTypeConfig|EnumTypeConfig
public function getConfig()
$this->checkBuild();
return $this->config;
abstract public function checkBuild();
public function parseValue($value)
if (!$this->isValidValue($value)) {
return null;
return $this->serialize($value);
public function serialize($value)
return $value;
public function __toString()
return $this->getName();