1685 references to Writer
System.Private.Xml (1685)
System\Xml\Serialization\XmlSerializationReader.cs (942)
2259Writer.Write(Access); 2260Writer.Write(" class "); 2261Writer.Write(ClassName); 2262Writer.Write(" : "); 2263Writer.Write(typeof(System.Xml.Serialization.XmlSerializationReader).FullName); 2264Writer.WriteLine(" {"); 2265Writer.Indent++; 2326Writer.WriteLine(); 2329Writer.Write("string "); 2330Writer.Write(idName); 2331Writer.WriteLine(";"); 2334Writer.WriteLine(); 2335Writer.WriteLine("protected override void InitIDs() {"); 2336Writer.Indent++; 2341Writer.Write(idName); 2342Writer.Write(" = Reader.NameTable.Add("); 2344Writer.WriteLine(");"); 2346Writer.Indent--; 2347Writer.WriteLine("}"); 2349Writer.Indent--; 2350Writer.WriteLine("}"); 2369Writer.Write("if (Reader.IsStartElement("); 2371Writer.Write(", "); 2373Writer.WriteLine(")) {"); 2374Writer.Indent++; 2381Writer.WriteLine("else {"); 2382Writer.Indent++; 2384Writer.Write(func); 2385Writer.Write("("); 2386Writer.Write(node); 2389Writer.Write(", "); 2393ReflectionAwareCodeGen.WriteQuotedCSharpString(Writer, expectedElement); 2395Writer.WriteLine(");"); 2398Writer.Indent--; 2399Writer.WriteLine("}"); 2405Writer.WriteLine(); 2406Writer.WriteLine("protected override void InitCallbacks() {"); 2407Writer.Indent++; 2428Writer.Write("AddReadCallback("); 2430Writer.Write(", "); 2432Writer.Write(", "); 2433Writer.Write(RaCodeGen.GetStringForTypeof(mapping.TypeDesc.CSharpName, mapping.TypeDesc.UseReflection)); 2434Writer.Write(", new "); 2435Writer.Write(typeof(XmlSerializationReadCallback).FullName); 2436Writer.Write("(this."); 2437Writer.Write(methodName); 2438Writer.WriteLine("));"); 2443Writer.Indent--; 2444Writer.WriteLine("}"); 2448Writer.WriteLine(); 2449Writer.Write("object "); 2450Writer.Write(dummyArrayMethodName); 2451Writer.WriteLine("() {"); 2452Writer.Indent++; 2453Writer.WriteLine("// dummy array method"); 2454Writer.WriteLine("UnknownNode(null);"); 2455Writer.WriteLine("return null;"); 2456Writer.Indent--; 2457Writer.WriteLine("}"); 2505Writer.WriteLine(); 2506Writer.Write("public object[] "); 2507Writer.Write(methodName); 2508Writer.WriteLine("() {"); 2509Writer.Indent++; 2510Writer.WriteLine("Reader.MoveToContent();"); 2512Writer.Write("object[] p = new object["); 2513Writer.Write(mappings.Length.ToString(CultureInfo.InvariantCulture)); 2514Writer.WriteLine("];"); 2520Writer.Indent++; 2598if (members.Length > 0 && members[0].Mapping.IsReturnValue) Writer.WriteLine("IsReturnValue = true;"); 2608Writer.WriteLine("Reader.MoveToElement();"); 2615Writer.WriteLine("if (Reader.IsEmptyElement) { Reader.Skip(); Reader.MoveToContent(); continue; }"); 2616Writer.WriteLine("Reader.ReadStartElement();"); 2620Writer.WriteLine("int state = 0;"); 2623Writer.Indent++; 2628Writer.WriteLine("Reader.MoveToContent();"); 2635Writer.WriteLine("ReadEndElement();"); 2637Writer.Indent--; 2638Writer.WriteLine("}"); 2642Writer.WriteLine("Reader.MoveToContent();"); 2646Writer.WriteLine("return p;"); 2647Writer.Indent--; 2648Writer.WriteLine("}"); 2659Writer.Write(arrayName); 2660Writer.Write("["); 2661Writer.Write(i.ToString(CultureInfo.InvariantCulture)); 2662Writer.Write("] = "); 2666Writer.Write("null"); 2670Writer.Write(RaCodeGen.GetStringForCreateInstance(mappings[i].TypeDesc!.CSharpName, mappings[i].TypeDesc!.UseReflection, false, false)); 2672Writer.WriteLine(";"); 2684Writer.WriteLine(); 2685Writer.Write("public object[] "); 2686Writer.Write(methodName); 2687Writer.WriteLine("() {"); 2688Writer.Indent++; 2690Writer.WriteLine("Reader.MoveToContent();"); 2692Writer.Write("object[] p = new object["); 2693Writer.Write(mappings.Length.ToString(CultureInfo.InvariantCulture)); 2694Writer.WriteLine("];"); 2703Writer.Write("if (!"); 2705Writer.WriteLine(") throw CreateUnknownNodeException();"); 2707Writer.WriteLine("bool isEmptyWrapper = Reader.IsEmptyElement;"); 2708Writer.WriteLine("Reader.ReadStartElement();"); 2743if (members.Length > 0 && members[0].Mapping.IsReturnValue) Writer.WriteLine("IsReturnValue = true;"); 2751Writer.Indent++; 2755Writer.WriteLine("Reader.MoveToContent();"); 2760Writer.WriteLine("if (!isEmptyWrapper) ReadEndElement();"); 2765Writer.WriteLine("ReadReferencedElements();"); 2766Writer.WriteLine("return p;"); 2768Writer.Indent--; 2769Writer.WriteLine("}"); 2786Writer.Write(item); 2787Writer.Write(" "); 2788Writer.Write("ci ="); 2789Writer.Write($"({item})"); 2790Writer.Write(source); 2791Writer.WriteLine(";"); 2793Writer.WriteLine("for (int i = 0; i < ci.Length; i++) {"); 2794Writer.Indent++; 2795Writer.Write(RaCodeGen.GetStringForMethod("c", td.CSharpName, "Add", useReflection)); 2800Writer.Write("ci[i]"); 2802Writer.Write($"{RaCodeGen.GetReflectionVariable(typeof(Array).FullName!, "0")}[ci , i]"); 2805if (useReflection) Writer.WriteLine("}"); 2806Writer.WriteLine(");"); 2807Writer.Indent--; 2808Writer.WriteLine("}"); 2816Writer.WriteLine(); 2817Writer.Write("public object "); 2818Writer.Write(methodName); 2819Writer.WriteLine("() {"); 2820Writer.Indent++; 2821Writer.WriteLine("object o = null;"); 2827Writer.WriteLine("Reader.MoveToContent();"); 2832Writer.WriteLine("Referenced(o);"); 2833Writer.WriteLine("ReadReferencedElements();"); 2835Writer.WriteLine("return (object)o;"); 2836Writer.Indent--; 2837Writer.WriteLine("}"); 2856Writer.Write("("); 2857Writer.Write(mapping.TypeDesc!.CSharpName); 2858Writer.Write(")"); 2860Writer.Write(enumMethodName); 2861Writer.Write("("); 2862if (!mapping.IsSoap) Writer.Write(source); 2863Writer.Write(")"); 2867Writer.Write(source); 2873Writer.Write("CollapseWhitespace("); 2874Writer.Write(source); 2875Writer.Write(")"); 2879Writer.Write(source); 2886Writer.Write(typeof(XmlConvert).FullName); 2887Writer.Write("."); 2889Writer.Write("To"); 2890Writer.Write(mapping.TypeDesc.FormatterName); 2891Writer.Write("("); 2892Writer.Write(source); 2893Writer.Write(")"); 2928Writer.WriteLine(); 2929Writer.Write(typeof(Hashtable).FullName); 2930Writer.Write(" "); 2931Writer.Write(memberName); 2932Writer.WriteLine(";"); 2933Writer.WriteLine(); 2935Writer.Write("internal "); 2936Writer.Write(typeof(Hashtable).FullName); 2937Writer.Write(" "); 2938Writer.Write(propName); 2939Writer.WriteLine(" {"); 2940Writer.Indent++; 2942Writer.WriteLine("get {"); 2943Writer.Indent++; 2945Writer.Write("if ((object)"); 2946Writer.Write(memberName); 2947Writer.WriteLine(" == null) {"); 2948Writer.Indent++; 2950Writer.Write(typeof(Hashtable).FullName); 2951Writer.Write(" h = new "); 2952Writer.Write(typeof(Hashtable).FullName); 2953Writer.WriteLine("();"); 2959Writer.Write("h.Add("); 2963Writer.Write(", (long)"); 2964Writer.Write(mapping.TypeDesc.CSharpName); 2965Writer.Write(".@"); 2967Writer.Write(constants[i].Name); 2971Writer.Write(", "); 2972Writer.Write(string.Create(CultureInfo.InvariantCulture, $"{constants[i].Value}L")); 2975Writer.WriteLine(");"); 2978Writer.Write(memberName); 2979Writer.WriteLine(" = h;"); 2981Writer.Indent--; 2982Writer.WriteLine("}"); 2984Writer.Write("return "); 2985Writer.Write(memberName); 2986Writer.WriteLine(";"); 2988Writer.Indent--; 2989Writer.WriteLine("}"); 2991Writer.Indent--; 2992Writer.WriteLine("}"); 3004Writer.WriteLine(); 3010Writer.Write("object"); 3011Writer.Write(" "); 3012Writer.Write(methodName); 3013Writer.WriteLine("() {"); 3014Writer.Indent++; 3015Writer.WriteLine("string s = Reader.ReadElementString();"); 3019Writer.Write(useReflection ? "object" : fullTypeName); 3020Writer.Write(" "); 3021Writer.Write(methodName); 3022Writer.WriteLine("(string s) {"); 3023Writer.Indent++; 3031Writer.Write("return "); 3032Writer.Write(typeof(Enum).FullName); 3033Writer.Write(".ToObject("); 3034Writer.Write(RaCodeGen.GetStringForTypeof(fullTypeName, useReflection)); 3035Writer.Write(", ToEnum(s, "); 3036Writer.Write(tableName); 3037Writer.Write(", "); 3039Writer.WriteLine("));"); 3043Writer.Write("return ("); 3044Writer.Write(fullTypeName); 3045Writer.Write(")ToEnum(s, "); 3046Writer.Write(tableName); 3047Writer.Write(", "); 3049Writer.WriteLine(");"); 3054Writer.WriteLine("switch (s) {"); 3055Writer.Indent++; 3064Writer.Write("case "); 3066Writer.Write(": return "); 3067Writer.Write(RaCodeGen.GetStringForEnumMember(fullTypeName, c.Name, useReflection)); 3068Writer.WriteLine(";"); 3073Writer.Write("default: throw CreateUnknownConstantException(s, "); 3074Writer.Write(RaCodeGen.GetStringForTypeof(fullTypeName, useReflection)); 3075Writer.WriteLine(");"); 3076Writer.Indent--; 3077Writer.WriteLine("}"); 3080Writer.Indent--; 3081Writer.WriteLine("}"); 3088Writer.Write("if ("); 3090Writer.WriteLine(")"); 3091Writer.Indent++; 3099Writer.Write("return "); 3101Writer.Write($"({returnTypeName})"); 3102Writer.Write(methodName); 3103Writer.Write("("); 3105Writer.Write("isNullable, "); 3106Writer.WriteLine("false);"); 3108Writer.Indent--; 3125Writer.Write("if ("); 3127Writer.WriteLine(") {"); 3128Writer.Indent++; 3129Writer.WriteLine("Reader.ReadStartElement();"); 3135Writer.Write("object e = "); 3136Writer.Write(methodName); 3137Writer.WriteLine("(CollapseWhitespace(Reader.ReadString()));"); 3138Writer.WriteLine("ReadEndElement();"); 3139Writer.WriteLine("return e;"); 3140Writer.Indent--; 3141Writer.WriteLine("}"); 3147Writer.Write("if ("); 3149Writer.WriteLine(") {"); 3150Writer.Indent++; 3161Writer.Write(typeof(Array).FullName); 3163Writer.Write("object"); 3166Writer.Write(fullTypeName); 3167Writer.Write(" a = "); 3170Writer.Write(RaCodeGen.GetStringForCreateInstance(fullTypeName, td.UseReflection, false, false)); 3171Writer.WriteLine(";"); 3174Writer.WriteLine("null;"); 3177Writer.WriteLine("return a;"); 3178Writer.Indent--; 3179Writer.WriteLine("}"); 3191Writer.WriteLine(); 3193Writer.Write(typeName); 3194Writer.Write(" "); 3195Writer.Write(methodName); 3196Writer.WriteLine("(bool checkType) {"); 3197Writer.Indent++; 3199Writer.Write(typeName); 3200Writer.Write(" o = "); 3204Writer.Write("null"); 3208Writer.Write("default("); 3209Writer.Write(typeName); 3210Writer.Write(")"); 3212Writer.WriteLine(";"); 3214Writer.WriteLine("if (ReadNull())"); 3215Writer.Indent++; 3217Writer.WriteLine("return o;"); 3218Writer.Indent--; 3226Writer.WriteLine("return o;"); 3228Writer.Indent--; 3229Writer.WriteLine("}"); 3245Writer.WriteLine(); 3246Writer.Write(typeName); 3247Writer.Write(" "); 3248Writer.Write(methodName); 3249Writer.Write("("); 3251Writer.Write("bool isNullable, "); 3252Writer.WriteLine("bool checkType) {"); 3253Writer.Indent++; 3255Writer.Write(typeof(XmlQualifiedName).FullName); 3256Writer.WriteLine(" xsiType = checkType ? GetXsiType() : null;"); 3257Writer.WriteLine("bool isNull = false;"); 3259Writer.WriteLine("if (isNullable) isNull = ReadNull();"); 3261Writer.WriteLine("if (checkType) {"); 3264Writer.Indent++; 3265Writer.WriteLine("if (isNull) {"); 3266Writer.Indent++; 3267Writer.WriteLine($"if (xsiType != null) return ({typeName})ReadTypedNull(xsiType);"); 3268Writer.Write("else return "); 3271Writer.Write(RaCodeGen.GetStringForCreateInstance(structMapping.TypeDesc.CSharpName, useReflection, false, false)); 3272Writer.WriteLine(";"); 3275Writer.WriteLine("null;"); 3277Writer.Indent--; 3278Writer.WriteLine("}"); 3280Writer.Write("if (xsiType == null"); 3283Writer.Write(" || "); 3286Writer.WriteLine(") {"); 3289Writer.Indent++; 3290Writer.WriteLine($"return ReadTypedPrimitive(new System.Xml.XmlQualifiedName(\"{Soap.UrType}\", \"{XmlSchema.Namespace}\"));"); 3291Writer.Indent--; 3293Writer.WriteLine("}"); 3294Writer.WriteLine("else {"); 3295Writer.Indent++; 3299Writer.Write("return ReadTypedPrimitive(("); 3301Writer.Write("throw CreateUnknownTypeException(("); 3302Writer.Write(typeof(XmlQualifiedName).FullName); 3303Writer.WriteLine(")xsiType);"); 3304Writer.Indent--; 3305Writer.WriteLine("}"); 3307Writer.Indent--; 3308Writer.WriteLine("}"); 3310Writer.WriteLine("if (isNull) return null;"); 3314Writer.Write("throw CreateAbstractTypeException("); 3316Writer.Write(", "); 3318Writer.WriteLine(");"); 3324Writer.WriteLine("DecodeName = false;"); 3414Writer.WriteLine("Reader.MoveToElement();"); 3416Writer.WriteLine("if (Reader.IsEmptyElement) {"); 3417Writer.Indent++; 3418Writer.WriteLine("Reader.Skip();"); 3420Writer.WriteLine("return o;"); 3421Writer.Indent--; 3422Writer.WriteLine("}"); 3424Writer.WriteLine("Reader.ReadStartElement();"); 3427Writer.WriteLine("int state = 0;"); 3430Writer.Indent++; 3433Writer.WriteLine("Reader.MoveToContent();"); 3438Writer.WriteLine("ReadEndElement();"); 3439Writer.WriteLine("return o;"); 3441Writer.Indent--; 3442Writer.WriteLine("}"); 3450Writer.WriteLine(); 3451Writer.Write("object"); 3452Writer.Write(" "); 3453Writer.Write(methodName); 3454Writer.Write("("); 3455Writer.WriteLine(") {"); 3456Writer.Indent++; 3464Writer.Write("throw CreateAbstractTypeException("); 3466Writer.Write(", "); 3468Writer.WriteLine(");"); 3499Writer.WriteLine("Reader.MoveToElement();"); 3501Writer.WriteLine("if (Reader.IsEmptyElement) { Reader.Skip(); return o; }"); 3502Writer.WriteLine("Reader.ReadStartElement();"); 3505Writer.Indent++; 3508Writer.WriteLine("Reader.MoveToContent();"); 3512Writer.WriteLine("ReadEndElement();"); 3513Writer.WriteLine("return o;"); 3515Writer.Indent--; 3516Writer.WriteLine("}"); 3523Writer.WriteLine(); 3524Writer.Write("void "); 3525Writer.Write(fixupMethodName); 3526Writer.WriteLine("(object objFixup) {"); 3527Writer.Indent++; 3528Writer.WriteLine("Fixup fixup = (Fixup)objFixup;"); 3530Writer.WriteLine("string[] ids = fixup.Ids;"); 3538Writer.Write("if (ids["); 3539Writer.Write(fixupIndex); 3540Writer.WriteLine("] != null) {"); 3541Writer.Indent++; 3555Writer.WriteLine("try {"); 3556Writer.Indent++; 3562Writer.Write(targetSource); 3564Writer.WriteLine(";"); 3568Writer.Write(member.CheckSpecifiedSource); 3569Writer.WriteLine(" = true;"); 3577Writer.Indent--; 3578Writer.WriteLine("}"); 3581Writer.Indent--; 3582Writer.WriteLine("}"); 3587Writer.WriteLine("// get array of the collection items"); 3596Writer.Write("if ((object)("); 3597Writer.Write(memberSource); 3598Writer.WriteLine(") == null) {"); 3599Writer.Indent++; 3603Writer.Write("throw CreateReadOnlyCollectionException("); 3605Writer.WriteLine(");"); 3609Writer.Write(memberSource); 3610Writer.Write(" = "); 3611Writer.Write(RaCodeGen.GetStringForCreateInstance(typeDesc.CSharpName, typeDesc.UseReflection, typeDesc.CannotNew, true)); 3612Writer.WriteLine(";"); 3615Writer.Indent--; 3616Writer.WriteLine("}"); 3618Writer.Write("CollectionFixup collectionFixup = new CollectionFixup("); 3619Writer.Write(memberSource); 3620Writer.Write(", "); 3621Writer.Write("new "); 3622Writer.Write(typeof(XmlSerializationCollectionFixupCallback).FullName); 3623Writer.Write("(this."); 3624Writer.Write(create.Name); 3625Writer.Write("), "); 3626Writer.Write(targetSource); 3627Writer.WriteLine(");"); 3628Writer.WriteLine("AddFixup(collectionFixup);"); 3633Writer.Write("void "); 3634Writer.Write(c.Name); 3635Writer.WriteLine("(object collection, object collectionItems) {"); 3636Writer.Indent++; 3638Writer.WriteLine("if (collectionItems == null) return;"); 3639Writer.WriteLine("if (collection == null) return;"); 3648Writer.Indent--; 3649Writer.WriteLine("}"); 3654Writer.Write("((object) (("); 3655Writer.Write(typeof(XmlQualifiedName).FullName); 3656Writer.Write(")"); 3657Writer.Write(source); 3658Writer.Write(").Name == (object)"); 3660Writer.Write(" && (object) (("); 3661Writer.Write(typeof(XmlQualifiedName).FullName); 3662Writer.Write(")"); 3663Writer.Write(source); 3664Writer.Write(").Namespace == (object)"); 3666Writer.Write(")"); 3671Writer.Write("("); 3674Writer.Write("(object) "); 3675Writer.Write(source); 3676Writer.Write(".LocalName == (object)"); 3678Writer.Write(" && "); 3680Writer.Write("(object) "); 3681Writer.Write(source); 3682Writer.Write(".NamespaceURI == (object)"); 3684Writer.Write(")"); 3696Writer.Write(idName); 3705Writer.WriteLine("while (Reader.MoveToNextAttribute()) {"); 3706Writer.Indent++; 3726Writer.Write("else "); 3728Writer.Write("if ("); 3731Writer.Write("!"); 3732Writer.Write(member.ParamsReadSource); 3733Writer.Write(" && "); 3742Writer.WriteLine(") {"); 3743Writer.Indent++; 3746Writer.Indent--; 3747Writer.WriteLine("}"); 3751Writer.Write("else "); 3755Writer.WriteLine("if (IsXmlnsAttribute(Reader.Name)) {"); 3756Writer.Indent++; 3758Writer.Write("if ("); 3759Writer.Write(xmlnsMember.Source); 3760Writer.Write(" == null) "); 3761Writer.Write(xmlnsMember.Source); 3762Writer.Write(" = new "); 3763Writer.Write(xmlnsMember.Mapping.TypeDesc!.CSharpName); 3764Writer.WriteLine("();"); 3767Writer.Write($"(({xmlnsMember.Mapping.TypeDesc.CSharpName}){xmlnsMember.ArraySource})"); 3768Writer.WriteLine(".Add(Reader.Name.Length == 5 ? \"\" : Reader.LocalName, Reader.Value);"); 3770Writer.Indent--; 3771Writer.WriteLine("}"); 3773Writer.WriteLine("else {"); 3774Writer.Indent++; 3778Writer.WriteLine("if (!IsXmlnsAttribute(Reader.Name)) {"); 3779Writer.Indent++; 3783Writer.Write(typeof(XmlAttribute).FullName); 3784Writer.Write(" attr = "); 3785Writer.Write("("); 3786Writer.Write(typeof(XmlAttribute).FullName); 3787Writer.WriteLine(") Document.ReadNode(Reader);"); 3788Writer.WriteLine("ParseWsdlArrayType(attr);"); 3793Writer.Write(elseCall); 3794Writer.Write("("); 3795Writer.Write(firstParam); 3798Writer.Write(", "); 3810Writer.WriteLine(");"); 3812Writer.Indent--; 3813Writer.WriteLine("}"); 3815Writer.Indent--; 3816Writer.WriteLine("}"); 3828Writer.Write("attr"); 3830Writer.WriteLine(";"); 3834Writer.Write("if (attr is "); 3835Writer.Write(typeof(XmlAttribute).FullName); 3836Writer.WriteLine(") {"); 3837Writer.Indent++; 3839Writer.Write("("); 3840Writer.Write(typeof(XmlAttribute).FullName); 3841Writer.Write(")attr"); 3843Writer.WriteLine(";"); 3844Writer.Indent--; 3845Writer.WriteLine("}"); 3854Writer.WriteLine("string listValues = Reader.Value;"); 3855Writer.WriteLine("string[] vals = listValues.Split(null);"); 3856Writer.WriteLine("for (int i = 0; i < vals.Length; i++) {"); 3857Writer.Indent++; 3864Writer.WriteLine(";"); 3865Writer.Indent--; 3866Writer.WriteLine("}"); 3873Writer.WriteLine(";"); 3878Writer.Write(member.CheckSpecifiedSource); 3879Writer.WriteLine(" = true;"); 3883Writer.Write(member.ParamsReadSource); 3884Writer.WriteLine(" = true;"); 3907Writer.Write("Fixup fixup = new Fixup("); 3908Writer.Write(source); 3909Writer.Write(", "); 3910Writer.Write("new "); 3911Writer.Write(typeof(XmlSerializationFixupCallback).FullName); 3912Writer.Write("(this."); 3913Writer.Write(fixupMethodName); 3914Writer.Write("), "); 3915Writer.Write(fixupCount.ToString(CultureInfo.InvariantCulture)); 3916Writer.WriteLine(");"); 3917Writer.WriteLine("AddFixup(fixup);"); 3941Writer.Write("int "); 3942Writer.Write(c); 3943Writer.WriteLine(" = 0;"); 3950Writer.Write("int c"); 3951Writer.Write(member.ChoiceArrayName); 3952Writer.WriteLine(" = 0;"); 3961Writer.Write(member.Source); 3962Writer.Write(a); 3964Writer.WriteLine("});"); 3966Writer.WriteLine(");"); 3973Writer.Write("if ((object)("); 3974Writer.Write(member.Source); 3975Writer.Write(") == null) "); 3978Writer.Write("throw CreateReadOnlyCollectionException("); 3980Writer.WriteLine(");"); 3984Writer.Write(member.Source); 3985Writer.Write(" = "); 3986Writer.Write(RaCodeGen.GetStringForCreateInstance(typeDescFullName, useReflection, typeDesc.CannotNew, true)); 3987Writer.WriteLine(";"); 4038Writer.WriteLine("string tmp = null;"); 4041Writer.Write("if (Reader.NodeType == "); 4042Writer.Write(typeof(XmlNodeType).FullName); 4043Writer.WriteLine(".Element) {"); 4044Writer.Indent++; 4056Writer.Indent--; 4057Writer.WriteLine("}"); 4062Writer.WriteLine("else {"); 4063Writer.Indent++; 4064Writer.WriteLine(elseString); 4065Writer.Indent--; 4066Writer.WriteLine("}"); 4071Writer.Write("else if (Reader.NodeType == "); 4072Writer.Write(typeof(XmlNodeType).FullName); 4073Writer.WriteLine(".Text || "); 4074Writer.Write("Reader.NodeType == "); 4075Writer.Write(typeof(XmlNodeType).FullName); 4076Writer.WriteLine(".CDATA || "); 4077Writer.Write("Reader.NodeType == "); 4078Writer.Write(typeof(XmlNodeType).FullName); 4079Writer.WriteLine(".Whitespace || "); 4080Writer.Write("Reader.NodeType == "); 4081Writer.Write(typeof(XmlNodeType).FullName); 4082Writer.WriteLine(".SignificantWhitespace) {"); 4083Writer.Indent++; 4091Writer.Write(elseString); 4092Writer.WriteLine(";"); 4094Writer.Indent--; 4095Writer.WriteLine("}"); 4108Writer.Write("Document.CreateTextNode(Reader.ReadString())"); 4122Writer.Write("CollapseWhitespace(Reader.ReadString())"); 4126Writer.Write("Reader.ReadString()"); 4133Writer.Write("tmp = ReadString(tmp, "); 4135Writer.WriteLine("true);"); 4137Writer.WriteLine("false);"); 4140Writer.Write("tmp"); 4151Writer.WriteLine(";"); 4156Writer.WriteLine("string refElemId = null;"); 4157Writer.WriteLine("object refElem = ReadReferencingElement(null, null, true, out refElemId);"); 4159Writer.WriteLine("if (refElemId != null) {"); 4160Writer.Indent++; 4161Writer.Write(checkTypeHrefsSource); 4162Writer.WriteLine(".Add(refElemId);"); 4163Writer.Write(checkTypeHrefsSource); 4164Writer.WriteLine("IsObject.Add(false);"); 4165Writer.Indent--; 4166Writer.WriteLine("}"); 4167Writer.WriteLine("else if (refElem != null) {"); 4168Writer.Indent++; 4169Writer.Write(checkTypeHrefsSource); 4170Writer.WriteLine(".Add(refElem);"); 4171Writer.Write(checkTypeHrefsSource); 4172Writer.WriteLine("IsObject.Add(true);"); 4173Writer.Indent--; 4174Writer.WriteLine("}"); 4194Writer.WriteLine(elementElseString); 4216Writer.WriteLine("switch (state) {"); 4243Writer.WriteLine("do {"); 4244Writer.Indent++; 4251Writer.Write("else "); 4255Writer.Write("case "); 4256Writer.Write(cases.ToString(CultureInfo.InvariantCulture)); 4257Writer.WriteLine(":"); 4258Writer.Indent++; 4263Writer.Write("if ("); 4266Writer.Write("!"); 4267Writer.Write(member.ParamsReadSource); 4268Writer.Write(" && "); 4275Writer.Write(RaCodeGen.GetStringForTypeof(td.CSharpName, td.UseReflection)); 4279Writer.Write(RaCodeGen.GetStringForTypeof(e.Mapping!.TypeDesc!.CSharpName, e.Mapping.TypeDesc.UseReflection)); 4281Writer.Write(".IsAssignableFrom("); 4282Writer.Write(checkTypeSource); 4283Writer.Write("Type)"); 4288Writer.Write("(IsReturnValue || "); 4291Writer.Write("true"); 4298Writer.Write(")"); 4300Writer.WriteLine(") {"); 4301Writer.Indent++; 4306Writer.Write("if ("); 4307Writer.Write(checkTypeSource); 4308Writer.WriteLine(" != null) {"); 4309Writer.Indent++; 4315Writer.Write(RaCodeGen.GetStringForCreateInstance(e.Mapping.TypeDesc.CSharpName, e.Mapping.TypeDesc.UseReflection, false, true, $"({td.CSharpName}){checkTypeSource}")); 4320Writer.Write(checkTypeSource); 4323Writer.WriteLine(";"); 4326Writer.Indent--; 4327Writer.WriteLine("}"); 4331Writer.Write("fixup.Ids["); 4332Writer.Write(member.FixupIndex.ToString(CultureInfo.InvariantCulture)); 4333Writer.Write("] = "); 4334Writer.Write(checkTypeSource); 4335Writer.WriteLine("Id;"); 4343Writer.WriteLine("IsReturnValue = false;"); 4346Writer.Write(member.ParamsReadSource); 4347Writer.WriteLine(" = true;"); 4351Writer.WriteLine("break;"); 4353Writer.Indent--; 4354Writer.WriteLine("}"); 4360Writer.WriteLine("else {"); 4361Writer.Indent++; 4364Writer.Write("state = "); 4365Writer.Write(cases.ToString(CultureInfo.InvariantCulture)); 4366Writer.WriteLine(";"); 4369Writer.Indent--; 4370Writer.WriteLine("}"); 4372Writer.WriteLine("break;"); 4373Writer.Indent--; 4380Writer.WriteLine("default:"); 4381Writer.Indent++; 4389Writer.WriteLine("break;"); 4391Writer.Indent--; 4394Writer.WriteLine("} while (false);"); 4398Writer.WriteLine("}"); 4459Writer.Write(" soap[1] = "); 4467Writer.Write($"({arrayTypeFullName}[])"); 4468Writer.Write("ShrinkArray("); 4469Writer.Write(a); 4470Writer.Write(", "); 4471Writer.Write(c); 4472Writer.Write(", "); 4473Writer.Write(RaCodeGen.GetStringForTypeof(arrayTypeFullName, arrayUseReflection)); 4474Writer.Write(", "); 4476Writer.Write(")"); 4478Writer.WriteLine(";"); 4489Writer.Write($"({choiceTypeName}[])"); 4490Writer.Write("ShrinkArray("); 4491Writer.Write(a); 4492Writer.Write(", "); 4493Writer.Write(c); 4494Writer.Write(", "); 4495Writer.Write(RaCodeGen.GetStringForTypeof(choiceTypeName, choiceUseReflection)); 4496Writer.Write(", "); 4498Writer.Write(")"); 4500Writer.WriteLine(";"); 4505Writer.Write(member.Source); 4506Writer.Write(" = "); 4507Writer.Write(member.ArrayName); 4508Writer.WriteLine(";"); 4519Writer.Write("("); 4520Writer.Write(typeDesc.CSharpName); 4521Writer.Write(")"); 4527Writer.Write(source); 4529Writer.Write(" = "); 4537Writer.Write(")"); 4539Writer.Write("})"); 4546Writer.Write("object rre = "); 4547Writer.Write(fixupIndex >= 0 ? "ReadReferencingElement" : "ReadReferencedElement"); 4548Writer.Write("("); 4550Writer.Write(", "); 4554Writer.Write(", "); 4555Writer.Write("out fixup.Ids["); 4556Writer.Write((fixupIndex).ToString(CultureInfo.InvariantCulture)); 4557Writer.Write("]"); 4559Writer.WriteLine(");"); 4564Writer.WriteLine("if (rre != null) {"); 4565Writer.Indent++; 4567Writer.Indent--; 4568Writer.WriteLine("}"); 4572Writer.WriteLine("try {"); 4573Writer.Indent++; 4575Writer.Write("rre"); 4577Writer.WriteLine(";"); 4583Writer.WriteLine("if (!ReadNull()) {"); 4584Writer.Indent++; 4598Writer.Write("if (((object)("); 4599Writer.Write(member.ArrayName); 4600Writer.Write(") == null) || "); 4604Writer.Write("if ("); 4606Writer.WriteLine("(Reader.IsEmptyElement)) {"); 4607Writer.Indent++; 4608Writer.WriteLine("Reader.Skip();"); 4609Writer.Indent--; 4610Writer.WriteLine("}"); 4611Writer.WriteLine("else {"); 4612Writer.Indent++; 4614Writer.WriteLine("Reader.ReadStartElement();"); 4616Writer.Indent++; 4620Writer.WriteLine("Reader.MoveToContent();"); 4623Writer.Indent--; 4624Writer.WriteLine("ReadEndElement();"); 4625Writer.WriteLine("}"); 4629Writer.Indent--; 4630Writer.WriteLine("}"); 4633Writer.WriteLine("else {"); 4634Writer.Indent++; 4638Writer.Indent--; 4639Writer.WriteLine("}"); 4648Writer.Write(checkSpecified); 4649Writer.WriteLine(" = true;"); 4664Writer.Write(methodName); 4665Writer.Write("(true)"); 4667Writer.WriteLine(";"); 4673Writer.WriteLine("if (ReadNull()) {"); 4674Writer.Indent++; 4678Writer.Write(RaCodeGen.GetStringForCreateInstance(element.Mapping.TypeDesc.CSharpName, element.Mapping.TypeDesc.UseReflection, false, false)); 4682Writer.Write("null"); 4685Writer.WriteLine(";"); 4686Writer.Indent--; 4687Writer.WriteLine("}"); 4688Writer.Write("else "); 4692Writer.WriteLine("if (Reader.IsEmptyElement) {"); 4693Writer.Indent++; 4694Writer.WriteLine("Reader.Skip();"); 4695Writer.Indent--; 4696Writer.WriteLine("}"); 4697Writer.WriteLine("else {"); 4701Writer.WriteLine("{"); 4703Writer.Indent++; 4708Writer.WriteLine("if (Reader.IsEmptyElement) {"); 4709Writer.Indent++; 4710Writer.WriteLine("Reader.Skip();"); 4714Writer.Write("default(System.TimeSpan)"); 4718Writer.Write("default(System.DateTimeOffset)"); 4722Writer.Write("default(System.DateOnly)"); 4726Writer.Write("default(System.TimeOnly)"); 4729Writer.WriteLine(";"); 4730Writer.Indent--; 4731Writer.WriteLine("}"); 4732Writer.WriteLine("else {"); 4733Writer.Indent++; 4737Writer.WriteLine(";"); 4738Writer.Indent--; 4739Writer.WriteLine("}"); 4745Writer.Write("ReadElementQualifiedName()"); 4763Writer.WriteLine(";"); 4765Writer.Indent--; 4766Writer.WriteLine("}"); 4773Writer.Write("object rre = "); 4774Writer.Write(fixupIndex >= 0 ? "ReadReferencingElement" : "ReadReferencedElement"); 4775Writer.Write("("); 4777Writer.Write(", "); 4782Writer.Write(", out fixup.Ids["); 4783Writer.Write((fixupIndex).ToString(CultureInfo.InvariantCulture)); 4784Writer.Write("]"); 4786Writer.Write(")"); 4788Writer.WriteLine(";"); 4792Writer.WriteLine("if (rre != null) {"); 4793Writer.Indent++; 4796Writer.WriteLine("try {"); 4797Writer.Indent++; 4799Writer.Write("rre"); 4801Writer.WriteLine(";"); 4803Writer.Write("Referenced("); 4804Writer.Write(source); 4805Writer.WriteLine(");"); 4808Writer.Indent--; 4809Writer.WriteLine("}"); 4822Writer.Write("if ((object)("); 4823Writer.Write(arrayName); 4824Writer.Write(") == null) Reader.Skip(); else "); 4827Writer.Write(methodName); 4828Writer.Write("("); 4832Writer.Write(", "); 4834Writer.Write("true"); 4835Writer.Write(")"); 4837Writer.WriteLine(";"); 4847Writer.Write(isDoc ? "ReadXmlDocument(" : "ReadXmlNode("); 4848Writer.Write(element.Any ? "false" : "true"); 4849Writer.Write(")"); 4851Writer.WriteLine(";"); 4858Writer.Write(typeof(XmlQualifiedName).FullName); 4859Writer.WriteLine(" tser = GetXsiType();"); 4860Writer.Write("if (tser == null"); 4861Writer.Write(" || "); 4864Writer.WriteLine(") {"); 4865Writer.Indent++; 4868Writer.Write("ReadSerializable(( "); 4869Writer.Write(typeof(IXmlSerializable).FullName); 4870Writer.Write(")"); 4873Writer.Write(RaCodeGen.GetStringForCreateInstance(sm.TypeDesc!.CSharpName, false, false, false, "\"default\"")); 4877Writer.Write(RaCodeGen.GetStringForCreateInstance(sm.TypeDesc!.CSharpName, sm.TypeDesc.UseReflection, sm.TypeDesc.CannotNew, false)); 4882Writer.WriteLine(", true"); 4884Writer.Write(")"); 4886Writer.WriteLine(";"); 4889Writer.Indent--; 4890Writer.WriteLine("}"); 4911Writer.Write(choiceSource); 4912Writer.Write(" = "); 4914Writer.Write(RaCodeGen.GetStringForEnumMember(enumTypeName, choice.MemberIds[elementIndex], choice.Mapping.TypeDesc.UseReflection)); 4915Writer.WriteLine(";"); 4925Writer.Write("else if (tser == null"); 4926Writer.Write(" || "); 4929Writer.WriteLine(") {"); 4930Writer.Indent++; 4937Writer.Write("ReadSerializable(( "); 4938Writer.Write(typeof(IXmlSerializable).FullName); 4939Writer.Write(")"); 4940Writer.Write(RaCodeGen.GetStringForCreateInstance(derived.TypeDesc!.CSharpName, derived.TypeDesc.UseReflection, derived.TypeDesc.CannotNew, false)); 4943Writer.WriteLine(", true"); 4945Writer.Write(")"); 4947Writer.WriteLine(";"); 4951Writer.Write("throw CreateBadDerivationException("); 4953Writer.Write(", "); 4955Writer.Write(", "); 4957Writer.Write(", "); 4959Writer.Write(", "); 4961Writer.Write(", "); 4963Writer.WriteLine(");"); 4968Writer.WriteLine($"// missing real mapping for {derived.XsiType}"); 4969Writer.Write("throw CreateMissingIXmlSerializableType("); 4971Writer.Write(", "); 4973Writer.Write(", "); 4975Writer.WriteLine(");"); 4978Writer.Indent--; 4979Writer.WriteLine("}"); 4987Writer.WriteLine("Reader.MoveToContent();"); 4988Writer.Write("while (Reader.NodeType != "); 4989Writer.Write(typeof(XmlNodeType).FullName); 4990Writer.Write(".EndElement && Reader.NodeType != "); 4991Writer.Write(typeof(XmlNodeType).FullName); 4992Writer.WriteLine(".None) {"); 4997Writer.Indent--; 4998Writer.WriteLine("}"); 5004Writer.Write(length <= StackallocLimit ? 5007Writer.Write(length.ToString(CultureInfo.InvariantCulture)); 5008Writer.WriteLine("];"); 5013Writer.WriteLine("Reader.MoveToContent();"); 5014Writer.Write("while (Reader.NodeType == "); 5015Writer.Write(typeof(XmlNodeType).FullName); 5016Writer.WriteLine(".Element) {"); 5017Writer.Indent++; 5018Writer.Write("string root = Reader.GetAttribute(\"root\", \""); 5019Writer.Write(Soap.Encoding); 5020Writer.WriteLine("\");"); 5021Writer.Write("if (root == null || "); 5022Writer.Write(typeof(XmlConvert).FullName); 5023Writer.WriteLine(".ToBoolean(root)) break;"); 5024Writer.WriteLine("ReadReferencedElement();"); 5025Writer.WriteLine("Reader.MoveToContent();"); 5031Writer.Write(value ? "true" : "false"); 5036Writer.Write(typeof(ArrayList).FullName); 5037Writer.Write(" "); 5038Writer.Write(source); 5039Writer.Write(" = new "); 5040Writer.Write(typeof(ArrayList).FullName); 5041Writer.WriteLine("();"); 5043Writer.Write(typeof(ArrayList).FullName); 5044Writer.Write(" "); 5045Writer.Write(source); 5046Writer.Write("IsObject = new "); 5047Writer.Write(typeof(ArrayList).FullName); 5048Writer.WriteLine("();"); 5053Writer.WriteLine("int isObjectIndex = 0;"); 5054Writer.Write("foreach (object obj in "); 5055Writer.Write(listSource); 5056Writer.WriteLine(") {"); 5057Writer.Indent++; 5058Writer.WriteLine("bool isReferenced = true;"); 5059Writer.Write("bool isObject = (bool)"); 5060Writer.Write(listSource); 5061Writer.WriteLine("IsObject[isObjectIndex++];"); 5062Writer.WriteLine("object refObj = isObject ? obj : GetTarget((string)obj);"); 5063Writer.WriteLine("if (refObj == null) continue;"); 5064Writer.Write(typeof(Type).FullName); 5065Writer.WriteLine(" refObjType = refObj.GetType();"); 5066Writer.WriteLine("string refObjId = null;"); 5070Writer.WriteLine("if (isObject && isReferenced) Referenced(refObj); // need to mark this obj as ref'd since we didn't do GetTarget"); 5071Writer.Indent--; 5072Writer.WriteLine("}"); 5077Writer.Write("if (Reader.GetAttribute(\"root\", \""); 5078Writer.Write(Soap.Encoding); 5079Writer.WriteLine("\") == \"0\") {"); 5080Writer.Indent++; 5081Writer.WriteLine(source); 5082Writer.Indent--; 5083Writer.WriteLine("}"); 5092Writer.Write(useReflection ? "object" : fullTypeName); 5093Writer.Write(" "); 5094Writer.Write(local); 5095Writer.WriteLine(";"); 5099Writer.WriteLine("try {"); 5100Writer.Indent++; 5102Writer.Write(local); 5103Writer.Write(" = "); 5104Writer.Write(RaCodeGen.GetStringForCreateInstance(fullTypeName, useReflection, mapping.TypeDesc.CannotNew, true)); 5105Writer.WriteLine(";"); 5109Writer.Indent++; 5110Writer.Write("throw CreateInaccessibleConstructorException("); 5112Writer.WriteLine(");"); 5115Writer.Indent++; 5117Writer.Write("throw CreateCtorHasSecurityException("); 5119Writer.WriteLine(");"); 5121Writer.Indent--; 5122Writer.WriteLine("}"); 5128Writer.Indent--; 5129Writer.WriteLine("}"); 5130Writer.Write("catch ("); 5131Writer.Write(exceptionType.FullName); 5132Writer.WriteLine(") {"); 5138Writer.Indent++; 5139Writer.Write("throw CreateInvalidCastException("); 5140Writer.Write(RaCodeGen.GetStringForTypeof(typeDesc.CSharpName, typeDesc.UseReflection)); 5141Writer.Write(", "); 5142Writer.Write(source); 5144Writer.WriteLine(", null);"); 5147Writer.Write(", (string)"); 5148Writer.Write(id); 5149Writer.WriteLine(");"); 5151Writer.Indent--; 5152Writer.WriteLine("}");
System\Xml\Serialization\XmlSerializationWriter.cs (743)
2297Writer.Write(Access); 2298Writer.Write(" class "); 2299Writer.Write(ClassName); 2300Writer.Write(" : "); 2301Writer.Write(typeof(System.Xml.Serialization.XmlSerializationWriter).FullName); 2302Writer.WriteLine(" {"); 2303Writer.Indent++; 2356Writer.Indent--; 2357Writer.WriteLine("}"); 2377Writer.WriteLine(); 2378Writer.WriteLine("protected override void InitCallbacks() {"); 2379Writer.Indent++; 2390Writer.Write("AddWriteCallback("); 2391Writer.Write(RaCodeGen.GetStringForTypeof(typeMapping.TypeDesc.CSharpName, typeMapping.TypeDesc.UseReflection)); 2392Writer.Write(", "); 2394Writer.Write(", "); 2396Writer.Write(", new "); 2397Writer.Write(typeof(System.Xml.Serialization.XmlSerializationWriteCallback).FullName); 2398Writer.Write("(this."); 2399Writer.Write(methodName); 2400Writer.WriteLine("));"); 2405Writer.Indent--; 2406Writer.WriteLine("}"); 2416Writer.WriteLine(" {"); 2417Writer.Indent++; 2420Writer.Write(nullable ? ("WriteNullableQualifiedName" + suffix) : "WriteElementQualifiedName"); 2421Writer.Write("("); 2425Writer.Write(", "); 2428Writer.Write(", "); 2429Writer.Write(source); 2433Writer.Write(", new System.Xml.XmlQualifiedName("); 2435Writer.Write(", "); 2437Writer.Write(")"); 2440Writer.WriteLine(");"); 2444Writer.Indent--; 2445Writer.WriteLine("}"); 2458Writer.Write(methodName); 2459Writer.Write("("); 2460Writer.Write(source); 2461Writer.Write(")"); 2468Writer.Write(source); 2474Writer.Write(typeof(XmlConvert).FullName); 2475Writer.Write(".ToString(("); 2476Writer.Write(typeDesc.CSharpName); 2477Writer.Write(")"); 2478Writer.Write(source); 2479Writer.Write(")"); 2483Writer.Write("From"); 2484Writer.Write(typeDesc.FormatterName); 2485Writer.Write("("); 2486Writer.Write(source); 2487Writer.Write(")"); 2506Writer.Write("if ("); 2508Writer.Write(ReflectionAwareCodeGen.GetStringForEnumLongValue(source, mapping.TypeDesc.UseReflection)); 2510Writer.Write(source); 2511Writer.Write(" != "); 2514Writer.Write("("); 2521Writer.WriteLine(" | "); 2522Writer.Write(RaCodeGen.GetStringForEnumCompare((EnumMapping)mapping, values[i], mapping.TypeDesc.UseReflection)); 2524Writer.Write(")"); 2528Writer.Write(RaCodeGen.GetStringForEnumCompare((EnumMapping)mapping, (string)defaultValue!, mapping.TypeDesc.UseReflection)); 2530Writer.Write(")"); 2536Writer.WriteLine(" {"); 2537Writer.Indent++; 2540Writer.Write(method); 2541Writer.Write("("); 2545Writer.Write(", "); 2549Writer.Write(", "); 2562Writer.Write(", new System.Xml.XmlQualifiedName("); 2564Writer.Write(", "); 2566Writer.Write(")"); 2569Writer.WriteLine(");"); 2573Writer.Indent--; 2574Writer.WriteLine("}"); 2580Writer.Write(methodName); 2581Writer.Write("("); 2583Writer.Write(", "); 2586Writer.Write("null"); 2592Writer.WriteLine(");"); 2597Writer.Write(methodName); 2598Writer.Write("("); 2600Writer.Write(", "); 2603Writer.Write("null"); 2609Writer.Write(", null, "); 2611Writer.Write("true"); 2613Writer.Write("false"); 2614Writer.WriteLine(");"); 2624Writer.WriteLine("WriteEndElement();"); 2628Writer.Write("WriteEndElement("); 2629Writer.Write(source); 2630Writer.WriteLine(");"); 2657Writer.WriteLine(); 2658Writer.Write("public void "); 2659Writer.Write(methodName); 2660Writer.WriteLine("(object[] p) {"); 2661Writer.Indent++; 2663Writer.WriteLine("WriteStartDocument();"); 2667Writer.WriteLine("TopLevelElement();"); 2673Writer.WriteLine("int pLength = p.Length;"); 2684Writer.Write("if (pLength > "); 2685Writer.Write(xmlnsMember.ToString(CultureInfo.InvariantCulture)); 2686Writer.WriteLine(") {"); 2687Writer.Indent++; 2689Writer.Indent--; 2690Writer.WriteLine("}"); 2718Writer.Write("if (pLength > "); 2719Writer.Write(index); 2720Writer.WriteLine(") {"); 2721Writer.Indent++; 2725Writer.Write("if (pLength <= "); 2726Writer.Write(specifiedPosition.ToString(CultureInfo.InvariantCulture)); 2727Writer.Write(" || "); 2728Writer.Write(specifiedSource); 2729Writer.WriteLine(") {"); 2730Writer.Indent++; 2737Writer.Indent--; 2738Writer.WriteLine("}"); 2741Writer.Indent--; 2742Writer.WriteLine("}"); 2773Writer.Write("if (pLength > "); 2774Writer.Write(index); 2775Writer.WriteLine(") {"); 2776Writer.Indent++; 2780Writer.Write("if (pLength <= "); 2781Writer.Write(specifiedPosition.ToString(CultureInfo.InvariantCulture)); 2782Writer.Write(" || "); 2783Writer.Write(specifiedSource); 2784Writer.WriteLine(") {"); 2785Writer.Indent++; 2812Writer.Write("WriteRpcResult("); 2814Writer.Write(", "); 2816Writer.WriteLine(");"); 2824Writer.Indent--; 2825Writer.WriteLine("}"); 2828Writer.Indent--; 2829Writer.WriteLine("}"); 2841Writer.Write("if (pLength > "); 2842Writer.Write(mapping.Members.Length.ToString(CultureInfo.InvariantCulture)); 2843Writer.WriteLine(") {"); 2844Writer.Indent++; 2848Writer.Indent--; 2849Writer.WriteLine("}"); 2851Writer.WriteLine("WriteReferencedElements();"); 2853Writer.Indent--; 2854Writer.WriteLine("}"); 2864Writer.WriteLine(); 2865Writer.Write("public void "); 2866Writer.Write(methodName); 2867Writer.WriteLine("(object o) {"); 2868Writer.Indent++; 2870Writer.WriteLine("WriteStartDocument();"); 2872Writer.WriteLine("if (o == null) {"); 2873Writer.Indent++; 2883Writer.WriteLine("return;"); 2884Writer.Indent--; 2885Writer.WriteLine("}"); 2889Writer.WriteLine("TopLevelElement();"); 2896Writer.WriteLine("WriteReferencedElements();"); 2898Writer.Indent--; 2899Writer.WriteLine("}"); 2911Writer.WriteLine(); 2915Writer.Write("void "); 2916Writer.Write(methodName); 2917Writer.WriteLine("(object e) {"); 2922Writer.Write("string "); 2923Writer.Write(methodName); 2924Writer.Write("("); 2925Writer.Write(mapping.TypeDesc.UseReflection ? "object" : fullTypeName); 2926Writer.WriteLine(" v) {"); 2928Writer.Indent++; 2929Writer.WriteLine("string s = null;"); 2936Writer.WriteLine($"switch ({ReflectionAwareCodeGen.GetStringForEnumLongValue("v", mapping.TypeDesc.UseReflection)} ){{"); 2938Writer.WriteLine("switch (v) {"); 2939Writer.Indent++; 2946Writer.Write("s = "); 2948Writer.WriteLine("; break;"); 2956Writer.Write("default: s = FromEnum("); 2957Writer.Write(ReflectionAwareCodeGen.GetStringForEnumLongValue("v", mapping.TypeDesc.UseReflection)); 2958Writer.Write(", new string[] {"); 2959Writer.Indent++; 2964Writer.WriteLine(", "); 2967Writer.Write("}, new "); 2968Writer.Write(typeof(long).FullName); 2969Writer.Write("[] {"); 2975Writer.WriteLine(", "); 2976Writer.Write("(long)"); 2978Writer.Write(c.Value.ToString(CultureInfo.InvariantCulture)); 2981Writer.Write(fullTypeName); 2982Writer.Write(".@"); 2984Writer.Write(c.Name); 2987Writer.Indent--; 2988Writer.Write("}, "); 2990Writer.WriteLine("); break;"); 2994Writer.Write("default: throw CreateInvalidEnumValueException("); 2995Writer.Write(ReflectionAwareCodeGen.GetStringForEnumLongValue("v", mapping.TypeDesc.UseReflection)); 2996Writer.Write(".ToString(System.Globalization.CultureInfo.InvariantCulture), "); 2998Writer.WriteLine(");"); 3000Writer.Indent--; 3001Writer.WriteLine("}"); 3005Writer.Write("WriteXsiType("); 3007Writer.Write(", "); 3009Writer.WriteLine(");"); 3010Writer.WriteLine("Writer.WriteString(s);"); 3014Writer.WriteLine("return s;"); 3016Writer.Indent--; 3017Writer.WriteLine("}"); 3025Writer.Write("if ("); 3027Writer.WriteLine(") {"); 3028Writer.Indent++; 3037Writer.Write(methodName); 3038Writer.Write("(n, ns,"); 3039if (!derived.TypeDesc.UseReflection) Writer.Write($"({fullTypeName})"); 3040Writer.Write("o"); 3042Writer.Write(", isNullable"); 3043Writer.Write(", true"); 3044Writer.WriteLine(");"); 3045Writer.WriteLine("return;"); 3046Writer.Indent--; 3047Writer.WriteLine("}"); 3064Writer.Write("if ("); 3066Writer.WriteLine(") {"); 3067Writer.Indent++; 3075Writer.WriteLine("Writer.WriteStartElement(n, ns);"); 3076Writer.Write("WriteXsiType("); 3078Writer.Write(", "); 3080Writer.WriteLine(");"); 3081Writer.Write("Writer.WriteString("); 3082Writer.Write(methodName); 3083Writer.Write("("); 3084if (!mapping.TypeDesc.UseReflection) Writer.Write($"({fullTypeName})"); 3085Writer.WriteLine("o));"); 3086Writer.WriteLine("Writer.WriteEndElement();"); 3087Writer.WriteLine("return;"); 3088Writer.Indent--; 3089Writer.WriteLine("}"); 3096Writer.Write("if ("); 3101Writer.WriteLine(") {"); 3102Writer.Indent++; 3104Writer.WriteLine("Writer.WriteStartElement(n, ns);"); 3105Writer.Write("WriteXsiType("); 3107Writer.Write(", "); 3109Writer.WriteLine(");"); 3113Writer.WriteLine("Writer.WriteEndElement();"); 3114Writer.WriteLine("return;"); 3115Writer.Indent--; 3116Writer.WriteLine("}"); 3128Writer.WriteLine(); 3129Writer.Write("void "); 3130Writer.Write(methodName); 3136Writer.WriteLine("(object s) {"); 3137Writer.Indent++; 3142Writer.Write("(string n, string ns, "); 3143Writer.Write(mapping.TypeDesc.UseReflection ? "object" : fullTypeName); 3144Writer.Write(" o"); 3146Writer.Write(", bool isNullable"); 3147Writer.WriteLine(", bool needType) {"); 3148Writer.Indent++; 3151Writer.WriteLine("if ((object)o == null) {"); 3152Writer.Indent++; 3153Writer.WriteLine("if (isNullable) WriteNullTagLiteral(n, ns);"); 3154Writer.WriteLine("return;"); 3155Writer.Indent--; 3156Writer.WriteLine("}"); 3158Writer.WriteLine("if (!needType) {"); 3159Writer.Indent++; 3161Writer.Write(typeof(Type).FullName); 3162Writer.WriteLine(" t = o.GetType();"); 3163Writer.Write("if ("); 3165Writer.WriteLine(") {"); 3166Writer.WriteLine("}"); 3167Writer.WriteLine("else {"); 3168Writer.Indent++; 3175Writer.WriteLine("WriteTypedPrimitive(n, ns, o, true);"); 3176Writer.WriteLine("return;"); 3180Writer.WriteLine("throw CreateUnknownTypeException(o);"); 3182Writer.Indent--; 3183Writer.WriteLine("}"); 3184Writer.Indent--; 3185Writer.WriteLine("}"); 3192Writer.WriteLine("EscapeName = false;"); 3211Writer.Write("WriteStartElement(n, ns, o, false, "); 3213Writer.Write("null"); 3215Writer.Write(xmlnsSource); 3217Writer.WriteLine(");"); 3220Writer.Write("if (needType) WriteXsiType("); 3222Writer.Write(", "); 3224Writer.WriteLine(");"); 3239Writer.Write("if ("); 3242Writer.Write(methodInvoke); 3243Writer.WriteLine(") {"); 3244Writer.Indent++; 3248Writer.Write("if ("); 3251Writer.Write(memberGet); 3252Writer.WriteLine(") {"); 3253Writer.Indent++; 3259Writer.Indent--; 3260Writer.WriteLine("}"); 3264Writer.Indent--; 3265Writer.WriteLine("}"); 3280Writer.Write("if ("); 3283Writer.Write(methodInvoke); 3284Writer.WriteLine(") {"); 3285Writer.Indent++; 3289Writer.Write("if ("); 3292Writer.Write(memberGet); 3293Writer.WriteLine(") {"); 3294Writer.Indent++; 3307Writer.Indent--; 3308Writer.WriteLine("}"); 3312Writer.Indent--; 3313Writer.WriteLine("}"); 3321Writer.Indent--; 3322Writer.WriteLine("}"); 3340Writer.WriteLine("{"); 3341Writer.Indent++; 3346Writer.WriteLine("if (a != null) {"); 3347Writer.Indent++; 3353Writer.Write("Writer.WriteStartAttribute(null, "); 3355Writer.Write(", "); 3363Writer.Write("null"); 3365Writer.WriteLine(");"); 3369Writer.Write(typeof(StringBuilder).FullName); 3370Writer.Write(" sb = new "); 3371Writer.Write(typeof(StringBuilder).FullName); 3372Writer.WriteLine("();"); 3379Writer.Write(" e = "); 3380Writer.Write(typeof(IEnumerator).FullName); 3383Writer.Write("(("); 3384Writer.Write(typeof(IEnumerable).FullName); 3385Writer.WriteLine(").GetEnumerator();"); 3392Writer.Write("("); 3393Writer.Write(typeof(IEnumerator).FullName); 3394Writer.Write(")"); 3395Writer.Write(RaCodeGen.GetReflectionVariable(memberTypeDesc.CSharpName, "System.Collections.Generic.IEnumerable*")); 3396Writer.WriteLine(".Invoke(a, new object[0]);"); 3400Writer.Write("((System.Collections.Generic.IEnumerable<"); 3401Writer.Write(arrayElementTypeDesc.CSharpName); 3402Writer.WriteLine(">)a).GetEnumerator();"); 3409Writer.Write("("); 3410Writer.Write(typeof(IEnumerator).FullName); 3411Writer.Write(")"); 3413Writer.Write(RaCodeGen.GetStringForMethodInvoke("a", memberTypeDesc.CSharpName, "GetEnumerator", memberTypeDesc.UseReflection)); 3414Writer.WriteLine(";"); 3416Writer.WriteLine("if (e != null)"); 3417Writer.WriteLine("while (e.MoveNext()) {"); 3418Writer.Indent++; 3425Writer.Write("for (int i = 0; i < "); 3428Writer.WriteLine("a.Length; i++) {"); 3432Writer.Write("(("); 3433Writer.Write(typeof(ICollection).FullName); 3434Writer.WriteLine(")a).Count; i++) {"); 3436Writer.Indent++; 3445Writer.WriteLine("if (i != 0) Writer.WriteString(\" \");"); 3446Writer.Write("WriteValue("); 3450Writer.WriteLine("if (i != 0) sb.Append(\" \");"); 3451Writer.Write("sb.Append("); 3457Writer.WriteLine(");"); 3463Writer.Indent--; 3464Writer.WriteLine("}"); 3470Writer.WriteLine("Writer.WriteEndAttribute();"); 3474Writer.WriteLine("if (sb.Length != 0) {"); 3475Writer.Indent++; 3477Writer.Write("WriteAttribute("); 3479Writer.Write(", "); 3484Writer.Write(", "); 3486Writer.WriteLine("sb.ToString());"); 3487Writer.Indent--; 3488Writer.WriteLine("}"); 3494Writer.Indent--; 3495Writer.WriteLine("}"); 3497Writer.Indent--; 3498Writer.WriteLine("}"); 3513Writer.Write("WriteXmlAttribute("); 3514Writer.Write(source); 3515Writer.Write(", "); 3516Writer.Write(parent); 3517Writer.WriteLine(");"); 3544Writer.WriteLine("{"); 3545Writer.Indent++; 3550Writer.WriteLine("if (a != null) {"); 3551Writer.Indent++; 3559Writer.WriteLine("if (c == null || c.Length < a.Length) {"); 3560Writer.Indent++; 3561Writer.Write("throw CreateInvalidChoiceIdentifierValueException("); 3563Writer.Write(", "); 3565Writer.Write(");"); 3566Writer.Indent--; 3567Writer.WriteLine("}"); 3573Writer.Indent--; 3574Writer.WriteLine("}"); 3576Writer.Indent--; 3577Writer.WriteLine("}"); 3587Writer.Write(typeof(IEnumerator).FullName); 3588Writer.Write(" e = "); 3591Writer.Write("(("); 3592Writer.Write(typeof(IEnumerable).FullName); 3593Writer.Write(")"); 3594Writer.Write(arrayName); 3595Writer.WriteLine(").GetEnumerator();"); 3602Writer.Write("("); 3603Writer.Write(typeof(IEnumerator).FullName); 3604Writer.Write(")"); 3605Writer.Write(RaCodeGen.GetReflectionVariable(arrayTypeDesc.CSharpName, "System.Collections.Generic.IEnumerable*")); 3606Writer.Write(".Invoke("); 3607Writer.Write(arrayName); 3608Writer.WriteLine(", new object[0]);"); 3612Writer.Write("((System.Collections.Generic.IEnumerable<"); 3613Writer.Write(arrayElementTypeDesc.CSharpName); 3614Writer.Write(">)"); 3615Writer.Write(arrayName); 3616Writer.WriteLine(").GetEnumerator();"); 3623Writer.Write("("); 3624Writer.Write(typeof(IEnumerator).FullName); 3625Writer.Write(")"); 3627Writer.Write(RaCodeGen.GetStringForMethodInvoke(arrayName, arrayTypeDesc.CSharpName, "GetEnumerator", arrayTypeDesc.UseReflection)); 3628Writer.WriteLine(";"); 3630Writer.WriteLine("if (e != null)"); 3631Writer.WriteLine("while (e.MoveNext()) {"); 3632Writer.Indent++; 3639Writer.Write("for (int i"); 3640Writer.Write(arrayName); 3641Writer.Write(" = 0; i"); 3642Writer.Write(arrayName); 3643Writer.Write(" < "); 3646Writer.Write(arrayName); 3647Writer.Write(".Length"); 3651Writer.Write("(("); 3652Writer.Write(typeof(ICollection).FullName); 3653Writer.Write(")"); 3654Writer.Write(arrayName); 3655Writer.Write(").Count"); 3657Writer.Write("; i"); 3658Writer.Write(arrayName); 3659Writer.WriteLine("++) {"); 3660Writer.Indent++; 3678Writer.Indent--; 3679Writer.WriteLine("}"); 3703Writer.Write("if ((object)("); 3704Writer.Write(source); 3705Writer.Write(") != null)"); 3707Writer.WriteLine("{"); 3708Writer.Indent++; 3738if (wroteFirstIf) Writer.Write("else "); 3740Writer.Write("if ("); 3741Writer.Write(enumUseReflection ? ReflectionAwareCodeGen.GetStringForEnumLongValue(enumSource!, enumUseReflection) : enumSource); 3742Writer.Write(" == "); 3743Writer.Write(enumFullName); 3746Writer.Write(" && ((object)("); 3747Writer.Write(source); 3748Writer.Write(") != null)"); 3750Writer.WriteLine(") {"); 3751Writer.Indent++; 3759Writer.Indent--; 3760Writer.WriteLine("}"); 3767if (wroteFirstIf) Writer.Write("else "); 3769Writer.Write("if ("); 3771Writer.WriteLine(") {"); 3772Writer.Indent++; 3777Writer.Indent--; 3778Writer.WriteLine("}"); 3783if (elements.Length - anyCount > 0) Writer.Write("else "); 3787Writer.Write("if ("); 3788Writer.Write(source); 3789Writer.Write(" is "); 3790Writer.Write(fullTypeName); 3791Writer.WriteLine(") {"); 3792Writer.Indent++; 3794Writer.Write(fullTypeName); 3795Writer.Write(" elem = ("); 3796Writer.Write(fullTypeName); 3797Writer.Write(")"); 3798Writer.Write(source); 3799Writer.WriteLine(";"); 3805if (c++ > 0) Writer.Write("else "); 3813Writer.Write("if ("); 3814Writer.Write(enumUseReflection ? ReflectionAwareCodeGen.GetStringForEnumLongValue(enumSource!, enumUseReflection) : enumSource); 3815Writer.Write(" == "); 3816Writer.Write(enumFullName); 3819Writer.Write(" && ((object)("); 3820Writer.Write(source); 3821Writer.Write(") != null)"); 3823Writer.WriteLine(") {"); 3824Writer.Indent++; 3826Writer.Write("if (elem.Name == "); 3828Writer.Write(" && elem.NamespaceURI == "); 3830Writer.WriteLine(") {"); 3831Writer.Indent++; 3836Writer.Indent--; 3837Writer.WriteLine("}"); 3838Writer.WriteLine("else {"); 3839Writer.Indent++; 3841Writer.WriteLine("// throw Value '{0}' of the choice identifier '{1}' does not match element '{2}' from namespace '{3}'."); 3843Writer.Write("throw CreateChoiceIdentifierValueException("); 3845Writer.Write(", "); 3847Writer.WriteLine(", elem.Name, elem.NamespaceURI);"); 3848Writer.Indent--; 3849Writer.WriteLine("}"); 3851Writer.Indent--; 3852Writer.WriteLine("}"); 3856Writer.WriteLine("else {"); 3857Writer.Indent++; 3865Writer.WriteLine("throw CreateUnknownAnyElementException(elem.Name, elem.NamespaceURI);"); 3869Writer.Indent--; 3870Writer.WriteLine("}"); 3872Writer.Indent--; 3873Writer.WriteLine("}"); 3881Writer.Write("else "); 3882Writer.Write("if ("); 3884Writer.WriteLine(") {"); 3885Writer.Indent++; 3890Writer.Indent--; 3891Writer.WriteLine("}"); 3903Writer.Write("else "); 3907Writer.Write(" if ((object)("); 3908Writer.Write(source); 3909Writer.Write(") != null)"); 3912Writer.WriteLine("{"); 3913Writer.Indent++; 3915Writer.Write("throw CreateUnknownTypeException("); 3916Writer.Write(source); 3917Writer.WriteLine(");"); 3919Writer.Indent--; 3920Writer.WriteLine("}"); 3922Writer.Indent--; 3923Writer.WriteLine("}"); 3931Writer.Write("WriteValue("); 3940Writer.WriteLine(");"); 3947Writer.Write(source); 3948Writer.WriteLine(".WriteTo(Writer);"); 3963Writer.Write("if ("); 3964Writer.Write(source); 3965Writer.WriteLine(" != null) {"); 3966Writer.Indent++; 3974Writer.Indent--; 3975Writer.WriteLine("}"); 3978Writer.WriteLine("else {"); 3979Writer.Indent++; 3981Writer.Indent--; 3982Writer.WriteLine("}"); 3989Writer.Write("WritePotentiallyReferencingElement("); 3991Writer.Write(", "); 3993Writer.Write(", "); 3994Writer.Write(source); 3997Writer.Write(", "); 3998Writer.Write(RaCodeGen.GetStringForTypeof(arrayMapping.TypeDesc!.CSharpName, arrayMapping.TypeDesc.UseReflection)); 3999Writer.Write(", true, "); 4003Writer.Write(", null, false, "); 4006Writer.WriteLine(");"); 4014Writer.WriteLine("{"); 4015Writer.Indent++; 4025Writer.Write("if ("); 4026Writer.Write(elementArrayName); 4027Writer.Write(" != null)"); 4029Writer.WriteLine("{"); 4030Writer.Indent++; 4033Writer.Write("for (int "); 4034Writer.Write(arrayIndex); 4035Writer.Write(" = 0; "); 4036Writer.Write(arrayIndex); 4037Writer.Write(" < "); 4041Writer.Write(elementArrayName); 4042Writer.Write(".Length"); 4046Writer.Write("(("); 4047Writer.Write(typeof(ICollection).FullName); 4048Writer.Write(")"); 4049Writer.Write(elementArrayName); 4050Writer.Write(").Count"); 4052Writer.Write("; "); 4053Writer.Write(arrayIndex); 4054Writer.WriteLine("++) {"); 4055Writer.Indent++; 4061Writer.Indent--; 4062Writer.WriteLine("}"); 4064Writer.Indent--; 4065Writer.WriteLine("}"); 4066Writer.Indent--; 4067Writer.WriteLine("}"); 4072Writer.WriteLine("{"); 4073Writer.Indent++; 4083Writer.Write("if ("); 4084Writer.Write(arrayName); 4085Writer.Write(" != null)"); 4087Writer.WriteLine("{"); 4088Writer.Indent++; 4093Writer.Indent--; 4094Writer.WriteLine("}"); 4095Writer.Indent--; 4096Writer.WriteLine("}"); 4104Writer.Write("Writer.WriteStartElement("); 4106Writer.Write(", "); 4108Writer.WriteLine(");"); 4109Writer.Write(methodName); 4110Writer.Write("("); 4111Writer.Write(source); 4112Writer.WriteLine(");"); 4136Writer.Write("WritePotentiallyReferencingElement("); 4138Writer.Write(", "); 4140Writer.Write(", "); 4141Writer.Write(source); 4144Writer.Write(", "); 4145Writer.Write(RaCodeGen.GetStringForTypeof(structMapping.TypeDesc!.CSharpName, structMapping.TypeDesc.UseReflection)); 4146Writer.Write(", true, "); 4150Writer.Write(", null, false, "); 4162Writer.Write(methodName); 4163Writer.Write("("); 4165Writer.Write(", "); 4167Writer.Write("null"); 4172Writer.Write(", "); 4173Writer.Write(source); 4176Writer.Write(", "); 4179Writer.Write(", false"); 4181Writer.WriteLine(");"); 4192Writer.Write("if (("); 4193Writer.Write(source); 4194Writer.Write(") is "); 4195Writer.Write(typeof(XmlNode).FullName); 4196Writer.Write(" || "); 4197Writer.Write(source); 4198Writer.Write(" == null"); 4199Writer.WriteLine(") {"); 4200Writer.Indent++; 4204Writer.Indent--; 4205Writer.WriteLine("}"); 4206Writer.WriteLine("else {"); 4207Writer.Indent++; 4209Writer.Write("throw CreateInvalidAnyTypeException("); 4210Writer.Write(source); 4211Writer.WriteLine(");"); 4213Writer.Indent--; 4214Writer.WriteLine("}"); 4225Writer.Write(func); 4226Writer.Write("(("); 4227Writer.Write(cast.FullName); 4228Writer.Write(")"); 4229Writer.Write(source); 4230Writer.Write(", "); 4232Writer.Write(", "); 4234Writer.Write(", "); 4236Writer.Write(", "); 4238Writer.WriteLine(");"); 4244Writer.Write("if ("); 4249Writer.Write("("); 4250Writer.Write(source); 4252Writer.Write(" == null) || ("); 4254Writer.Write(" != null) && ("); 4255Writer.Write(source); 4256Writer.Write(".Length != 0)"); 4260Writer.Write("!"); 4261Writer.Write(source); 4262Writer.Write(".Equals("); 4265Writer.Write(")"); 4269Writer.Write(source); 4270Writer.Write(" != "); 4274Writer.Write(")"); 4279Writer.Write("if (((object)"); 4280Writer.Write(source); 4281Writer.Write(") != null && !("); 4283Writer.Write(")) throw CreateMismatchChoiceException("); 4285Writer.Write(", "); 4287Writer.Write(", "); 4289Writer.WriteLine(");"); 4294Writer.Write("if ((object)("); 4295Writer.Write(source); 4296Writer.WriteLine(") == null) {"); 4297Writer.Indent++; 4299Writer.Indent--; 4300Writer.WriteLine("}"); 4301Writer.WriteLine("else {"); 4302Writer.Indent++; 4309Writer.Write("null"); 4322Writer.Write('\''); 4325Writer.Write("\'"); 4327Writer.Write(ch); 4328Writer.Write('\''); 4331Writer.Write(((int)value).ToString(null, NumberFormatInfo.InvariantInfo)); 4336Writer.Write("System.Double.NaN"); 4340Writer.Write("System.Double.PositiveInfinity"); 4344Writer.Write("System.Double.NegativeInfinity"); 4348Writer.Write(((double)value).ToString("R", NumberFormatInfo.InvariantInfo)); 4352Writer.Write((bool)value ? "true" : "false"); 4355Writer.Write("("); 4356Writer.Write(type.FullName); 4357Writer.Write(")"); 4358Writer.Write("("); 4359Writer.Write(Convert.ToString(value, NumberFormatInfo.InvariantInfo)); 4360Writer.Write(")"); 4366Writer.Write("System.Single.NaN"); 4370Writer.Write("System.Single.PositiveInfinity"); 4374Writer.Write("System.Single.NegativeInfinity"); 4378Writer.Write(((float)value).ToString("R", NumberFormatInfo.InvariantInfo)); 4379Writer.Write("f"); 4384Writer.Write(((decimal)value).ToString(null, NumberFormatInfo.InvariantInfo)); 4385Writer.Write("m"); 4389Writer.Write(" new "); 4390Writer.Write(type.FullName); 4391Writer.Write("("); 4392Writer.Write(((DateTime)value).Ticks.ToString(CultureInfo.InvariantCulture)); 4393Writer.Write(")"); 4397Writer.Write(" new "); 4398Writer.Write(type.FullName); 4399Writer.Write("("); 4400Writer.Write(((DateTimeOffset)value).Ticks.ToString(CultureInfo.InvariantCulture)); 4401Writer.Write(", new "); 4402Writer.Write(((DateTimeOffset)value).Offset.GetType().FullName); 4403Writer.Write("("); 4404Writer.Write(((DateTimeOffset)value).Offset.Ticks.ToString(CultureInfo.InvariantCulture)); 4405Writer.Write("))"); 4409Writer.Write(" new "); 4410Writer.Write(type.FullName); 4411Writer.Write("("); 4412Writer.Write(((TimeSpan)value).Ticks.ToString(CultureInfo.InvariantCulture)); 4413Writer.Write(")"); 4417Writer.Write(" new "); 4418Writer.Write(type.FullName); 4419Writer.Write("("); 4420Writer.Write(((DateOnly)value).Year.ToString(CultureInfo.InvariantCulture)); 4421Writer.Write(", "); 4422Writer.Write(((DateOnly)value).Month.ToString(CultureInfo.InvariantCulture)); 4423Writer.Write(", "); 4424Writer.Write(((DateOnly)value).Day.ToString(CultureInfo.InvariantCulture)); 4425Writer.Write(")"); 4429Writer.Write(" new "); 4430Writer.Write(type.FullName); 4431Writer.Write("("); 4432Writer.Write(((TimeOnly)value).Ticks.ToString(CultureInfo.InvariantCulture)); 4433Writer.Write(")"); 4439Writer.Write(((int)value).ToString(null, NumberFormatInfo.InvariantInfo)); 4452Writer.Write("WriteNamespaceDeclarations("); 4453Writer.Write(source); 4454Writer.WriteLine(");"); 4470Writer.Write("for (int i = "); 4471Writer.Write(loopStartSource); 4472Writer.Write("; i < "); 4473Writer.Write(loopEndSource); 4474Writer.WriteLine("; i++) {"); 4475Writer.Indent++; 4476Writer.WriteLine("if (p[i] != null) {"); 4477Writer.Indent++; 4478Writer.WriteLine("WritePotentiallyReferencingElement(null, null, p[i], p[i].GetType(), true, false);"); 4479Writer.Indent--; 4480Writer.WriteLine("}"); 4481Writer.Indent--; 4482Writer.WriteLine("}");