private static void WriteXmlInstruction(XmlTextWriter xmltw, AbstractInstruction cinst)
{
switch (cinst.Name())
{
case "call":
case "execute":
case "bcall":
xmltw.WriteStartElement(cinst.Name());
xmltw.WriteAttributeString("name", cinst.ToString().Split(new char[] { ' ' })[1]);
xmltw.WriteEndElement();
break;
case "fcall":
FCallInstruction fcinst = (FCallInstruction)cinst;
xmltw.WriteStartElement(cinst.Name());
xmltw.WriteAttributeString("assembly", fcinst._assemblyName);
xmltw.WriteAttributeString("class", fcinst._classType);
xmltw.WriteAttributeString("method", fcinst._methodName);
xmltw.WriteAttributeString("predicate", fcinst._predicateName);
break;
default:
WriteXmlInstructionArguments(xmltw, cinst);
break;
}
}