Pinq\Tests\Integration\Analysis\TypeAnalysisTest::assertTypeMatchesValue PHP Метод

assertTypeMatchesValue() защищенный Метод

protected assertTypeMatchesValue ( Pinq\Analysis\ITypeAnalysis $analysis, Expression $expression, Pinq\Analysis\IType $metadataType = null )
$analysis Pinq\Analysis\ITypeAnalysis
$expression Pinq\Expressions\Expression
$metadataType Pinq\Analysis\IType
    protected function assertTypeMatchesValue(ITypeAnalysis $analysis, O\Expression $expression, IType $metadataType = null)
    {
        $type = $this->typeSystem->getTypeFromValue($expression->evaluate(O\EvaluationContext::staticContext(__NAMESPACE__, __CLASS__)));
        $this->assertEqualTypes($type, $analysis->getReturnTypeOf($expression));
        if ($metadataType !== null) {
            $this->assertEqualTypes($metadataType, $type, $expression->compileDebug());
        }
    }