onCodePathSegmentStart(segment, node) {
				funcInfo.currentSegments.add(segment);

				if (!(funcInfo.isConstructor && funcInfo.hasExtends)) {
					return;
				}

				// Initialize info.
				const info = (segInfoMap[segment.id] = new SegmentInfo());

				const seenPrevSegments =
					segment.prevSegments.filter(hasSegmentBeenSeen);

				// When there are previous segments, aggregates these.
				if (seenPrevSegments.length > 0) {
					info.calledInSomePaths =
						seenPrevSegments.some(isCalledInSomePath);
					info.calledInEveryPaths =
						seenPrevSegments.every(isCalledInEveryPath);
				}

				/*
				 * ForStatement > *.update segments are a special case as they are created in advance,
				 * without seen previous segments. Since they logically don't affect `calledInEveryPaths`
				 * calculations, and they can never be a lone previous segment of another one, we'll set
				 * their `calledInEveryPaths` to `true` to effectively ignore them in those calculations.
				 * .
				 */
				if (
					node.parent &&
					node.parent.type === "ForStatement" &&
					node.parent.update === node
				) {
					info.calledInEveryPaths = true;
				}
			}
Initialize information of a given code path segment.
@param {CodePathSegment} segment A code path segment to initialize.
@param {CodePathSegment} node Node that starts the segment.
@returns {void}