in assets/lambda_helper_neptune/python/rdflib/plugins/memory.py [0:0]
def triples(self, xxx_todo_changeme2, context=None):
"""A generator over all the triples matching """
(subject, predicate, object) = xxx_todo_changeme2
if subject != ANY: # subject is given
spo = self.__spo
if subject in spo:
subjectDictionary = spo[subject]
if predicate != ANY: # subject+predicate is given
if predicate in subjectDictionary:
if object != ANY: # subject+predicate+object is given
if object in subjectDictionary[predicate]:
yield (subject, predicate, object), \
self.__contexts()
else: # given object not found
pass
else: # subject+predicate is given, object unbound
for o in list(subjectDictionary[predicate].keys()):
yield (subject, predicate, o), \
self.__contexts()
else: # given predicate not found
pass
else: # subject given, predicate unbound
for p in list(subjectDictionary.keys()):
if object != ANY: # object is given
if object in subjectDictionary[p]:
yield (subject, p, object), self.__contexts()
else: # given object not found
pass
else: # object unbound
for o in list(subjectDictionary[p].keys()):
yield (subject, p, o), self.__contexts()
else: # given subject not found
pass
elif predicate != ANY: # predicate is given, subject unbound
pos = self.__pos
if predicate in pos:
predicateDictionary = pos[predicate]
if object != ANY: # predicate+object is given, subject unbound
if object in predicateDictionary:
for s in list(predicateDictionary[object].keys()):
yield (s, predicate, object), self.__contexts()
else: # given object not found
pass
else: # predicate is given, object+subject unbound
for o in list(predicateDictionary.keys()):
for s in list(predicateDictionary[o].keys()):
yield (s, predicate, o), self.__contexts()
elif object != ANY: # object is given, subject+predicate unbound
osp = self.__osp
if object in osp:
objectDictionary = osp[object]
for s in list(objectDictionary.keys()):
for p in list(objectDictionary[s].keys()):
yield (s, p, object), self.__contexts()
else: # subject+predicate+object unbound
spo = self.__spo
for s in list(spo.keys()):
subjectDictionary = spo[s]
for p in list(subjectDictionary.keys()):
for o in list(subjectDictionary[p].keys()):
yield (s, p, o), self.__contexts()