MCPcopy Create free account
hub / github.com/colbymchenry/codegraph / memoPatterns

Function memoPatterns

src/resolution/name-matcher.ts:1176–1186  ·  view source on GitHub ↗
(key: string, build: () => RegExp[])

Source from the content-addressed store, hash-verified

1174}
1175
1176function memoPatterns(key: string, build: () => RegExp[]): RegExp[] {
1177 const hit = PATTERN_MEMO.get(key);
1178 if (hit) return hit;
1179 const patterns = build();
1180 if (PATTERN_MEMO.size >= PATTERN_MEMO_CAP) {
1181 const oldest = PATTERN_MEMO.keys().next().value;
1182 if (oldest !== undefined) PATTERN_MEMO.delete(oldest);
1183 }
1184 PATTERN_MEMO.set(key, patterns);
1185 return patterns;
1186}
1187
1188export function localReceiverTypePatterns(language: Language, r: string): RegExp[] {
1189 return memoPatterns(`${language}|${r}`, () => buildLocalReceiverTypePatterns(language, r));

Callers 2

phpPropertyTypePatternsFunction · 0.85

Calls 2

getMethod · 0.65
setMethod · 0.45

Tested by

no test coverage detected