Files
Flee/Parsing/TokenMatch.cs
2025-10-08 09:49:37 +08:00

32 lines
712 B
C#

namespace Flee.Parsing
{
/**
* The token match status. This class contains logic to ensure that
* only the longest match is considered.
*/
internal class TokenMatch
{
private int _length = 0;
private TokenPattern _pattern = null;
public void Clear()
{
_length = 0;
_pattern = null;
}
public int Length => _length;
public TokenPattern Pattern => _pattern;
public void Update(int length, TokenPattern pattern)
{
if (this._length < length)
{
this._length = length;
this._pattern = pattern;
}
}
}
}