public static string Render(ReElement element) { var builder = new StringBuilder(); Render(builder, 0, element); return(builder.ToString()); }
static void Render(StringBuilder builder, int indent, ReElement element) { switch (element.Kind) { case ReElementKind.EmptyLanguage: RenderReEmptyLanguage(builder); break; case ReElementKind.EmptyString: RenderReEmptyString(builder); break; case ReElementKind.Singleton: RenderReSingleton(builder, indent, (ReSingleton)element); break; case ReElementKind.KleenStar: RenderReKleenStar(builder, indent, (ReKleeneStar)element); break; case ReElementKind.Concatenation: RenderReConcatenation(builder, indent, (ReConcatenation)element); break; case ReElementKind.Union: RenderReUnion(builder, indent, (ReUnion)element); break; default: throw new InvalidOperationException("and what am i supposed to do with a '" + element.Kind + "'?"); } }
public static Graph.State Build(ReElement element) { var graph = new Graph <NodeData, CharSet> .Builder(); var fromState = graph.NewState(false, new NodeData()); var toState = graph.NewState(false, new NodeData()); element.GenerateNFA(graph, fromState, toState); return(fromState); }
private void UpdateFilter() { this.value.Clear(); this.value.TotalOther = this.CkhOther.Checked; this.value.OtherName = this.txtOther.Text; foreach (DataRow row in this.conditionTable.Rows) { ReElement element = new ReElement(); element.Value = row[0].ToString(); element.FilterType = (Webb.Data.FilterTypes)row[1]; element.Frequence = Convert.ToInt32(row[2]); element.FollowedOperand = (Webb.Data.FilterOperands)row[3]; this.value.Add(element); } }