private function resolveSingleType($type, Context $context)
    {
        switch (true) {
            case $this->isKeyword($type):
                return $this->resolveKeyword($type);
            case $this->isTypedArray($type):
                return $this->resolveTypedArray($type, $context);
            case $this->isFqsen($type):
                return $this->resolveTypedObject($type);
            case $this->isPartialStructuralElementName($type):
                return $this->resolveTypedObject($type, $context);
            // @codeCoverageIgnoreStart
            default:
                // I haven't got the foggiest how the logic would come here but added this as a defense.
                throw new \RuntimeException(
                    'Unable to resolve type "' . $type . '", there is no known method to resolve it'
                );
        }

        // @codeCoverageIgnoreEnd
    }
private function resolveSingleType($type, Context $context)
    {
        switch (true) {
            case $this->isKeyword($type):
                return $this->resolveKeyword($type);
            case $this->isTypedArray($type):
                return $this->resolveTypedArray($type, $context);
            case $this->isFqsen($type):
                return $this->resolveTypedObject($type);
            case $this->isPartialStructuralElementName($type):
                return $this->resolveTypedObject($type, $context);
            // @codeCoverageIgnoreStart
            default:
                // I haven't got the foggiest how the logic would come here but added this as a defense.
                throw new \RuntimeException(
                    'Unable to resolve type "' . $type . '", there is no known method to resolve it'
                );
        }

        // @codeCoverageIgnoreEnd
    }
private function resolveSingleType ( $ type , Context $ context ) { switch ( true ) { case $ this -> isKeyword ( $ type ) : return $ this -> resolveKeyword ( $ type ) ; case $ this -> isTypedArray ( $ type ) : return $ this -> resolveTypedArray ( $ type , $ context ) ; case $ this -> isFqsen ( $ type ) : return $ this -> resolveTypedObject ( $ type ) ; case $ this -> isPartialStructuralElementName ( $ type ) : return $ this -> resolveTypedObject ( $ type , $ context ) ; // @codeCoverageIgnoreStart default : // I haven't got the foggiest how the logic would come here but added this as a defense. throw new \ RuntimeException ( 'Unable to resolve type "' . $ type . '", there is no known method to resolve it' ) ; } // @codeCoverageIgnoreEnd }
resolve the given type into a type object

@param string $type the type string, representing a single type
@return Type|Array_|Object_
resolve the given type into a type object