CacheLiteSharp.Core
1.0.0
dotnet add package CacheLiteSharp.Core --version 1.0.0
NuGet\Install-Package CacheLiteSharp.Core -Version 1.0.0
<PackageReference Include="CacheLiteSharp.Core" Version="1.0.0" />
paket add CacheLiteSharp.Core --version 1.0.0
#r "nuget: CacheLiteSharp.Core, 1.0.0"
// Install CacheLiteSharp.Core as a Cake Addin
#addin nuget:?package=CacheLiteSharp.Core&version=1.0.0
// Install CacheLiteSharp.Core as a Cake Tool
#tool nuget:?package=CacheLiteSharp.Core&version=1.0.0
📂 A variety of cache implementations, all in .NET Core C#
Primarily influenced by the Kotlin-based Cache-Lite over at Kid the Programmer
Cache implementations include Perpetual, Least Recently Used, and Expirable.
This is mainly an academic exercise, however, feel entirely free to use this class library in your own projects, and please let me know the results of said attempt. This library comes in a handy nuget package for the bold in question.
Installation
PM> Install-Package CacheLiteSharp.Core -Version 1.0.0
Interface
All caches in this library implement the following simplistic interface, with slight variations on flush strategy inherent to said implementation:
public interface ICache<T> where T : class
{
/// <summary>
/// Obtain the size of the Cache in integer form
/// </summary>
int Size { get; }
/// <summary>
/// Set a generic cache value based on a string key
/// </summary>
/// <param name="key"></param>
/// <param name="value"></param>
void Set(string key, T value);
/// <summary>
/// Get a particular cache value using a string key
/// </summary>
/// <param name="key"></param>
/// <returns></returns>
T Get(string key);
/// <summary>
/// Remove a particular cache value using a string key
/// </summary>
/// <param name="key"></param>
/// <returns></returns>
T Remove(string key);
/// <summary>
/// Clear the entire cache
/// </summary>
void Clear();
}
Learn more about Target Frameworks and .NET Standard.
This package has no dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|