public void Bind <TResultNode>(ParserProduction parserProduction) where TResultNode : TActualNode { parserProduction.Name = typeof(TResultNode).Name; parserProduction.Binding = ConstructorParserProductionBinding.Bind <TResultNode>(); Productions.Add(parserProduction); }
public void BindReturn <TResultNode, TBaseNode>(Grammar <TToken, TBaseNode> .ParserRule <TResultNode> rule) where TResultNode : TBaseNode where TBaseNode : class { var transition = new ParserProduction(new ParserEntry[] { rule }) { Name = typeof(TResultNode).Name, Binding = ConstructorParserProductionBinding.Bind <TResultNode>(), Unwrap = true }; Productions.Add(transition); }