示例#1
0
 public AppNode(BaseState m, Model.FuncTuple t, Func<Model.Element, string> nameElement)
   : base(m, t.Func.Name, t.Result)
 {
   tupl = t;
   var sb = new StringBuilder();
   sb.Append(t.Func.Name);
   if (t.Args.Length > 0) {
     sb.Append("(");
     for (int i = 0; i < t.Args.Length; ++i) {
       var n = nameElement(t.Args[i]);
       if (n == null)
         sb.AppendFormat("%{0}, ", i);
       else
         sb.AppendFormat("{0}, ", n);
     }
     sb.Length -= 2;
     sb.Append(")");
   }
   name = new EdgeName(m.m, sb.ToString(), t.Args);
 }
示例#2
0
 public ElementNode(BaseState st, string name, Model.Element elt) : base(st.m, name, elt) { this.st = st; }
示例#3
0
 public AppNode(BaseState m, Model.FuncTuple t) : this(m, t, _ => null) { }