MonoDevelop.Projects.Formats.MSBuild.SlnFileFormat.WriteDataNode C# (CSharp) Method

WriteDataNode() public method

public WriteDataNode ( StreamWriter sw, string prefix, MonoDevelop.Core.Serialization.DataNode node, int &id ) : void
sw System.IO.StreamWriter
prefix string
node MonoDevelop.Core.Serialization.DataNode
id int
return void
		void WriteDataNode (StreamWriter sw, string prefix, DataNode node, ref int id)
		{
			string name = node.Name;
			string newPrefix = prefix.Length > 0 ? prefix + "." + name: name;
			
			if (node is DataValue) {
				DataValue val = (DataValue) node;
				string value = EncodeString (val.Value);
				sw.WriteLine ("\t\t" + newPrefix + " = " + value);
			}
			else {
				DataItem it = (DataItem) node;
				sw.WriteLine ("\t\t" + newPrefix + " = $" + id);
				newPrefix = "$" + id;
				id ++;
				foreach (DataNode cn in it.ItemData)
					WriteDataNode (sw, newPrefix, cn, ref id);
			}
		}