MCPcopy Create free account
hub / github.com/krasimir/react-in-patterns / ReactFiberStack

Function ReactFiberStack

code/composition/public/app.js:12693–12775  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

12691};
12692
12693var ReactFiberStack = function () {
12694 var valueStack = [];
12695
12696 var fiberStack = void 0;
12697
12698 {
12699 fiberStack = [];
12700 }
12701
12702 var index = -1;
12703
12704 function createCursor(defaultValue) {
12705 return {
12706 current: defaultValue
12707 };
12708 }
12709
12710 function isEmpty() {
12711 return index === -1;
12712 }
12713
12714 function pop(cursor, fiber) {
12715 if (index < 0) {
12716 {
12717 warning(false, 'Unexpected pop.');
12718 }
12719 return;
12720 }
12721
12722 {
12723 if (fiber !== fiberStack[index]) {
12724 warning(false, 'Unexpected Fiber popped.');
12725 }
12726 }
12727
12728 cursor.current = valueStack[index];
12729
12730 valueStack[index] = null;
12731
12732 {
12733 fiberStack[index] = null;
12734 }
12735
12736 index--;
12737 }
12738
12739 function push(cursor, value, fiber) {
12740 index++;
12741
12742 valueStack[index] = cursor.current;
12743
12744 {
12745 fiberStack[index] = fiber;
12746 }
12747
12748 cursor.current = value;
12749 }
12750

Callers 1

ReactFiberSchedulerFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected