// Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. using System; using Microsoft.AspNet.FileProviders; using Microsoft.AspNet.Razor.Generator.Compiler; namespace Microsoft.AspNet.Mvc.Razor.Directives { /// /// A cache for parsed s. /// public interface ICodeTreeCache { /// /// Get an existing , or create and add a new one if it is /// not available in the cache or is expired. /// /// The application relative path of the Razor page. /// A delegate that creates a new . /// The if a file exists at , /// null otherwise. /// The resulting does not contain inherited chunks from _ViewStart or /// default inherited chunks. CodeTree GetOrAdd(string pagePath, Func getCodeTree); } }