MCPcopy Create free account
hub / github.com/Moddable-OpenSource/moddable / fxVerifyError

Function fxVerifyError

xs/sources/xsLockdown.c:648–710  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

646}
647
648void fxVerifyError(txMachine* the, txSlot* path, txID id, txIndex index, txString string)
649{
650 txSlot* array;
651 txSlot* slot;
652 txSlot* stack;
653
654 array = mxResult->value.reference->next;
655 slot = fxNewSlot(the);
656 slot->next = array->next;
657 array->next = slot;
658 array->value.array.length++;
659 fxString(the, slot, "");
660
661 stack = the->stack;
662 while (path) {
663 mxPushSlot(path);
664 path = path->next;
665 }
666 while (the->stack < stack) {
667 if (the->stack->kind == XS_STRING_X_KIND) {
668 fxVerifyErrorString(the, slot, XS_NO_ID, 0, the->stack->value.string);
669 }
670 else {
671 fxVerifyErrorString(the, slot, the->stack->value.at.id, the->stack->value.at.index, C_NULL);
672 }
673 mxPop();
674 }
675 fxVerifyErrorString(the, slot, id, index, string);
676
677
678// current = path;
679// next = C_NULL;
680// previous = C_NULL;
681// while (current) {
682// next = current->next;
683// current->next = previous;
684// previous = current;
685// current = next;
686// }
687//
688// path = previous;
689// current = path;
690// while (current) {
691// if (current->kind == XS_STRING_X_KIND) {
692// fxVerifyErrorString(the, slot, XS_NO_ID, 0, current->value.string);
693// }
694// else {
695// fxVerifyErrorString(the, slot, current->value.at.id, current->value.at.index, C_NULL);
696// }
697// current = current->next;
698// }
699// fxVerifyErrorString(the, slot, id, index, string);
700//
701// current = path;
702// next = C_NULL;
703// previous = C_NULL;
704// while (current) {
705// next = current->next;

Callers 2

fxVerifyInstanceFunction · 0.85
fxVerifyPropertyErrorFunction · 0.85

Calls 3

fxNewSlotFunction · 0.85
fxStringFunction · 0.85
fxVerifyErrorStringFunction · 0.85

Tested by

no test coverage detected