/// <summary>
 /// The result value of the parser is stored as contextual state data in the parse state.
 /// </summary>
 /// <typeparam name="TInput"></typeparam>
 /// <typeparam name="TOutput"></typeparam>
 /// <typeparam name="TValue"></typeparam>
 /// <param name="p"></param>
 /// <param name="name"></param>
 /// <param name="getValue"></param>
 /// <returns></returns>
 public static IParser <TInput, TOutput> SetResultData <TInput, TOutput, TValue>(this IParser <TInput, TOutput> p, string name, Func <TOutput, TValue> getValue)
 => ParserMethods <TInput> .SetResultData(p, name, getValue);
 /// <summary>
 /// The result value of the parser is stored as contextual state data in the parse state.
 /// </summary>
 /// <typeparam name="TInput"></typeparam>
 /// <typeparam name="TOutput"></typeparam>
 /// <param name="p"></param>
 /// <param name="name"></param>
 /// <returns></returns>
 public static IParser <TInput, TOutput> SetResultData <TInput, TOutput>(this IParser <TInput, TOutput> p, string name)
 => ParserMethods <TInput> .SetResultData(p, name);