Example #1
0
 void WriteDefine(Iterator it)
 {
     if (it.IsProto)
     {
         if (proto == null)
         {
             proto = it;
         }
         var format = js.Put(js.proto);
         js.Put(it.Object.identity.name);
         var comma = "";
         foreach (var param in it.Object.paramList)
         {
             js.Write(comma);
             js.Write(param.identity.name);
             comma = js.comma;
         }
         js.Put();
         if (it.IsComplex)
         {
             js.Enter();
             js.Put(js.protoClazz);
             WriteBody(it);
             WriteLayout(it);
             js.Leave();
         }
         if (proto == it)
         {
             proto = null;
         }
         js.End(format);
     }
     else if (it.IsComplex)
     {
         var format = js.Put(js.clazz);
         js.Put(it.Object.identity.name);
         WriteBody(it);
         WriteLayout(it);
         js.End(format);
     }
     else if (proto != null)
     {
         var format = js.Put(js.keyClone);
         js.Put(it.Object.identity.name);
         js.Put(it.Variable, format);
     }
     else
     {
         var format = js.Put(js.keyValue);
         js.Put(it.Object.identity.name);
         js.Put(it.Value, format);
     }
 }