chore: remove unused code.

This commit is contained in:
2024-08-13 22:42:11 +08:00
parent 3ed8bf5d36
commit 65d4d0e6e8
6 changed files with 14 additions and 17 deletions

View File

@@ -12,11 +12,6 @@ public abstract class ParseResult<TToken, T>
/// </summary>
public abstract T Value { get; }
protected ParseResult()
{
}
/// <summary>
/// 在当前结果上应用下一个解析器
/// </summary>

View File

@@ -157,7 +157,7 @@ public static class ParserBuilder
/// <returns></returns>
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static Parser<TToken, T> Choice<TToken, T>(IEnumerable<Parser<TToken, T>> parsers)
=> parsers.Reverse().Aggregate((next, parser) => parser.Alternative(next));
=> parsers.Aggregate((result, parser) => result.Alternative(parser));
/// <summary>
/// 按照给定的解析器组依次尝试
@@ -218,6 +218,5 @@ public static class ParserBuilder
public static Parser<TToken, IEnumerable<TToken>> Take1Till<TToken, TIgnore>(Parser<TToken, TIgnore> termintor)
=> Any<TToken>().Many1Till(termintor);
#endregion
}

View File

@@ -22,12 +22,3 @@ internal sealed class FixParser<TToken, T> : Parser<TToken, T>
Func<ParseResult<TToken, T>, ParseResult<TToken, TResult>> continuation)
=> _parser.Run(state, continuation);
}
internal sealed class FixParser<TToken, TParameter, T>(
Func<Func<TParameter, Parser<TToken, T>>, TParameter, Parser<TToken, T>> func,
TParameter parameter) : Parser<TToken, T>
{
internal override ParseResult<TToken, TResult> Run<TState, TResult>(TState state,
Func<ParseResult<TToken, T>, ParseResult<TToken, TResult>> continuation)
=> func(p => new FixParser<TToken, TParameter, T>(func, p), parameter).Run(state, continuation);
}