Ejemplo n.º 1
0
            public override void Write(JavaWriter wtr)
            {
                wtr.Where.Push(tag);
                wtr.Write16(wtr.ConstUtf8(tag));
                wtr.Fork();
                wtr.Write16(maxStack);
                wtr.Write16(maxLocals);
                wtr.Write32((uint)code.Length);
                wtr.WriteBlock(code);

                if (exceptions == null)
                {
                    wtr.Write16(0);
                }
                else
                {
                    wtr.Write16(exceptions.Length);
                    for (int i = 0; i < exceptions.Length; i++)
                    {
                        wtr.Write16(exceptions[i].start);
                        wtr.Write16(exceptions[i].endPlus1);
                        wtr.Write16(exceptions[i].handler);
                        wtr.Write16((exceptions[i].catchType == null) ? 0 :
                                    wtr.ConstClass(exceptions[i].catchType));
                    }
                }

                attributes.Write(wtr);
                wtr.Join();
                wtr.Where.Pop();
            }
Ejemplo n.º 2
0
 public override void Write(JavaWriter wtr)
 {
     wtr.Write8(tag);
     wtr.Write32((uint)value);
 }
Ejemplo n.º 3
0
 public override void Write(JavaWriter wtr)
 {
     wtr.Write8(tag);
     wtr.Write32((uint)(value >> 32));
     wtr.Write32((uint)(value & 0xFFFFFFFF));
 }
Ejemplo n.º 4
0
 public static void Write(JavaWriter wtr, string name, int length)
 {
     wtr.Write16(wtr.ConstUtf8(name));
     wtr.Write32((uint)length);
 }