Exemplo n.º 1
0
 public function __construct(ValuedQuery $sequence, ValuedQuery $otherSequence, $predicate)
 {
     $predicate = nativeToFunction($predicate);
     $this->setPositionalArg(0, $sequence);
     $this->setPositionalArg(1, $otherSequence);
     $this->setPositionalArg(2, $predicate);
 }
Exemplo n.º 2
0
 public function __construct(Table $table, $indexName, $keyFunction = null, $options = null)
 {
     $indexName = nativeToDatum($indexName);
     if (isset($keyFunction)) {
         $keyFunction = nativeToFunction($keyFunction);
     }
     if (isset($options)) {
         if (!is_array($options)) {
             throw new RqlDriverError("Options must be an array.");
         }
         foreach ($options as $key => &$val) {
             if (!is_string($key)) {
                 throw new RqlDriverError("Option keys must be strings.");
             }
             if (!(is_object($val) && is_subclass_of($val, "\\r\\Query"))) {
                 $val = nativeToDatum($val);
             }
             unset($val);
         }
     }
     $this->setPositionalArg(0, $table);
     $this->setPositionalArg(1, $indexName);
     if (isset($keyFunction)) {
         $this->setPositionalArg(2, $keyFunction);
     }
     if (isset($options)) {
         foreach ($options as $key => $val) {
             $this->setOptionalArg($key, $val);
         }
     }
 }
Exemplo n.º 3
0
 public function __construct(ValuedQuery $sequence, $queryFunction)
 {
     if (!(is_object($queryFunction) && is_subclass_of($queryFunction, "\\r\\Query"))) {
         $queryFunction = nativeToFunction($queryFunction);
     }
     $this->setPositionalArg(0, $sequence);
     $this->setPositionalArg(1, $queryFunction);
 }
Exemplo n.º 4
0
 public function __construct(ValuedQuery $sequence, ValuedQuery $otherSequence, $predicate)
 {
     if (!(is_object($predicate) && is_subclass_of($predicate, "\\r\\Query"))) {
         $predicate = nativeToFunction($predicate);
     }
     $this->setPositionalArg(0, $sequence);
     $this->setPositionalArg(1, $otherSequence);
     $this->setPositionalArg(2, $predicate);
 }
Exemplo n.º 5
0
 public function __construct(ValuedQuery $sequence, $mappingFunction)
 {
     if (!(is_object($mappingFunction) && is_subclass_of($mappingFunction, "\\r\\Query"))) {
         $mappingFunction = nativeToFunction($mappingFunction);
     } else {
         if (!(is_object($mappingFunction) && is_subclass_of($mappingFunction, "\\r\\FunctionQuery"))) {
             $mappingFunction = new RFunction(array(new RVar('_')), $mappingFunction);
         }
     }
     $this->setPositionalArg(0, $sequence);
     $this->setPositionalArg(1, $mappingFunction);
 }
Exemplo n.º 6
0
 public function __construct(Table $table, $indexName, $keyFunction = null)
 {
     if (!isset($keyFunction)) {
         $keyFunction = row($indexName);
     }
     if (!\is_string($indexName)) {
         throw new RqlDriverError("Index name must be a string.");
     }
     if (!(is_object($keyFunction) && is_subclass_of($keyFunction, "\\r\\Query"))) {
         $keyFunction = nativeToFunction($keyFunction);
     } else {
         if (!(is_object($keyFunction) && is_subclass_of($keyFunction, "\\r\\FunctionQuery"))) {
             $keyFunction = new RFunction(array(new RVar('_')), $keyFunction);
         }
     }
     $this->setPositionalArg(0, $table);
     $this->setPositionalArg(1, new StringDatum($indexName));
     $this->setPositionalArg(2, $keyFunction);
 }
Exemplo n.º 7
0
 public function __construct(ValuedQuery $sequence, $predicate)
 {
     if (!(is_object($predicate) && is_subclass_of($predicate, "\\r\\Query"))) {
         try {
             $predicate = nativeToDatum($predicate);
             if (!is_subclass_of($predicate, "\\r\\Datum")) {
                 // $predicate is not a simple datum. Wrap it into a function:
                 $predicate = new RFunction(array(new RVar('_')), $predicate);
             }
         } catch (RqlDriverError $e) {
             $predicate = nativeToFunction($predicate);
         }
     } else {
         if (!(is_object($predicate) && is_subclass_of($predicate, "\\r\\FunctionQuery"))) {
             $predicate = new RFunction(array(new RVar('_')), $predicate);
         }
     }
     $this->setPositionalArg(0, $sequence);
     $this->setPositionalArg(1, $predicate);
 }
Exemplo n.º 8
0
 public function __construct(ValuedQuery $selection, $delta, $nonAtomic = null)
 {
     if (isset($nonAtomic) && !\is_bool($nonAtomic)) {
         throw new RqlDriverError("nonAtomic must be bool.");
     }
     if (!(is_object($delta) && is_subclass_of($delta, "\\r\\Query"))) {
         // If we can make it an object, we will wrap that object into a function.
         // Otherwise, we will try to make it a function.
         try {
             $delta = nativeToDatum($delta);
             $delta = new RFunction(array(new RVar('_')), $delta);
         } catch (RqlDriverError $e) {
             $delta = nativeToFunction($delta);
         }
     }
     $this->setPositionalArg(0, $selection);
     $this->setPositionalArg(1, $delta);
     if (isset($nonAtomic)) {
         $this->setOptionalArg('non_atomic', new BoolDatum($nonAtomic));
     }
 }
Exemplo n.º 9
0
 public function __construct(ValuedQuery $sequence, $grouping, $mapping, $reduction, $base = null)
 {
     if (!(is_object($grouping) && is_subclass_of($grouping, "\\r\\Query"))) {
         $grouping = nativeToFunction($grouping);
     }
     if (!(is_object($mapping) && is_subclass_of($mapping, "\\r\\Query"))) {
         $mapping = nativeToFunction($mapping);
     }
     if (!(is_object($reduction) && is_subclass_of($reduction, "\\r\\Query"))) {
         $reduction = nativeToFunction($reduction);
     }
     if (isset($base) && !(is_object($base) && is_subclass_of($base, "\\r\\Query"))) {
         // Convert base automatically
         $base = nativeToDatum($base);
     }
     $this->setPositionalArg(0, $sequence);
     $this->setPositionalArg(1, $grouping);
     $this->setPositionalArg(2, $mapping);
     $this->setPositionalArg(3, $reduction);
     if (isset($base)) {
         $this->setOptionalArg('base', $base);
     }
 }
Exemplo n.º 10
0
 public function __construct(ValuedQuery $selection, $delta, $opts)
 {
     if (isset($opts) && !\is_array($opts)) {
         throw new RqlDriverError("Options must be an array.");
     }
     if (!(is_object($delta) && is_subclass_of($delta, "\\r\\Query"))) {
         // If we can make it an object, we will wrap that object into a function.
         // Otherwise, we will try to make it a function.
         try {
             $json = tryEncodeAsJson($delta);
             if ($json !== false) {
                 $delta = new Json($json);
             } else {
                 $delta = nativeToDatum($delta);
             }
         } catch (RqlDriverError $e) {
             $delta = nativeToFunction($delta);
         }
     }
     $delta = wrapImplicitVar($delta);
     $this->setPositionalArg(0, $selection);
     $this->setPositionalArg(1, $delta);
     if (isset($opts)) {
         foreach ($opts as $opt => $val) {
             $this->setOptionalArg($opt, nativeToDatum($val));
         }
     }
 }
Exemplo n.º 11
0
function nativeToDatumOrFunction($f)
{
    if (!(is_object($f) && is_subclass_of($f, "\\r\\Query"))) {
        try {
            $f = nativeToDatum($f);
            if (!is_subclass_of($f, "\\r\\Datum")) {
                // $f is not a simple datum. Wrap it into a function:
                $f = new RFunction(array(new RVar('_')), $f);
            }
        } catch (RqlDriverError $e) {
            $f = nativeToFunction($f);
        }
    }
    return wrapImplicitVar($f);
}
Exemplo n.º 12
0
 public function __construct(ValuedQuery $sequence, $mappingFunction)
 {
     $mappingFunction = nativeToFunction($mappingFunction);
     $this->setPositionalArg(0, $sequence);
     $this->setPositionalArg(1, $mappingFunction);
 }