Create quads hierarchy
* Move nquads into quad. * Create cquads simplified parser in quad. * Move Triple (renamed Quad) to quad. Also made sure mongo actually implements BulkLoader.
This commit is contained in:
parent
01bc63810b
commit
401c58426f
51 changed files with 13400 additions and 5495 deletions
|
|
@ -23,6 +23,7 @@ import (
|
|||
|
||||
"github.com/google/cayley/graph"
|
||||
"github.com/google/cayley/graph/iterator"
|
||||
"github.com/google/cayley/quad"
|
||||
)
|
||||
|
||||
func (q *Query) buildFixed(s string) graph.Iterator {
|
||||
|
|
@ -139,16 +140,16 @@ func (q *Query) buildIteratorTreeMapInternal(query map[string]interface{}, path
|
|||
subAnd := iterator.NewAnd()
|
||||
predFixed := q.ses.ts.FixedIterator()
|
||||
predFixed.Add(q.ses.ts.ValueOf(pred))
|
||||
subAnd.AddSubIterator(iterator.NewLinksTo(q.ses.ts, predFixed, graph.Predicate))
|
||||
subAnd.AddSubIterator(iterator.NewLinksTo(q.ses.ts, predFixed, quad.Predicate))
|
||||
if reverse {
|
||||
lto := iterator.NewLinksTo(q.ses.ts, builtIt, graph.Subject)
|
||||
lto := iterator.NewLinksTo(q.ses.ts, builtIt, quad.Subject)
|
||||
subAnd.AddSubIterator(lto)
|
||||
hasa := iterator.NewHasA(q.ses.ts, subAnd, graph.Object)
|
||||
hasa := iterator.NewHasA(q.ses.ts, subAnd, quad.Object)
|
||||
subit = hasa
|
||||
} else {
|
||||
lto := iterator.NewLinksTo(q.ses.ts, builtIt, graph.Object)
|
||||
lto := iterator.NewLinksTo(q.ses.ts, builtIt, quad.Object)
|
||||
subAnd.AddSubIterator(lto)
|
||||
hasa := iterator.NewHasA(q.ses.ts, subAnd, graph.Subject)
|
||||
hasa := iterator.NewHasA(q.ses.ts, subAnd, quad.Subject)
|
||||
subit = hasa
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue