Definition at line 1022 of file XmlSerializationWriterCodeGen.cs.
1023 {
1025 {
1026 return;
1027 }
1029 {
1030 base.Writer.WriteLine(
"{");
1031 base.Writer.Indent++;
1035 {
1036 base.Writer.WriteLine(
"if (a != null) {");
1037 base.Writer.Indent++;
1038 }
1040 {
1042 {
1043 base.Writer.Write(
"Writer.WriteStartAttribute(null, ");
1045 base.Writer.Write(
", ");
1048 {
1050 }
1051 else
1052 {
1053 base.Writer.Write(
"null");
1054 }
1055 base.Writer.WriteLine(
");");
1056 }
1057 else
1058 {
1060 base.Writer.Write(
" sb = new ");
1062 base.Writer.WriteLine(
"();");
1063 }
1064 }
1067 {
1068 base.Writer.Write(
" e = ");
1071 {
1072 base.Writer.Write(
"((");
1074 base.Writer.WriteLine(
").GetEnumerator();");
1075 }
1077 {
1079 {
1080 base.Writer.Write(
"(");
1082 base.Writer.Write(
")");
1083 base.Writer.Write(
base.RaCodeGen.GetReflectionVariable(
memberTypeDesc.CSharpName,
"System.Collections.Generic.IEnumerable*"));
1084 base.Writer.WriteLine(
".Invoke(a, new object[0]);");
1085 }
1086 else
1087 {
1088 base.Writer.Write(
"((System.Collections.Generic.IEnumerable<");
1090 base.Writer.WriteLine(
">)a).GetEnumerator();");
1091 }
1092 }
1093 else
1094 {
1096 {
1097 base.Writer.Write(
"(");
1099 base.Writer.Write(
")");
1100 }
1102 base.Writer.WriteLine(
";");
1103 }
1104 base.Writer.WriteLine(
"if (e != null)");
1105 base.Writer.WriteLine(
"while (e.MoveNext()) {");
1106 base.Writer.Indent++;
1109 }
1110 else
1111 {
1112 base.Writer.Write(
"for (int i = 0; i < ");
1114 {
1115 base.Writer.WriteLine(
"a.Length; i++) {");
1116 }
1117 else
1118 {
1119 base.Writer.Write(
"((");
1121 base.Writer.WriteLine(
")a).Count; i++) {");
1122 }
1123 base.Writer.Indent++;
1126 }
1128 {
1130 {
1131 base.Writer.WriteLine(
"if (i != 0) Writer.WriteString(\" \");");
1132 base.Writer.Write(
"WriteValue(");
1133 }
1134 else
1135 {
1136 base.Writer.WriteLine(
"if (i != 0) sb.Append(\" \");");
1137 base.Writer.Write(
"sb.Append(");
1138 }
1140 {
1142 }
1143 else
1144 {
1146 }
1147 base.Writer.WriteLine(
");");
1148 }
1149 else
1150 {
1152 }
1153 base.Writer.Indent--;
1154 base.Writer.WriteLine(
"}");
1156 {
1158 {
1159 base.Writer.WriteLine(
"Writer.WriteEndAttribute();");
1160 }
1161 else
1162 {
1163 base.Writer.WriteLine(
"if (sb.Length != 0) {");
1164 base.Writer.Indent++;
1165 base.Writer.Write(
"WriteAttribute(");
1167 base.Writer.Write(
", ");
1170 {
1172 base.Writer.Write(
", ");
1173 }
1174 base.Writer.WriteLine(
"sb.ToString());");
1175 base.Writer.Indent--;
1176 base.Writer.WriteLine(
"}");
1177 }
1178 }
1180 {
1181 base.Writer.Indent--;
1182 base.Writer.WriteLine(
"}");
1183 }
1184 base.Writer.Indent--;
1185 base.Writer.WriteLine(
"}");
1186 }
1187 else
1188 {
1190 }
1191 }
void WriteQuotedCSharpString(string value)
void WriteArrayLocalDecl(string typeName, string variableName, string initValue, TypeDesc arrayTypeDesc)
void WritePrimitiveValue(TypeDesc typeDesc, string source, bool isElement)
void WriteLocalDecl(string typeName, string variableName, string initValue, bool useReflection)
void WriteAttribute(string source, AttributeAccessor attribute, string parent)
bool CanOptimizeWriteListSequence(TypeDesc listElementTypeDesc)
void WriteEnumValue(EnumMapping mapping, string source)
References System.Xml.Serialization.TypeDesc.ArrayElementTypeDesc, System.Xml.Serialization.XmlSerializationWriterCodeGen.CanOptimizeWriteListSequence(), System.Xml.Serialization.TypeDesc.CSharpName, System.Xml.Dictionary, System.FullName, System.source, System.text, System.Xml.Serialization.XmlSerializationWriterCodeGen.WriteArrayLocalDecl(), System.Xml.Serialization.XmlSerializationWriterCodeGen.WriteAttribute(), System.Xml.Serialization.XmlSerializationWriterCodeGen.WriteEnumValue(), System.Xml.Serialization.XmlSerializationWriterCodeGen.WriteLocalDecl(), System.Xml.Serialization.XmlSerializationWriterCodeGen.WritePrimitiveValue(), and System.Xml.Serialization.XmlSerializationCodeGen.WriteQuotedCSharpString().
Referenced by System.Xml.Serialization.XmlSerializationWriterCodeGen.GenerateMembersElement(), System.Xml.Serialization.XmlSerializationWriterCodeGen.GenerateTypeElement(), System.Xml.Serialization.XmlSerializationWriterCodeGen.WriteEnumAndArrayTypes(), and System.Xml.Serialization.XmlSerializationWriterCodeGen.WriteStructMethod().