本文整理汇总了PHP中GraphQL\Type\Definition\Type::isLeafType方法的典型用法代码示例。如果您正苦于以下问题:PHP Type::isLeafType方法的具体用法?PHP Type::isLeafType怎么用?PHP Type::isLeafType使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类GraphQL\Type\Definition\Type
的用法示例。
在下文中一共展示了Type::isLeafType方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: __invoke
public function __invoke(ValidationContext $context)
{
return [Node::FIELD => function (Field $node) use($context) {
$type = $context->getType();
if ($type) {
if (Type::isLeafType($type)) {
if ($node->selectionSet) {
return new Error(Messages::noSubselectionAllowedMessage($node->name->value, $type), [$node->selectionSet]);
}
} else {
if (!$node->selectionSet) {
return new Error(Messages::requiredSubselectionMessage($node->name->value, $type), [$node]);
}
}
}
}];
}
示例2: doTypesConflict
/**
* @param OutputType $type1
* @param OutputType $type2
* @return bool
*/
private function doTypesConflict(OutputType $type1, OutputType $type2)
{
if ($type1 instanceof ListOfType) {
return $type2 instanceof ListOfType ? $this->doTypesConflict($type1->getWrappedType(), $type2->getWrappedType()) : true;
}
if ($type2 instanceof ListOfType) {
return $type1 instanceof ListOfType ? $this->doTypesConflict($type1->getWrappedType(), $type2->getWrappedType()) : true;
}
if ($type1 instanceof NonNull) {
return $type2 instanceof NonNull ? $this->doTypesConflict($type1->getWrappedType(), $type2->getWrappedType()) : true;
}
if ($type2 instanceof NonNull) {
return $type1 instanceof NonNull ? $this->doTypesConflict($type1->getWrappedType(), $type2->getWrappedType()) : true;
}
if (Type::isLeafType($type1) || Type::isLeafType($type2)) {
return $type1 !== $type2;
}
return false;
}