MCPcopy
hub / github.com/witheve/Eve / findSource

Function findSource

src/runtime/analyzer.ts:635–673  ·  view source on GitHub ↗
(evaluation, info, spans, extraInfo)

Source from the content-addressed store, hash-verified

633
634
635export function findSource(evaluation, info, spans, extraInfo) {
636 let queryId = `query|${info.requestId}`;
637 let query: any = {tag: ["query", "findSource"]};
638 if(info.record) query.recordId = info.record;
639 if(info.attribute) query.attribute = info.attribute;
640 if(info.span) query.span = info.span;
641
642 let evSession = evaluation.getDatabase("session");
643 let evBrowser = evaluation.getDatabase("browser");
644 evSession.nonExecuting = true;
645 evBrowser.nonExecuting = true;
646 eve.registerDatabase("evaluation-session", evSession);
647 eve.registerDatabase("evaluation-browser", evBrowser);
648 doQuery(queryId, query, spans, extraInfo);
649 eve.unregisterDatabase("evaluation-session");
650 eve.unregisterDatabase("evaluation-browser");
651 evSession.nonExecuting = false;
652 evBrowser.nonExecuting = false;
653
654 let sessionIndex = eve.getDatabase("session").index;
655 let queryInfo = sessionIndex.alookup("tag", "findSource");
656 if(queryInfo) {
657 let [entity] = queryInfo.toValues();
658 let obj = sessionIndex.asObject(entity);
659 console.log("FIND SOURCE", obj);
660 if(obj.source) {
661 info.source = obj.source.map((source) => sessionIndex.asObject(source, false, true));
662 return info;
663 } else if(obj.block) {
664 info.block = obj.block;
665 return info;
666 } else {
667 info.block = [];
668 info.source = [];
669 return info;
670 }
671 }
672 return;
673}
674
675export function findRelated(evaluation, info, spans, extraInfo) {
676 let queryId = `query|${info.requestId}`;

Callers

nothing calls this directly

Calls 7

doQueryFunction · 0.85
getDatabaseMethod · 0.80
registerDatabaseMethod · 0.80
unregisterDatabaseMethod · 0.80
alookupMethod · 0.80
toValuesMethod · 0.80
asObjectMethod · 0.45

Tested by

no test coverage detected