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

Function findAffector

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

Source from the content-addressed store, hash-verified

710}
711
712export function findAffector(evaluation, info, spans, extraInfo) {
713 let queryId = `query|${info.requestId}`;
714 let query: any = {tag: ["query", "findAffector"]};
715 if(info.record) query.recordId = info.record;
716 if(info.attribute) query.attribute = info.attribute;
717 if(info.span) query.span = info.span;
718
719 let evSession = evaluation.getDatabase("session");
720 let evBrowser = evaluation.getDatabase("browser");
721 evSession.nonExecuting = true;
722 evBrowser.nonExecuting = true;
723 eve.registerDatabase("evaluation-session", evSession);
724 eve.registerDatabase("evaluation-browser", evBrowser);
725 doQuery(queryId, query, spans, extraInfo);
726 eve.unregisterDatabase("evaluation-session");
727 eve.unregisterDatabase("evaluation-browser");
728 evSession.nonExecuting = false;
729 evBrowser.nonExecuting = false;
730
731 let sessionIndex = eve.getDatabase("session").index;
732 let queryInfo = sessionIndex.alookup("tag", "findAffector");
733 if(queryInfo) {
734 let [entity] = queryInfo.toValues();
735 let obj = sessionIndex.asObject(entity);
736 console.log("FIND AFFECTOR", obj);
737 if(obj.affector) {
738 info.affector = obj.affector.map((affector) => sessionIndex.asObject(affector, false, true));
739 return info;
740 } else {
741 info.affector = [];
742 return info;
743 }
744 }
745 return;
746}
747
748export function findFailure(evaluation, info, spans, extraInfo) {
749 let evSession = evaluation.getDatabase("session");

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