public string convNToTableName(string N, List <FirstKEl> L) { var t = new LLkT(0, N, L); var tf = t.toFlat(); var i = Helpers.indexOf(tf, this.LLksf); var lt = this.LLks[i]; return(lt.name); }
public void constructLLkTs() { //(1) var l = new List <FirstKEl>(); l.Add(new FirstKEl(this.k)); var t0 = this.constructLLkT(this.cfg.StartSymbol, l); this.LLks.Add(t0); //(2) var J = this.LLksf; J.Add(t0.toFlat()); //(3)(4) LLkT tabi; LLkTRow rowj; FollowEl folk; LLkT newt; string newtf; for (var i = 0; i < this.LLks.Count; i++) { tabi = this.LLks[i]; for (var j = 0; j < tabi.rows.Count; j++) { rowj = tabi.rows[j]; for (var k = 0; k < rowj.follow.Count; k++) { folk = rowj.follow[k]; newt = new LLkT(0, folk.N, folk.sets); newtf = newt.toFlat(); if (!J.Contains(newtf)) { newt = this.constructLLkT(folk.N, folk.sets); this.LLks.Add(newt); J.Add(newtf); } } } } }