// Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
using System;
namespace Microsoft.AspNet.Mvc.Razor.Compilation
{
///
/// Caches the result of runtime compilation of Razor files for the duration of the app lifetime.
///
public interface ICompilerCache
{
///
/// Get an existing compilation result, or create and add a new one if it is
/// not available in the cache or is expired.
///
/// Application relative path to the file.
/// An delegate that will generate a compilation result.
/// A cached .
CompilerCacheResult GetOrAdd(
string relativePath,
Func compile);
}
}