List <IProduction> IProductionVisitor <List <IProduction>, List <IProduction> > .VisitEmpty <T>(EmptyProduction <T> emptyProduction, List <IProduction> Productions) { if (emptyProduction.Info != null) { return(Productions); } emptyProduction.Info = new ProductionInfo(); emptyProduction.Info.IsNullable = true; emptyProduction.Info.Index = Productions.Count; emptyProduction.Info.SymbolCount = 0; Productions.Add(emptyProduction); return(Productions); }
string IProductionVisitor <int, string> .VisitEmpty <T>(EmptyProduction <T> emptyProduction, int DotLocation) { return(emptyProduction.ToString() + '.'); }
IReadOnlyList <IProduction> IProductionVisitor <int, IReadOnlyList <IProduction> > .VisitEmpty <T>(EmptyProduction <T> emptyProduction, int DotLocation) { return(s_empty); }
bool IProductionVisitor <Tuple <int, bool, ISet <LR0Item> >, bool> .VisitEmpty <T>(EmptyProduction <T> emptyProduction, Tuple <int, bool, ISet <LR0Item> > arg) { //do nothing, make set unchanged return(arg.Item2); }
bool IProductionVisitor <bool, bool> .VisitEmpty <T>(EmptyProduction <T> emptyProduction, bool IsChanged) { return(IsChanged); }
bool IProductionVisitor <ClosureInfo, bool> .VisitEmpty <T>(EmptyProduction <T> emptyProduction, ClosureInfo arg) { //do nothing, make set unchanged return(arg.IsChanged); }