// Print a parse tree node. private void PrintNode(ICodeNodeImplementation node) { Append(indentation); Append("<" + node.ToString()); PrintAttributes(node); PrintTypeSpecification(node); List <ICodeNode> childNodes = node.GetChildren(); // Print the node's children followed by the closing tag. if ((childNodes != null) && (childNodes.Count() > 0)) { Append(">"); PrintLine(); PrintChildNodes(childNodes); Append(indentation); Append("</" + node.ToString() + ">"); } else { Append(" />"); // No children: Close off the tag } PrintLine(); }
// Print a parse tree node's attributes. private void PrintAttributes(ICodeNodeImplementation node) { string saveIndentation = indentation; indentation += indent; foreach (KeyValuePair <ICodeKey, Object> KVP in node) { PrintAttribute(KVP.Key.ToString(), KVP.Value); } indentation = saveIndentation; }
// Print a parse tree node's type specification. private void PrintTypeSpecification(ICodeNodeImplementation node) { }
// Print a parse tree node's attributes. private void PrintAttributes(ICodeNodeImplementation node) { string saveIndentation = indentation; indentation += indent; foreach (KeyValuePair<ICodeKey, Object> KVP in node) PrintAttribute(KVP.Key.ToString(), KVP.Value); indentation = saveIndentation; }
// Print a parse tree node. private void PrintNode(ICodeNodeImplementation node) { Append(indentation); Append("<" + node.ToString()); PrintAttributes(node); PrintTypeSpecification(node); List<ICodeNode> childNodes = node.GetChildren(); // Print the node's children followed by the closing tag. if ((childNodes != null) && (childNodes.Count() > 0)) { Append(">"); PrintLine(); PrintChildNodes(childNodes); Append(indentation); Append("</" + node.ToString() + ">"); } else Append(" />"); // No children: Close off the tag PrintLine(); }