counting_token_visitor.cs
来自「csharp-solution,C#高效编程源码」· CS 代码 · 共 67 行
CS
67 行
namespace CSharp
{
using System;
sealed class CountingTokenVisitor : ITokenVisitor
{
public void Visit(ILineStartToken t)
{
line_count++;
}
public void Visit(ILineEndToken t) {}
public void Visit(ICommentToken t)
{
comment_count++;
}
public void Visit(IDirectiveToken t)
{
directive_count++;
}
public void Visit(IIdentifierToken t)
{
identifier_count++;
}
public void Visit(IKeywordToken t)
{
keyword_count++;
}
public void Visit(IWhiteSpaceToken t)
{
whitespace_count++;
}
public void Visit(IOtherToken t)
{
other_count++;
}
public void Report()
{
Console.WriteLine("Token Counts");
Console.WriteLine("Lines : {0}", line_count);
Console.WriteLine("Comments : {0}", comment_count);
Console.WriteLine("Directives : {0}", directive_count);
Console.WriteLine("Identifiers: {0}", identifier_count);
Console.WriteLine("Keywords : {0}", keyword_count);
Console.WriteLine("Whitespace : {0}", whitespace_count);
Console.WriteLine("Other : {0}", other_count);
}
private int
line_count,
comment_count,
directive_count,
identifier_count,
keyword_count,
whitespace_count,
other_count;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?