Author: Elliot Levin (elliotlevin@hotmail.com)
Inheritance: extends Pinq\Providers\QueryProvider
 public function hash($value)
 {
     if (!$value instanceof IQueryable) {
         throw new PinqException('Cannot get hash of compiled request query: expecting type of %s, %s given', IQueryable::IQUERYABLE_TYPE, Utilities::getTypeOrClass($value));
     }
     $provider = $value->getProvider();
     if (!$provider instanceof DSL\QueryProvider) {
         throw new PinqException('Cannot get hash of compiled request query: invalid query provider, expecting type of %s, %s given', DSL\QueryProvider::getType(), Utilities::getTypeOrClass($value));
     }
     return $provider->getCompilerConfiguration()->getCompiledRequestQueryHash($value->getExpression(), $this->evaluationContext);
 }
 public function __construct(PDO $connection, TableSourceInfo $sourceInfo, IQueryCompilerConfiguration $compilerConfiguration)
 {
     parent::__construct($sourceInfo, $compilerConfiguration);
     $this->connection = $connection;
 }