static L ai_fillTripleIndex_useThese; static O ai_fillTripleIndex_useTripleIndex; static void ai_fillTripleIndex() { print("Getting triples."); time2 { L triples = ai_fillTripleIndex_useThese != null ? ai_fillTripleIndex_useThese : localSoftwareMadeTriples(); ai_fillTripleIndex_useThese = null; } long time = lastTiming(); long us = ratio(time*1000, l(triples)); //print("Got triples in "T + time + " ms. Making triple index of " + nTriples(triples) + "."); print("Got " + nTriples(triples) + " in " + us + " "+ unicode_micro() + "s per triple. Making triple index."); time "Triple index made." { if (ai_fillTripleIndex_useTripleIndex != null) ai_reuseTripleIndex(ai_fillTripleIndex_useTripleIndex); else ai_replaceTripleIndexWithTriples(triples); ai_fillTripleIndex_useTripleIndex = null; //ai_tripleIndexToInvalidatedWebs(); ai_deleteInvalidTriples(); } }