Coverage report: /development/source/library/org/datagraph/spocq-shard/src/algebra/matrix-operators/ask.lisp
| Kind | Covered | All | % |
| expression | 0 | 35 | 0.0 |
| branch | 0 | 2 | 0.0 |
Key
Not instrumented
Conditionalized out
Executed
Not executed
Both branches taken
One branch taken
Neither branch taken
1
;;; -*- Mode: lisp; Syntax: ansi-common-lisp; Base: 10; Package: org.datagraph.spocq.implementation; -*-
3
(in-package :org.datagraph.spocq.implementation)
5
(:documentation "This file defines the matrix unit TABLE operator for the 'org.datagraph.spocq' RDF SPARQL engine."
8
"Copyright 2013 [james anderson](mailto:james.anderson@setf.de) All Rights Reserved."))
10
(defmethod spocq.e:ask ((source-field matrix-field))
11
(incf-stat *algebra-operations*)
12
(let* ((%data (rdfcache:make-matrix 1 1))
13
(result-field (clone-matrix-field source-field :data %data :dimensions *ask-dimensions*)))
14
(matrix-ask result-field source-field)
18
(defmethod process-ask ((result-field matrix-page-channel)
19
(source-field matrix-page-channel))
20
(matrix-ask result-field source-field))
22
(defun matrix-ask (result-field source-field)
23
(let ((%result-data (cffi::null-pointer))
25
(declare (foreign-type (foreign-array #.+matrix-element-type+ (* 1)) %result-data)
26
(type sb-sys:system-area-pointer %result-data)
27
(type fixnum result-row )
29
(unless (cffi:null-pointer-p (next-field-row source-field))
30
(setf (values %result-data result-row) (new-field-row result-field))
31
(setf (foreign-array-named-object-ref ?:|boolean| %result-data 0 0) |urn:dydra|:|true|))
32
(complete-field-input source-field)
33
(complete-field-output result-field)))