MCPcopy Index your code
hub / github.com/nodejs/node / onExit

Function onExit

test/fixtures/snapshot/typescript.js:45993–46016  ·  view source on GitHub ↗
(node, state)

Source from the content-addressed store, hash-verified

45991 }
45992 }
45993 function onExit(node, state) {
45994 if (!state.skip) {
45995 var operator = node.operatorToken.kind;
45996 if (ts.isAssignmentOperator(operator) && !ts.isAssignmentTarget(node)) {
45997 bindAssignmentTargetFlow(node.left);
45998 if (operator === 63 /* SyntaxKind.EqualsToken */ && node.left.kind === 207 /* SyntaxKind.ElementAccessExpression */) {
45999 var elementAccess = node.left;
46000 if (isNarrowableOperand(elementAccess.expression)) {
46001 currentFlow = createFlowMutation(256 /* FlowFlags.ArrayMutation */, currentFlow, node);
46002 }
46003 }
46004 }
46005 }
46006 var savedInStrictMode = state.inStrictModeStack[state.stackIndex];
46007 var savedParent = state.parentStack[state.stackIndex];
46008 if (savedInStrictMode !== undefined) {
46009 inStrictMode = savedInStrictMode;
46010 }
46011 if (savedParent !== undefined) {
46012 parent = savedParent;
46013 }
46014 state.skip = false;
46015 state.stackIndex--;
46016 }
46017 function maybeBind(node) {
46018 if (node && ts.isBinaryExpression(node) && !ts.isDestructuringAssignment(node)) {
46019 return node;

Callers

nothing calls this directly

Calls 14

bindAssignmentTargetFlowFunction · 0.85
isNarrowableOperandFunction · 0.85
createFlowMutationFunction · 0.85
getLastResultFunction · 0.85
getLeftTypeFunction · 0.85
setLeftTypeFunction · 0.85
setLastResultFunction · 0.85
getLinesBetweenNodesFunction · 0.85
decreaseIndentIfFunction · 0.85
afterEmitNodeFunction · 0.85
emitSourceMapsAfterNodeFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…