2025-10-15 10:12:44 +03:00

30 lines
716 B
Go

package module
import (
"sync"
"efprojects.com/kitten-ipc/kitcom/internal/tsgo/core"
"efprojects.com/kitten-ipc/kitcom/internal/tsgo/packagejson"
)
type ModeAwareCache[T any] map[ModeAwareCacheKey]T
type caches struct {
packageJsonInfoCache *packagejson.InfoCache
// Cached representation for `core.CompilerOptions.paths`.
// Doesn't handle other path patterns like in `typesVersions`.
parsedPatternsForPathsOnce sync.Once
parsedPatternsForPaths *ParsedPatterns
}
func newCaches(
currentDirectory string,
useCaseSensitiveFileNames bool,
options *core.CompilerOptions,
) caches {
return caches{
packageJsonInfoCache: packagejson.NewInfoCache(currentDirectory, useCaseSensitiveFileNames),
}
}