public function __construct(ITypeSystem $typeSystem, $name, $returnType) { parent::__construct($typeSystem); $this->name = $name; $this->reflection = new \ReflectionFunction($name); $this->returnType = $returnType; }
public function __construct(ITypeSystem $typeSystem, $leftOperandType, $operator, $rightOperandType, $returnType) { parent::__construct($typeSystem); $this->leftOperandType = $leftOperandType; $this->operator = $operator; $this->rightOperandType = $rightOperandType; $this->returnType = $returnType; }
public function __construct(ITypeSystem $typeSystem, O\IEvaluationContext $evaluationContext) { parent::__construct($typeSystem); $this->evaluationContext = $evaluationContext; foreach ($evaluationContext->getVariableTable() as $variable => $value) { $this->setExpressionType(O\Expression::variable(O\Expression::value($variable)), $typeSystem->getTypeFromValue($value)); } }
public function __construct(ITypeSystem $typeSystem, $sourceType, $returnType) { parent::__construct($typeSystem); $this->sourceType = $sourceType; $this->returnType = $returnType; }