namespace AvParser.Core.Parsing;
/// Read-only view over every registered text parser.
public interface IParserCatalog
{
/// All registered parsers, ordered by .
IReadOnlyList Parsers { get; }
/// The parser used when nothing has been chosen yet.
ITextParser DefaultParser { get; }
/// Finds a parser by its stable id; when unknown.
ITextParser? Find(string? id);
/// Finds a parser by id, falling back to .
ITextParser FindOrDefault(string? id) => Find(id) ?? DefaultParser;
}