| File: ITokenTrie.cs | Web Access |
| Project: src\sdk\src\TemplateEngine\Microsoft.TemplateEngine.Core.Contracts\Microsoft.TemplateEngine.Core.Contracts.csproj (Microsoft.TemplateEngine.Core.Contracts) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. namespace Microsoft.TemplateEngine.Core.Contracts { public interface ITokenTrie { int Count { get; } int MaxLength { get; } int MinLength { get; } IReadOnlyList<int> TokenLength { get; } IReadOnlyList<IToken> Tokens { get; } int AddToken(IToken token); void AddToken(IToken? token, int index); bool GetOperation(byte[] buffer, int bufferLength, ref int currentBufferPosition, out int token); bool GetOperation(byte[] buffer, int bufferLength, ref int currentBufferPosition, bool mustMatchPosition, out int token); void Append(ITokenTrie trie); ITokenTrieEvaluator CreateEvaluator(); } }