/home/techb158/balavpn.abdallabala.com/node_modules/next/dist/server/lib
NameSizeModeActions
cache-handlers/-0777rm
experimental/-0777rm
incremental-cache/-0777rm
module-loader/-0777rm
router-utils/-0777rm
server-ipc/-0777rm
trace/-0777rm
app-dir-module.d.ts6230666editdlrm
app-dir-module.js16750666editdlrm
app-dir-module.js.map26320666editdlrm
app-info-log.d.ts6170666editdlrm
app-info-log.js48460666editdlrm
app-info-log.js.map58670666editdlrm
async-callback-set.d.ts1400666editdlrm
async-callback-set.js7330666editdlrm
async-callback-set.js.map11130666editdlrm
cache-control.d.ts5720666editdlrm
cache-control.js8150666editdlrm
cache-control.js.map16230666editdlrm
chrome-devtools-workspace.d.ts4180666editdlrm
chrome-devtools-workspace.js43680666editdlrm
chrome-devtools-workspace.js.map41900666editdlrm
clone-response.d.ts5310666editdlrm
clone-response.js26410666editdlrm
clone-response.js.map44410666editdlrm
cpu-profile.d.ts1120666editdlrm
cpu-profile.js10340666editdlrm
cpu-profile.js.map20620666editdlrm
decode-query-path-parameter.d.ts1890666editdlrm
decode-query-path-parameter.js6880666editdlrm
decode-query-path-parameter.js.map7550666editdlrm
dedupe-fetch.d.ts1470666editdlrm
dedupe-fetch.js67850666editdlrm
dedupe-fetch.js.map73960666editdlrm
dev-bundler-service.d.ts11830666editdlrm
dev-bundler-service.js32380666editdlrm
dev-bundler-service.js.map57920666editdlrm
disk-lru-cache.external.d.ts8080666editdlrm
disk-lru-cache.external.js19150666editdlrm
disk-lru-cache.external.js.map31460666editdlrm
etag.d.ts4530666editdlrm
etag.js15850666editdlrm
etag.js.map21980666editdlrm
find-page-file.d.ts13950666editdlrm
find-page-file.js54210666editdlrm
find-page-file.js.map94400666editdlrm
fix-mojibake.d.ts600666editdlrm
fix-mojibake.js7270666editdlrm
fix-mojibake.js.map10410666editdlrm
format-hostname.d.ts2150666editdlrm
format-hostname.js4080666editdlrm
format-hostname.js.map6100666editdlrm
i18n-provider.d.ts23910666editdlrm
i18n-provider.js55930666editdlrm
i18n-provider.js.map90460666editdlrm
implicit-tags.d.ts9860666editdlrm
implicit-tags.js26850666editdlrm
implicit-tags.js.map52120666editdlrm
is-ipv6.d.ts520666editdlrm
is-ipv6.js22840666editdlrm
is-ipv6.js.map34070666editdlrm
is-rsc-request.d.ts2610666editdlrm
is-rsc-request.js4960666editdlrm
is-rsc-request.js.map5330666editdlrm
lazy-result.d.ts5650666editdlrm
lazy-result.js12460666editdlrm
lazy-result.js.map19070666editdlrm
lru-cache.d.ts36610666editdlrm
lru-cache.js66430666editdlrm
lru-cache.js.map113580666editdlrm
match-next-data-pathname.d.ts1130666editdlrm
match-next-data-pathname.js5510666editdlrm
match-next-data-pathname.js.map6360666editdlrm
mock-request.d.ts42910666editdlrm
mock-request.js155360666editdlrm
mock-request.js.map229230666editdlrm
node-fs-methods.d.ts930666editdlrm
node-fs-methods.js7720666editdlrm
node-fs-methods.js.map9760666editdlrm
parse-stack.d.ts2930666editdlrm
parse-stack.js17990666editdlrm
parse-stack.js.map29910666editdlrm
patch-fetch.d.ts9580666editdlrm
patch-fetch.js459600666editdlrm
patch-fetch.js.map647100666editdlrm
patch-set-header.d.ts4640666editdlrm
patch-set-header.js14520666editdlrm
patch-set-header.js.map24630666editdlrm
render-server.d.ts38030666editdlrm
render-server.js39380666editdlrm
render-server.js.map63770666editdlrm
router-server.d.ts8160666editdlrm
router-server.js331990666editdlrm
router-server.js.map466840666editdlrm
server-action-request-meta.d.ts5370666editdlrm
server-action-request-meta.js21160666editdlrm
server-action-request-meta.js.map30700666editdlrm
source-maps.d.ts19760666editdlrm
source-maps.js90100666editdlrm
source-maps.js.map149080666editdlrm
start-server.d.ts10600666editdlrm
start-server.js195790666editdlrm
start-server.js.map276000666editdlrm
streaming-metadata.d.ts2740666editdlrm
streaming-metadata.js11370666editdlrm
streaming-metadata.js.map15880666editdlrm
to-route.d.ts5060666editdlrm
to-route.js7780666editdlrm
to-route.js.map8630666editdlrm
types.d.ts2910666editdlrm
types.js1150666editdlrm
types.js.map670666editdlrm
utils.d.ts29660666editdlrm
utils.js83120666editdlrm
utils.js.map136580666editdlrm
worker-utils.d.ts570666editdlrm
worker-utils.js11280666editdlrm
worker-utils.js.map11250666editdlrm
Edit: /home/techb158/balavpn.abdallabala.com/node_modules/next/dist/server/lib/lru-cache.d.ts (3661B)
/** * LRU (Least Recently Used) Cache implementation using a doubly-linked list * and hash map for O(1) operations. * * Algorithm: * - Uses a doubly-linked list to maintain access order (most recent at head) * - Hash map provides O(1) key-to-node lookup * - Sentinel head/tail nodes simplify edge case handling * - Size-based eviction supports custom size calculation functions * * Data Structure Layout: * HEAD <-> [most recent] <-> ... <-> [least recent] <-> TAIL * * Operations: * - get(): Move accessed node to head (mark as most recent) * - set(): Add new node at head, evict from tail if over capacity * - Eviction: Remove least recent node (tail.prev) when size exceeds limit */ export declare class LRUCache { private readonly cache; private readonly head; private readonly tail; private totalSize; private readonly maxSize; private readonly calculateSize; private readonly onEvict; constructor(maxSize: number, calculateSize?: (value: T) => number, onEvict?: (key: string, value: T) => void); /** * Adds a node immediately after the head (marks as most recently used). * Used when inserting new items or when an item is accessed. * PRECONDITION: node must be disconnected (prev/next should be null) */ private addToHead; /** * Removes a node from its current position in the doubly-linked list. * Updates the prev/next pointers of adjacent nodes to maintain list integrity. * PRECONDITION: node must be connected (prev/next are non-null) */ private removeNode; /** * Moves an existing node to the head position (marks as most recently used). * This is the core LRU operation - accessed items become most recent. */ private moveToHead; /** * Removes and returns the least recently used node (the one before tail). * This is called during eviction when the cache exceeds capacity. * PRECONDITION: cache is not empty (ensured by caller) */ private removeTail; /** * Sets a key-value pair in the cache. * If the key exists, updates the value and moves to head. * If new, adds at head and evicts from tail if necessary. * * Time Complexity: * - O(1) for uniform item sizes * - O(k) where k is the number of items evicted (can be O(N) for variable sizes) */ set(key: string, value: T): boolean; /** * Checks if a key exists in the cache. * This is a pure query operation - does NOT update LRU order. * * Time Complexity: O(1) */ has(key: string): boolean; /** * Retrieves a value by key and marks it as most recently used. * Moving to head maintains the LRU property for future evictions. * * Time Complexity: O(1) */ get(key: string): T | undefined; /** * Returns an iterator over the cache entries. The order is outputted in the * order of most recently used to least recently used. */ [Symbol.iterator](): IterableIterator<[string, T]>; /** * Removes a specific key from the cache. * Updates both the hash map and doubly-linked list. * * Note: This is an explicit removal and does NOT trigger the `onEvict` * callback. Use this for intentional deletions where eviction tracking * is not needed. * * Time Complexity: O(1) */ remove(key: string): void; /** * Returns the number of items in the cache. */ get size(): number; /** * Returns the current total size of all cached items. * This uses the custom size calculation if provided. */ get currentSize(): number; }